ffmpegdemux: cache events from upstream and re-send them later
authorTim-Philipp Müller <tim.muller@collabora.co.uk>
Tue, 28 Jul 2009 22:21:11 +0000 (23:21 +0100)
committerTim-Philipp Müller <tim.muller@collabora.co.uk>
Tue, 28 Jul 2009 22:58:02 +0000 (23:58 +0100)
commitd917f59a84b1d81c14ed7642ab04d254a97838d2
tree241877b2b23b4026642842c0670b8eb1e8c09f27
parent3a23708a2c5502ce5c673b3d467922ee562a6bef
ffmpegdemux: cache events from upstream and re-send them later

Cache any events we get from upstream before we're open, especially
tag events we may be getting from apedemux/id3demux or the like, and
push them downstream later when we've added our pads instead of just
dropping them silently. Fixes transcoding tags for Monkey's Audio
Files with preceding APE or ID3v2 tags (#586957). Add minimal unit
test for this.

Also push stream tags later after the global tags and the newsegment
event rather than right after creating the pad.
configure.ac
ext/ffmpeg/gstffmpegdemux.c
tests/Makefile.am
tests/check/.gitignore
tests/check/Makefile.am
tests/check/elements/ffdemux_ape.c [new file with mode: 0644]
tests/files/586957.ape [new file with mode: 0644]
tests/files/Makefile.am [new file with mode: 0644]