On my Apple ] [ with 48k memory I used to be able to sample audio from the
cassette port and store about 30 seconds of audio that was fairly decent
quality upon playback. With a 1MB RAM board installed I was able to sample
the entire ~5 minutes of Led Zeppelin's Over The Hills And Far Away from
their Houses of the Holy album.
Sellam
On Mon, Jul 10, 2023, 6:41 AM Paul Koning via cctalk <cctalk(a)classiccmp.org>
wrote:
On Jul 9, 2023, at 9:19 PM, Douglas Taylor via
cctalk <
cctalk(a)classiccmp.org> wrote:
Wow! Actual engineers responding...
It looks like I could only do the most rudimentary audio.
1. Sample Rate: You got maybe 20K samples to store in lower memory. At
7KHz sample rate that would allow 3 seconds of audio. Voice only.
2. Samples: They must be 12 bits. Converting a
modern audio clip
requires, band filtering, resampling and mapping to 12 bit integers. Could
be done in python, they have libraries.
3. Clocking output: I have a KMV11, but never
programmed around it.
4. Amplify output: AAV11-C produces -10 to +10 volts, have to divide
this down for input to an audio amp.
In the end I will have undone all the advances made in digital audio in
the last 30 to 40 years.
I'm reminded of a project I did in college in 1974, when I made a
primitive graphics display using an X/Y oscilloscope driven by an AA-11.
Since the machine was a PDP-11/20 with 8 kW of memory, I decided to use the
RC-11 disk as the refresh memory, doing DMA directly from disk to the D/A
data CSR.
So on the scenario here: the sample rate is clearly more than adequate.
12 bits is not CD grade audio but not bad; for ears used to the distorions
of compressed audio files it's probably good enough.
The PDP-11 certainly won't be able to decompress modern lossy compression
files. It should be fine with raw or nearly-raw files, which means you can
convert externally and feed the resulting files to the PDP-11. You could
convert to 16 bit raw mono with standard tools and then drop the bottom 4
bits. Band filtering? Resampling? I don't know why you would want to do
that, unless there isn't a reasonable way to drive the device at the source
file's data rate. For example, if you have a KW-11/P that's clearly
doable. (Come to think of it, that 11/20 had a KW-11/P and I created BASIC
extensions for it that would allow sampling to be driven by that clock, at
a rate of your choosing.)
You can't fit a whole lot of data in 64 kW of memory, but that isn't
needed. That rate isn't all that high; it isn't hard to write a program
that does double buffering from a disk file to memory to the D/A. That
makes a really nice real time programming exercise.
paul