[Mplayer-cvslog] CVS: main/DOCS/tech mpcf.txt,1.14,1.15

Arpi arpi at thot.banki.hu
Sun Feb 9 01:26:40 CET 2003


Hi,

> +	reserved				u(6)
> +	codec_specific_data			b
>  
>  video_stream_header:
>  	stream_header
> @@ -113,13 +113,6 @@
>  	shuffle_type				v
>  	reserved_bytes
>  	checksum				u(32)
> -
> -codec_specific_header:
> -	packet_header
> -	codec_specific_startcode		f(64)
> -	stream_id				v
> -	codec_specific data
> -	checksum

cool, just wanted to ask why is it separated :)

btw, it's an important part we didn't discuss earlier and we can't skip.

you probably know, there are some codec APIs with own headers, the most
important 2 are windows' BITMAPINFOHEADER/WAVEFORMATEX and Quicktime's
ImageDescription/SoundDesscription. Other's like RealMedia's codec
headers and such are possible.

MCF guys said (and says) that we should not support any existing interfaces
but introduce a new one and implement various wrappers and converters...
it's silly. the container must be able to contain the existing formats,
without the need of demuxer/player know how to convert codec details.

also, each codec has its 'selected' API, depending on its origin.
so i suggest something like:
for(;;){
   byte      codec_header_type if ==0 then break;
   v         codec_header_len
   len*byte  codec header bytes
}

and pre-define some types for the alerady existing interfaces, like
1=bitmapinfoheader/waveformatex 2=imagedesc/sounddesc 3=mpeg4es/aac etc...

maybe we should separate audio and video versions of the headers, but since
there are pairs, and the type (audio vs. video) is already given in header
bytes it has no much sense.

the idea: these headers should be read & passed to the codecs, and it will
find the right one it requires.

maybe we could reduce and allow only one (one type) codec header per stream,
simplifying encoder and demuxer. it is enough for 99% of codecs, only a few
supports more than one codec API and even tehy are easily convertable.


A'rpi / Astral & ESP-team

--
Developer of MPlayer, the Movie Player for Linux - http://www.MPlayerHQ.hu
    "However, many people beg for its inclusion in Debian. Why?" - Gabucino
  "Because having new software in Debian is good." - Josselin Mouette
"Because having good software in Debian is new." - Gabucino


More information about the MPlayer-cvslog mailing list