GNOME Bugzilla – Bug 379826
[dvddemux] Do NOT expose pads that have multiple structures
Last modified: 2007-05-07 17:34:55 UTC
When dvddemux adds pads, it exposes pads that have multiple structures. This causes issues when deciding what data is actually going to flow. Decoders/demuxers should, when adding a pad from a pad template with multiple structures, know what type of data is going to flow through that pad. It should therefore add pads with only one structure. Ex : This is a pad template: SRC template: 'current_audio' Availability: Always Capabilities: audio/mpeg mpegversion: 1 audio/x-lpcm width: { 16, 20, 24 } rate: { 48000, 96000 } channels: [ 1, 8 ] dynamic_range: [ 0, 255 ] emphasis: { false, true } mute: { false, true } audio/x-ac3 audio/x-dts When the pad is created it's one of those structures, not ALL ! :) Please fix accordingly.
You mean it adds pads without setting caps on them first, resulting in _get_caps() returning the template caps? (you can't "add a pad with multiple structures", pad caps are always fixed) Could you be a bit more precise? Does this happen with all pads or only specific ones? I can't see the culprit in the code right now (could be one of the private pads though, not sure if we set caps on those if they're exposed).
Edward: ping?