[Bug 664750] [gstmpeg4videoparse] src caps should not be fixed
GStreamer (bugzilla.gnome.org)
bugzilla at gnome.org
Fri Nov 25 04:39:35 PST 2011
https://bugzilla.gnome.org/show_bug.cgi?id=664750
GStreamer | gst-plugins-bad | 0.11.x
--- Comment #2 from Matej Knopp <matej.knopp at gmail.com> 2011-11-25 12:39:29 UTC ---
Okay, this doesn't work. Once decodebin instantiates the mpeg4parser, the src
caps are fixed so it doesn't bother pushing any data to it. That means when
next element is linked, only template caps are taken into account.
mpeg4videoparser template caps are video/mpeg,
mpegversion=(int)4,systemstream=(boolean)false
So autoplug-continue is called with caps video/mpeg,
mpegversion=(int)4,systemstream=(boolean)false
ffdec_mp4 has however template sink caps video/mpeg,
mpegversion=(int)4,width=(int)[ 16, 4096 ],height=(int)[ 16, 4096
],framerate=(fraction)[ 0/1, 2147483647/1 ] so when decodebin searches for
plugin that than handle src caps from mp4videoparser it skips the ffmpeg.
It goes like this:
Autoplug continue: video/x-msvideo
Autoplug continue: video/mpeg, mpegversion=(int)4,
framerate=(fraction)5000000/208541, width=(int)640, height=(int)352 // This is
from demuxer
Autoplug continue: video/mpeg, mpegversion=(int)4, parsed=(boolean)true,
systemstream=(boolean)false // This is from parser. No framerate, width or
height as decodebin didn't push any data to it because of fixed caps
When the parser doesn't have fixed caps everything works as it should:
Autoplug continue: video/x-msvideo
Autoplug continue: video/mpeg, mpegversion=(int)4,
framerate=(fraction)5000000/208541, width=(int)640, height=(int)352 // demuer
Autoplug continue: video/mpeg, mpegversion=(int)4,
framerate=(fraction)65534/2733, width=(int)640, height=(int)352,
systemstream=(boolean)false, parsed=(boolean)true,
codec_data=(buffer)000001b0f5000001b50900000100000001200886c7fffb0aad8a02160a4c7f000001b25876694430303530,
pixel-aspect-ratio=(fraction)1/1 // parser
Now maybe the problem is not in the parser itself but in decodebin, but I
thought the check for fixed caps is there for a reason.
--
Configure bugmail: https://bugzilla.gnome.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the QA contact for the bug.
You are the assignee for the bug.
More information about the gstreamer-bugs
mailing list