Vox 6kHz playback and recording

Hey everyone,

I’ve spent a couple days looking into this and most comments on various sites seem to say it’s not possible.

We have numerous systems that use Dialogic vox files that are 4-bit 6kHz files. Unfortunately, Asterisk seems to only play 4-bit 8kHz files.

Has anyone been able to successfully play and record 4-bit 6kHz .vox files with asterisk, or would anyone have some good ideas of what would be required to make this change?

I was thinking it would require either altering the ADPCM codec or the VOX format sources. (Was thinking altering the latter by reading every 3 bytes and returning 4 bytes in its place in the frame.)

Any ideas or suggestions are welcome.


8kHz sampling rates, although the standard for the PSTN, already compromise the intelligibilty of s, f and similar sounds. 6kHz sampling rates would imply cutoff frequencies, once anti-aliasing filters were applied, that would give a quality worse that typical amateur radio SSB transmissions, which really push speech bandwith beyond the limits for normal users.

Why do you want to use 6kHz audio, especially when even GSM coding will give better speech audio at a lower bit rate?

The ADPCM codec is, currently, going to be quite simple code.

Going from 6 to 8kHz sampling rates requires rate adaption. I would suggest, given that you are working at the edge of intelligibility, you would need to do a third order interpolation. Even then, up-sampling from 6 to 8kHz will not give you good speech quality, because you will be simulating someone with significant age related deafness.

Down sampling by simply dropping every fourth sample would almost certainly violate the design assumptions of ADPCM, but even without ADPCM, is likely to sound bad. (ADPCM relies on smooth waveforms.)