[FFmpeg-devel] [PATCH] ADPCM IMA AMV encoder (try 1)

Vladimir Voroshilov voroshil
Sat Oct 6 14:14:41 CEST 2007

Hi, All

Since no reply was got in "Devel question : how to calculate
frame_size in audio encoder (adpcm_encode_init) "' thread, i want (as
suggested by Vitor) show you current version of ADPCM IMA AMV encoder
in amv-codec-tools project.

Due to fake codec tag (it uses PCM's 0x01 code) this codec can not be
easily used outside AMV container.

Number of 16-bit audio samples  per audio frame and audio frame size are
calculated by folmulas below:


Current code sets frame_size to 0 inside adpcm_encode_init.
frame_size receives real value at the end of avi_write_header:

     Set correct frame_size for audio stream
    if(s->nb_streams > 1 && s->streams[1]->codec->codec_type ==

I want to know how much attached patch is ugly/hackish and receive
emproovement sugesstions.

P.S. current code does not rearrange extra samples yet (i,e for
arate=22050 and fps=16 real audio rate will be 16*(22050/16)=22048,
proprietary encodec puts this two extra samples in last 16th frame). I
will be happy to recevie good solution for extra samples.

Vladimir Voroshilov     mailto:voroshil at gmail.com
JID: voroshil at gmail.com, voroshil at jabber.ru
ICQ: 95587719
-------------- next part --------------
A non-text attachment was scrubbed...
Name: adpcm.diff
Type: text/x-diff
Size: 3119 bytes
Desc: not available
URL: <http://lists.mplayerhq.hu/pipermail/ffmpeg-devel/attachments/20071006/4ce19e4f/attachment.diff>

More information about the ffmpeg-devel mailing list