[MPlayer-dev-eng] Questions About Audio Decoding

Mike Melanson melanson at pcisys.net
Fri Dec 21 17:54:58 CET 2001


Hi team,
	I know that the answer should be RTFS (read the eff-ing source),
but I thought I would ask some questions about he audio decoding
subsystem. I actually have read through the source, so I'm not completely
ignorant about this.

	There's an audio decoder I'd like to implement (number 0x62). I
believe that it's pretty similar to IMA4 ADPCM. First off, is IMA4 data
stored in AVI/ASF/MOV blocks with any kind of header at the start of the
blocks? Or does the decoder just take the first byte of the first block
and start decoding?

	I understand that audio is stored different than video. Video
blocks typically contain a single discrete video frame. Audio chunks, from
what I've seen in AVI/ASF files, tend to be stored in constant-size
blocks, say 0x8000.

	I've been looking at IMA4 decoding. The decoder routine calls
demux_read_data(). Does this routine read a certain number of bytes out of
the audio stream, regardless of whether the read would cross block
boundaries in the file on disk?

	The reason I'm asking all of these questions is that this
algorithm appears to use some kind of ADPCM (may even be identical to
IMA4) but each block in the AVI file has a header. I want to understand
how I'm supposed to traverse the data using MPlayer facilities.

	Thanks...
	-Mike Melanson




More information about the MPlayer-dev-eng mailing list