[sip-comm-dev] GSoC 09 : G729 audio files


#1

Hello Sip-Communicator

Today I worked on how to produce G729 audio files :
There will be 4 steps :
  - get a wav file
  - remove the wav header using sox to produce a raw file
  - encode this raw file with g729
  - check that your 729 encoded file is well encoded.

1 - Get a wav file
Not to hard, go to http://www.freesound.org/
Because G729 is a voice codec, we will need voice sound, not music.

Here I choose some samples :
http://philibert.romain.free.fr/g729/wav

2 - Remove the wav header using sox to produce a raw file
sox -V test.wav -r 8000 -c 1 -s -b 16 test.raw
-r : rate 8000Hz
-c : channel
-s : signed-int
-b 16: bits per sample

You can download sox here : http://sox.sourceforge.net/

3 - encode this raw file with g279
All you need is an encoder, you can choose one among those :
Open g729 : http://www.voiceage.com/openinit_g729.php (I choose this one)
Easy G729 (free during 60hours) :
http://www.imtelephone.com/EasyG729A.html(I check with this decoder)

If you use open_g729 encoder :
va_g729_encoder wav_file.wav 729_file.729

4 - Then you can check with another decoder
For easy g729 :
TEST_DECODE 729_file.729 wav_file.wav

And it works well :wink:
Now we have some files for our future tests.

You can find more g729 files here : http://philibert.romain.free.fr/g729

PS : If you want to do it more quickly you can test this website :
http://www.asteriskguru.com/tools/audio_conversion.php

If I am a bad writer look at it :
http://mybroadband.co.za/vb/showthread.php?t=109634


#2

Incidentally I'm not sure how far you've got with planning the actual
implementation, I seem to think the legal aspect is quite important;
there's a [partially complete?] implementation for ffmpeg that it looks
as though is LGPL'd see
http://wiki.multimedia.cx/index.php?title=Interesting_Patches#ACELP.net_and_G.729_decoder_by_Vladimir_Voroshilov

Best

Mark

http://www.halloit.com

Key ID 046B65CF

romain philibert wrote:

···

Hello Sip-Communicator

Today I worked on how to produce G729 audio files :
There will be 4 steps :
  - get a wav file
  - remove the wav header using sox to produce a raw file
  - encode this raw file with g729
  - check that your 729 encoded file is well encoded.
  
1 - Get a wav file
Not to hard, go to http://www.freesound.org/
Because G729 is a voice codec, we will need voice sound, not music.

Here I choose some samples :
http://philibert.romain.free.fr/g729/wav

2 - Remove the wav header using sox to produce a raw file
sox -V test.wav -r 8000 -c 1 -s -b 16 test.raw
-r : rate 8000Hz
-c : channel
-s : signed-int
-b 16: bits per sample

You can download sox here : http://sox.sourceforge.net/

3 - encode this raw file with g279
All you need is an encoder, you can choose one among those :
Open g729 : http://www.voiceage.com/openinit_g729.php (I choose this one)
Easy G729 (free during 60hours) :
http://www.imtelephone.com/EasyG729A.html (I check with this decoder)

If you use open_g729 encoder :
va_g729_encoder wav_file.wav 729_file.729

4 - Then you can check with another decoder
For easy g729 :
TEST_DECODE 729_file.729 wav_file.wav

And it works well :wink:
Now we have some files for our future tests.

You can find more g729 files here : http://philibert.romain.free.fr/g729

PS : If you want to do it more quickly you can test this website :
http://www.asteriskguru.com/tools/audio_conversion.php

If I am a bad writer look at it :
http://mybroadband.co.za/vb/showthread.php?t=109634


#3

Yes you are right, the legal aspect is very important. I am actually in
contact with sipro to know more about license implementation restriction.
But knowing that this implementation is LGPL is a very good point.
The problem is that there is no encoder.

There is other g729 implementation that we could use :
  - Open G729 by Voiceage (win32 only)
  - Mobicents (license ???) on java
  - Intel IPP (linux only for free, you must pay for MacOsX and windows)

https://sip-communicator.dev.java.net/servlets/ReadMsg?list=dev&msgNo=6131

Thanks

Romain

···

2009/5/1 Mark <markieb.lists.20090330@gmail.com>

Incidentally I'm not sure how far you've got with planning the actual
implementation, I seem to think the legal aspect is quite important; there's
a [partially complete?] implementation for ffmpeg that it looks as though is
LGPL'd see

http://wiki.multimedia.cx/index.php?title=Interesting_Patches#ACELP.net_and_G.729_decoder_by_Vladimir_Voroshilov

Best

Mark
http://www.halloit.com

Key ID 046B65CF

romain philibert wrote:

Hello Sip-Communicator

Today I worked on how to produce G729 audio files :
There will be 4 steps :
  - get a wav file
  - remove the wav header using sox to produce a raw file
  - encode this raw file with g729
  - check that your 729 encoded file is well encoded.

1 - Get a wav file
Not to hard, go to http://www.freesound.org/
Because G729 is a voice codec, we will need voice sound, not music.

Here I choose some samples :
http://philibert.romain.free.fr/g729/wav

2 - Remove the wav header using sox to produce a raw file
sox -V test.wav -r 8000 -c 1 -s -b 16 test.raw
-r : rate 8000Hz
-c : channel
-s : signed-int
-b 16: bits per sample

You can download sox here : http://sox.sourceforge.net/

3 - encode this raw file with g279
All you need is an encoder, you can choose one among those :
Open g729 : http://www.voiceage.com/openinit_g729.php (I choose this one)
Easy G729 (free during 60hours) :
http://www.imtelephone.com/EasyG729A.html (I check with this decoder)

If you use open_g729 encoder :
va_g729_encoder wav_file.wav 729_file.729

4 - Then you can check with another decoder
For easy g729 :
TEST_DECODE 729_file.729 wav_file.wav

And it works well :wink:
Now we have some files for our future tests.

You can find more g729 files here : http://philibert.romain.free.fr/g729

PS : If you want to do it more quickly you can test this website :
http://www.asteriskguru.com/tools/audio_conversion.php

If I am a bad writer look at it :
http://mybroadband.co.za/vb/showthread.php?t=109634