24-bit sound -- how??

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
2 messages Options
Reply | Threaded
Open this post in threaded view
|

24-bit sound -- how??

Jim Rosenberg
After several years of doing artistic work in Squeak (interactive poetry),
I'm now working on a project where I need to integrate sound. I can load a
16-bit .wav file, play it, and everything just works. When I try to do the
same thing with a 24-bit .wav file, I get a convincing example of white
noise -- not exactly what I was after ... :-) Is this a codec problem?

Details: I'm developing on Linux, have been working in Squeak 4.3 but just
now tried a vanilla 5.2 image and get the same results. (Requires the padsp
/ libpulsedsp.so wrapper trick to get sound at all.) The 16-bit sound that
works shows in the VLC codec display as:

Type: Audio
Codec: PCM S16 LE (s16l)
Sample rate: 44100 Hz
Bits per sample: 16
Bitrate: 1411 kb/s

and the 24-bit sound that doesn't work shows as:

Type: Audio
Codec: PCM S24 LE (s24l)
Sample rate: 44100 Hz
Bits per sample: 32

(Sounds are being exported from Audacity, and play just fine with no
"tricks" in VLC.)

I'm a total newbie to Squeak sound, so any hints would be highly
appreciated. I suppose I can live with 16-bit sound if I have to, but I'd
rather have the option of the highest resolution I can get.

-Thanks, Jim

Reply | Threaded
Open this post in threaded view
|

Re: 24-bit sound -- how??

Herbert König
Hi Jim,


that seems like a big can of worms. If you only want to write and read
soundfiles, AbstractSound>>storeWavSamplesOn: manually creates a 16 Bit
wav file. Wav is quite well documented so you could change that. Similar
with SampledSound class>>fromWaveStream.


But then most Sound classes use SoundBuffer which is 16 Bit which would
make it a huge effort to actually work with the higher resolutions. This
is especially true for SoundRecorder. And skimming the classes in
Sound-Synthesis I see some primitives are used.


I did (technical) Audio in Squeak 3.8 and now I know why I stuck with 16
Bit.


But to be clear, even then 48 kHz worked and that is better than CD
quality. What processing do you want to do on the sound?


Cheers,


Herbert



Am 04.02.2019 um 08:47 schrieb Jim Rosenberg:

> After several years of doing artistic work in Squeak (interactive
> poetry), I'm now working on a project where I need to integrate sound.
> I can load a 16-bit .wav file, play it, and everything just works.
> When I try to do the same thing with a 24-bit .wav file, I get a
> convincing example of white noise -- not exactly what I was after ...
> :-) Is this a codec problem?
>
> Details: I'm developing on Linux, have been working in Squeak 4.3 but
> just now tried a vanilla 5.2 image and get the same results. (Requires
> the padsp / libpulsedsp.so wrapper trick to get sound at all.) The
> 16-bit sound that works shows in the VLC codec display as:
>
> Type: Audio
> Codec: PCM S16 LE (s16l)
> Sample rate: 44100 Hz
> Bits per sample: 16
> Bitrate: 1411 kb/s
>
> and the 24-bit sound that doesn't work shows as:
>
> Type: Audio
> Codec: PCM S24 LE (s24l)
> Sample rate: 44100 Hz
> Bits per sample: 32
>
> (Sounds are being exported from Audacity, and play just fine with no
> "tricks" in VLC.)
>
> I'm a total newbie to Squeak sound, so any hints would be highly
> appreciated. I suppose I can live with 16-bit sound if I have to, but
> I'd rather have the option of the highest resolution I can get.
>
> -Thanks, Jim
>