How can I find the current wav encoding



  • I have a bunch of voicemails from a 3CX system that I would like to move to FreePBX.

    The moving and naming is simple. But they will not play, likely because of some Windows codec used or something.

    The sox tool is built into FreePBX but I think I am needing to specify some information in order to get the files output into a form I can use.



  • @JaredBusch that is some wacky shit... 32.5kHz is an odd one. You should be able to open these in Audacity and choose either export or save as and choose a good format. There might be some speeding up or slowing down if you don't do the right steps to change the sample rate (see below):

    Load your audio file in Audacity. Note the areas where you can see sampling rate information. The rate of your file is located in the grey area to the left of the waveform. The project sampling rate is located in the lower left-hand corner (Project Rate (Hz)). To change the rate of your file, you need to select the Tracks menu and scroll down to Resample… (If you were to change the rate by altering the project sampling rate below, it would merely change the rate Audacity plays the file, not the file’s actual sample rate).

    6317dcb264819481d4323878a4453dac.jpg

    http://www.dynamicsoflanguage.edu.au/research/data-archives/guides/resampling-audio-using-audacity/



  • I've used the built in "file" command before. example:

    file test.wav
    
    Output: test.wav: RIFF (little-endian) data, WAVE audio, Microsoft PCM, 16 bit, mono 8000 Hz
    

    Is that what you're looking for?



  • I think @JaredBusch is trying to convert them.



  • Use Audacity. It will tell you bit depth and resolution, and will convert to whatever format you like. Phone system stuff is usually u-Law encoded wav files, which pretty much don't play anywhere else but the phone system.

    https://www.audacityteam.org/



  • @DustinB3403

    Agreed. He just asked for how to see what the current encoding was though. If conversion does need done, then I agree with @RojoLoco . I use Audacity all the time for conversions. Works great!



  • What version of 3CX was it made on?

    Actually, it probably doesn't matter. Normally in 3CX it's standard PCM, 8 kHz, 16 bit, Mono.

    Just to clarify, PCM is just the audio data uncompressed straight up. Like what you have on a CD. Don't need codecs of any kind for this.



  • @JaredBusch said in How can I find the current wav encoding:

    I have a bunch of voicemails from a 3CX system that I would like to move to FreePBX.

    The moving and naming is simple. But they will not play, likely because of some Windows codec used or something.

    The sox tool is built into FreePBX but I think I am needing to specify some information in order to get the files output into a form I can use.

    As a basic test the 'file' command can help listing main wav info. Just 'file *.wav'.



  • @fuznutz04 said in How can I find the current wav encoding:

    I've used the built in "file" command before. example:

    file test.wav
    
    Output: test.wav: RIFF (little-endian) data, WAVE audio, Microsoft PCM, 16 bit, mono 8000 Hz
    

    Is that what you're looking for?

    Damn. Today I've issues with internet... None had answered when I've started posting...



  • So file says this:

    file vmail_3038710928_101_20181113170803.wav 
    vmail_3038710928_101_20181113170803.wav: RIFF (little-endian) data, WAVE audio, IMA ADPCM, mono 8000 Hz
    

    Well a file recorded by Asterisk shows this.

    file msg0000.wav 
    msg0000.wav: RIFF (little-endian) data, WAVE audio, Microsoft PCM, 16 bit, mono 8000 Hz
    


  • So the only difference is the IMA ADPCM from 3CX to Microsfot PCM from Asterisk/FreePBX.



  • @JaredBusch said in How can I find the current wav encoding:

    So the only difference is the IMA ADPCM from 3CX to Microsfot PCM from Asterisk/FreePBX.

    That's exactly what prevents them from playing in a regular media player. MS PCM is the standard wave file.



  • @RojoLoco said in How can I find the current wav encoding:

    @JaredBusch said in How can I find the current wav encoding:

    So the only difference is the IMA ADPCM from 3CX to Microsfot PCM from Asterisk/FreePBX.

    That's exactly what prevents them from playing in a regular media player. MS PCM is the standard wave file.

    That's the 3CX spitting out the IMA version.

    Here are more details form soxi

    a9d06800-0f88-47b2-ad8e-31d57721530c-image.png

    So now to figure out how to convert?



  • @JaredBusch that is some wacky shit... 32.5kHz is an odd one. You should be able to open these in Audacity and choose either export or save as and choose a good format. There might be some speeding up or slowing down if you don't do the right steps to change the sample rate (see below):

    Load your audio file in Audacity. Note the areas where you can see sampling rate information. The rate of your file is located in the grey area to the left of the waveform. The project sampling rate is located in the lower left-hand corner (Project Rate (Hz)). To change the rate of your file, you need to select the Tracks menu and scroll down to Resample… (If you were to change the rate by altering the project sampling rate below, it would merely change the rate Audacity plays the file, not the file’s actual sample rate).

    6317dcb264819481d4323878a4453dac.jpg

    http://www.dynamicsoflanguage.edu.au/research/data-archives/guides/resampling-audio-using-audacity/



  • @RojoLoco said in How can I find the current wav encoding:

    @JaredBusch that is some wacky shit... 32.5kHz is an odd one. You should be able to open these in Audacity and choose either export or save as and choose a good format. There might be some speeding up or slowing down if you don't do the right steps to change the sample rate (can't remember the whole process in Audacity). If you can email me a small sample, I can provide better instructions.

    Got it...

    sox vmail_3038710928_101_20181113170803.wav --encoding ima-adpcm -c 1 -e signed-integer msg0000.wav
    

    spits out

    [[email protected] INBOX]$ soxi msg0000.wav 
    
    Input File     : 'msg0000.wav'
    Channels       : 1
    Sample Rate    : 8000
    Precision      : 16-bit
    Duration       : 00:00:39.20 = 313605 samples ~ 2940.05 CDDA sectors
    File Size      : 627k
    Bit Rate       : 128k
    Sample Encoding: 16-bit Signed Integer PCM
    

    And plays correctly.



  • @RojoLoco I was trying to stay in the built in functions, but was running out of ideas. Had this not worked, I would probably have had to go the Audacity route.



  • @JaredBusch

    Good thing you brought this up. I couldn't believe that your recording where ADPCM because in our 3CX we just have PCM recordings.

    It turns out that the ADPCM codec for recordings is a completely new feature in 3CX, which arrived in the latest version 15.5

    I had to dig around before I could find that setting anywhere. But it's under the recording quota.

    IMHO you should have a lot of recordings to enable it in the first place. In just 10GB you have room for 167 hours of non-compressed recordings. But maybe some users have it set up to recording everything on every call and a lot of extensions and small cloud hosted VMs.

    3cx_compress_recordings.png