Enabling MP3 support in vlc

Christophe Massiot massiot at via.ecp.fr
Tue Jan 15 01:10:32 CET 2002

At 17:26 +0100 10/01/02, Jean-Paul Saman wrote :

>  > >In which function are the file header examinated ? In ESRead or should
>  > >ESSetProgram be told that a certain header needs a mad decoder?
>  >
>  > In your case it should be in ESInit. Currently there is no header
>  > parsing at all, since the ES plug-in only supports video streams, and
>  > video streams do not need extra headers (which is not the case of
>  > .mp3 files).
>Is the header then stripped of at some point ? Are MPEG 1/2/3 headers

It should be probably be stripped in the input plug-in. Another 
option would be to pass the raw header to the decoder and have the 
mad plug-in do what needs to be done.

>equal in length, so parsing it in ESInit won't mess up the stream.

I have absolutely no idea. AFAIK, this so-called .mp3 header isn't 
specified by MPEG, I do not know where it comes from. If you can find 
more info on it, I could have a look and give you better directions.

>Where is MPEG1_AUDIO_ES then handled or is it split somewhere into audio
>ES and video ES stream?

input plug-in reads -> input plug-in demuxes -> packet goes to 
MPEG1_AUDIO_ES decoder_fifo -> packet is read in mad_libmad.c 
(associated with MPEG1_AUDIO_ES) -> output is written to the aout fifo

Christophe Massiot.

More information about the vlc-devel mailing list