View Full Version : AVI headers for MPEG-1 Layer II audio?
blueshift
28th November 2007, 10:53
I am trying to find out what headers I need to put in an AVI for MPEG-1 layer II audio (as produced by an encoder chip I'm using).
I'm fairly new to video programming and having trouble finding appropriate references online.
If anyone could point me at a spec or even just an example AVI file with layer II audio stream, I'd be most grateful.
Thanks,
Blueshift
squid_80
28th November 2007, 15:01
If you're asking what the WAVEFORMATEX structure looks like for mp2, I think I can help.
MPEG audio layer 1 or 2 uses a structure called MPEG1WAVEFORMAT - you can find it on MSDN (see below for link) or in vfw.h, I think. It's like WAVEFORMATEX except there's a few additional fields. Here's some code that should help:
MPEG1WAVEFORMAT mpegwfex;
mpegwfex.wfx.wFormatTag = 0x0050; /* WAVE_FORMAT_MPEG */
mpegwfex.wfx.nBlockAlign = 1; /* always seems to be 1 */
mpegwfex.wfx.wBitsPerSample = 0; /* ALWAYS 0 */
mpegwfex.wfx.cbSize = 22; /* always 22 */
/* the following all depend on the stream */
mpegwfex.wfx.nChannels = 2; /* number of channels */
mpegwfex.wfx.nSamplesPerSec = 48000; /* sampling rate */
mpegwfex.wfx.nAvgBytesPerSec = 24000; /* bitrate in bytes/sec. hint: 125 * kbps */
mpegwfex.fwHeadLayer = ACM_MPEG_LAYER2; /* ACM_MPEG_LAYER1 for layer 1, ACM_MPEG_LAYER2 for layer 2, ACM_MPEG_LAYER3 for layer 3 (DON'T USE MPEG1WAVEFORMAT FOR LAYER 3) */
mpegwfex.dwHeadBitrate = 192000; /* bitrate in bits*/
mpegwfex.fwHeadMode = ACM_MPEG_JOINTSTEREO; /* could also be: ACM_MPEG_STEREO, ACM_MPEG_DUALCHANNEL or ACM_MPEG_SINGLECHANNEL */
/* see http://msdn2.microsoft.com/en-us/library/ms787304.aspx for info on the following */
mpegwfex.fwHeadModeExt = 0x08;
mpegwfex.wHeadEmphasis = 0;
mpegwfex.fwHeadFlags = ACM_MPEG_COPYRIGHT|ACM_MPEG_ORIGINALHOME;
mpegwfex.dwPTSLow = 0;
mpegwfex.dwPTSHigh = 0;
I can give more help if you need it.
blueshift
28th November 2007, 20:32
Fantastic, that is exactly what I was looking for. Thanks!
vBulletin® v3.8.11, Copyright ©2000-2026, vBulletin Solutions Inc.