[gst-devel] Continuing work on DVD (long)

Ronald S. Bultje rbultje at ronald.bitfreak.net
Fri Jan 30 16:30:22 CET 2004


Hi Martin,

Cool to see you'll be back actively working on all this!

On Wed, 2004-01-28 at 22:58, Martin Soto wrote:
> 1. A dvdnavsrc element that writes everything to its single source pad. 
> Menu information, like color palettes and button highlight tables would
> have to be sent synchronously with the MPEG data.  There are two options
> here:
> 
>   - Use events.  I know many people don't like the idea of taking the
> event concept to this point, but it would work, and would use the
> current infrastructure.
> 
>   - Implement Benjamin's idea of having many "subchannels" in a stream
> (i. e. buffers have an integer whose value tells the type of content in
> them).  This looks cleaner, but I don't know how big the implementation
> effort is.

I like the events. dvdnavsrc and mpegdemux (or an element derived from
mpegdemux: dvddemux) could share a private event that's sent between
them. dvddemux/mpegdemux would then use that to set a new caps with
corresponding colour tables on whatever element needs those, or forward
the event to other elements needing it (then, you'd want to make it a
public event...). Or decoder, mpeg2subt, I don't really know that part
of "where are colourtables needed and where not"...

I don't really like the subchannels idea, I feel it gets far too
complicated. I'd prefer to do this simple.

> 2. A demuxer.  Either we change the existing one, or make a new
> "dvddemux" or whatever.  It would need (at least) three output pads:
> video, audio and subpicture, and would automatically switch streams
> based on the incoming events/packets.  Changing between different types
> of audio, would imply caps renegotiation on the audio pad.

Please, use mpegdemux. If you need specific DVD hacks, go ahead and make
a dvddemux, but make sure it is properly derived from mpegdemux so you
don't do any code duplication.

> My plan now is to start working on the demuxer.  I know the code
> relatively well, so it shouldn't take that long.  Please tell me if
> someone else is working on that part, or if there are considerations
> that I must take into account. 

I'm working on MPEG a lot, too. There's one seeking patch from me in
CVS, it need some cleaning up before applying. I have some random small
bits of uncommitted code here at work.

Ronald

-- 
Ronald Bultje <rbultje at ronald.bitfreak.net>
Linux Video/Multimedia developer





More information about the gstreamer-devel mailing list