[Bug 655112] New: Improve videomaxrate caps negotiation
GStreamer (bugzilla.gnome.org)
bugzilla at gnome.org
Fri Jul 22 04:33:16 PDT 2011
https://bugzilla.gnome.org/show_bug.cgi?id=655112
GStreamer | gst-plugins-bad | git
Summary: Improve videomaxrate caps negotiation
Classification: Platform
Product: GStreamer
Version: git
OS/Version: Linux
Status: UNCONFIRMED
Severity: normal
Priority: Normal
Component: gst-plugins-bad
AssignedTo: gstreamer-bugs at lists.freedesktop.org
ReportedBy: sjoerd at luon.net
QAContact: gstreamer-bugs at lists.freedesktop.org
GNOME version: ---
Created an attachment (id=192450)
--> (https://bugzilla.gnome.org/attachment.cgi?id=192450)
proposed patch
Currently videomaxrate always claims it's source and sink caps include
framerates going from [0/1..maxint/1], but the only thing it can do is drop
extra frames. So it's not actually able to transform an input framerate of say
10 fps to 15 fps.
Furthermore for use-cases where you want to framerate to be adjusted to a
specific maximum dynamically the current need to dynamically adjust a
capsfilter behind the maxrate is very cumbersome as there is always a race
between setting the filter, the renegotiation happening and buffers with the
old caps still being pushed through the capsfilter. Allowing the capsfilter to
still have the old caps as a second option doesn't really work as that doesn't
guarantee the right re-negotiation will happen (e.g. the old-caps might allow
for a pass-through, which base-transform prefers).
To solve these issues. Add a property to dynamically adjust the internal
maximum rate of videomaxrate, which can ensure the right caps negotation occurs
and change the caps to prefer to output a framerate in the range the source
provides, but can deliver anything from 0 to MIN( configured maximum, maximum
framerate of the source). And as input we require at least the minium the sink
requires and prefer a framerate in the range we want to output, but can accept
anything that's higher as well.
--
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