Matej Knopp
946ffd0da5
mpegvideoparse: don't compare buffer size when checking whether to update caps
...
https://bugzilla.gnome.org/show_bug.cgi?id=699398
2013-05-03 12:52:18 +02:00
Tim-Philipp Müller
f1a6d84a6c
mpegvideoparse: don't announce incomplete source caps
...
Don't send any source caps yet if we're still in
drop-buffers-until-we-get-a-sequence-header mode.
Fixes transmuxing of many MPEG-TS/PS streams into
formats which require things like width, height or
codec_data on the input caps.
Also fixes issues when using playbin with decoder
sinks that want width/height etc.
https://bugzilla.gnome.org/show_bug.cgi?id=695879
2013-05-01 17:42:11 +01:00
Josep Torra
b946de7211
h264parse: Update src pad caps when it was explicitly signaled
...
Fixes src pad caps aren't updated when converting from AVC to bytestream
and new caps had been received in the sink pad.
https://bugzilla.gnome.org/show_bug.cgi?id=698679
2013-04-26 10:38:36 +02:00
Youness Alaoui
ece3d1c2f6
h264parse: Do not check for VUI parameters if they were not present in the SPS
2013-04-16 19:58:06 -04:00
Sebastian Dröge
e51cd4fe2f
gst: Add better support for static plugins
2013-04-15 15:59:22 +02:00
Edward Hervey
2296296a51
mpegvideoparse: Only add meta if downstream needs it
...
It's not perfect, because in the cases where upstream doesn't
initiate an allocation query, we won't know.
2013-03-31 19:04:12 +02:00
Edward Hervey
14e7e78b7a
mpegvideoparse: Store information in GstMpegVideo12Meta
...
FIXME : Only do so if we know downstream will need it
2013-03-31 18:55:33 +02:00
Josep Torra
030cf658e6
mpeg4videoparser: Fix a compiler warning about uninitialised variable use
2013-03-30 09:52:45 +01:00
Sebastian Dröge
ac6967a843
mpeg4videoparse: Use correct type specifiers for format strings to fix compiler warnings
2013-03-03 12:30:21 +01:00
Tim-Philipp Müller
829076358e
Revert "mpeg4videoparse: set 0 duration when vop_coded is 0"
...
This reverts commit d3219a261a
.
vop_coded 0 means that the previous frame should be repeated,
so it should have valid duration after all.
https://bugzilla.gnome.org/show_bug.cgi?id=683169
2013-02-14 09:40:08 +00:00
Olivier Crête
f25b0eda09
pngparse: Declare the width/height outside the loop
...
Also initialize them to make gcc happy
2013-02-12 18:11:34 -05:00
Olivier Crête
41afff88e0
videoparsers: Add png file parser
...
https://bugzilla.gnome.org/show_bug.cgi?id=690639
2013-02-12 17:04:38 -05:00
David Schleef
168c8406b5
Unrevert: mpegvideoparse: set timestamp based on pic offset
...
API is now in baseparse in gstreamer.
Timestamps in MPEG-TS streams are based on the last timestamp
before the start code of the picture. GstBaseParse sets the
timestamp based on the beginning of the sequence header, if
one exists before the picture. This fixes the case where the
timestamp occurs in the MPEG-TS stream between the seq header
and picture start code.
2013-02-12 12:23:03 -08:00
Tim-Philipp Müller
aedc136926
Revert "mpegvideoparse: set timestamp based on pic offset"
...
This reverts commit 63718da919
.
The required baseparse API addition has not been pushed yet,
which breaks the build.
2013-02-12 09:38:35 +00:00
David Schleef
63718da919
mpegvideoparse: set timestamp based on pic offset
...
Timestamps in MPEG-TS streams are based on the last timestamp
before the start code of the picture. GstBaseParse sets the
timestamp based on the beginning of the sequence header, if
one exists before the picture. This fixes the case where the
timestamp occurs in the MPEG-TS stream between the seq header
and picture start code.
2013-02-11 17:41:17 -08:00
Mark Nauwelaerts
7df753165f
h264parse: separate fields for distinct functional uses of codec_data field
...
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=692789
2013-02-02 19:29:40 +01:00
Thijs Vermeir
471ad809f6
videoparsers: use appropriate printf format for gsize
2012-12-18 16:52:26 +01:00
Sebastian Dröge
f623a78924
videoparsers: Make sure the caps are actually writable before changing them
2012-12-17 15:16:48 +01:00
Sebastian Dröge
9f1257330d
videoparsers: Use the peer caps for restrictions instead of the srcpad allowed caps
...
Otherwise we will intersect with the srcpad template caps and add all the caps fields
that the parser will ever set, no matter if downstream restricts this field or not.
This requires upstream to set this field on the caps to successfully negotiate.
https://bugzilla.gnome.org/show_bug.cgi?id=690184
2012-12-17 15:04:44 +01:00
Wim Taymans
0e0dd05fd6
h264parse: use upstream width/height when given
...
The upstream width and height should override the dimension detected in the
file.
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=683142
2012-12-13 14:15:04 +01:00
Arnaud Vrac
0d15c8a7a5
mpeg4videoparse: export number of sprite warping points in caps
...
This allows filtering out videos for hardware decoders that do not
support GMC at all or only support a limited number of sprite warping
points (usually 1).
2012-12-13 11:01:00 +00:00
Arnaud Vrac
07c2a82e5d
mpeg4videoparse: handle divx caps
...
DivX 4/5 are MPEG4 part 2 videos, so they can be parsed by this plugin.
2012-12-13 11:01:00 +00:00
Thibault Saunier
d53a447731
mpeg4videoparse: Fix nitpick
2012-11-15 11:40:05 -03:00
Thibault Saunier
daed78039e
mpeg4videoparse: Make sure pad template caps are not fixed from the begging
...
Right now decodebin will concider the pad template caps as fixed and if a decoder
has restriction on for example height/width it won't be autoplugged because
gst_caps_is_subset fails as those fields are missing from the pad template caps.
We fix the issue here making sure that the pad caps are fixed using data from
the stream.
2012-11-15 10:45:53 -03:00
Thibault Saunier
b3abd51656
h264parse: don't rewind to the NAL length size in bytewriter if the format is bytestream
...
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=687548
Signed-off-by: Kevin Thornberry
2012-11-06 12:44:29 -03:00
Thibault Saunier
72933e3929
h264parse: Actually add PPS data to the output buffer
2012-11-06 11:54:39 -03:00
Tim-Philipp Müller
9e1b75fda3
Fix FSF address
...
https://bugzilla.gnome.org/show_bug.cgi?id=687520
2012-11-04 00:09:59 +00:00
Mark Nauwelaerts
0d1c7f6ea2
videoparsers: use parsed or upstream fps to set some baseparse parameters
2012-10-25 18:02:38 +02:00
Mark Nauwelaerts
58441bf262
h264parse: extract structure from correct caps
...
... which are known != NULL.
2012-10-25 18:02:38 +02:00
Mark Nauwelaerts
821c8519e0
videoparsers: preserve upstream fps and par
...
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=660866
2012-10-25 17:07:18 +02:00
Sebastian Dröge
36680b1190
vc1parse: Give vc1parse a rank of NONE for now
2012-10-25 14:05:48 +02:00
Sebastian Dröge
6d5fc5a771
vc1parse: Port to 1.0
2012-10-25 14:05:48 +02:00
Alessandro Decina
00abb674ca
vc1parse: disable BDU parsing until it's more mature
...
Parsing and splitting BDUs seems to trigger a few bugs in
downstream decoders so disable it for now.
2012-10-25 14:05:48 +02:00
Alessandro Decina
d03f5499bd
vc1parse: set duration on output buffers
...
This has the nice side effect of avoiding hanging at EOS with truncated asf
clips.
Conflicts:
gst/videoparsers/gstvc1parse.c
2012-10-25 14:05:48 +02:00
Alessandro Decina
f287dec1a2
vc1parse: workaround for simple/main codec_data being 5 bytes long
...
Sometimes the codec_data buffer for simple/main pushed by asfdemux is 5 bytes
instead of 4. When that happens, codec_data is still valid but it seems to have
one 0x00 trailing byte. Might be a bug in the demuxer, needs more investigation.
2012-10-25 14:05:48 +02:00
Alessandro Decina
8aec23ac05
vc1parse: remove stub stream conversion code
2012-10-25 14:05:48 +02:00
Alessandro Decina
cbecbbe23e
vc1parse: add some more debugging to _renegotiate
2012-10-25 14:05:48 +02:00
Sebastian Dröge
5af8f82ecd
vc1parse: Add VC1 parser plugin
2012-10-25 14:05:48 +02:00
Tim-Philipp Müller
32ba17cd0f
Use gst_element_class_set_static_metadata()
...
where possible. Avoids some string copies. Also re-indent
some stuff. Also some indent fixes here and there.
2012-10-17 17:46:34 +01:00
Sreerenj Balachandran
0b5fde7ed8
mpegvideoparse: signal interlacing properly in video caps
...
The field is called "interlace-mode" mode now and is a string.
https://bugzilla.gnome.org/show_bug.cgi?id=685895
2012-10-10 16:56:38 +01:00
Mark Nauwelaerts
a17b1f4c91
mpeg4videoparse: reset frame parser after parsing caps codec data
...
... so as to arrange for a proper fresh state upon first frame.
2012-10-10 09:59:46 +02:00
Michael Smith
2a18cf41a8
mpegvideoparse: reset frame parser after parsing codec_data buffer in caps, to
...
avoid not correctly parsing the full first frame.
2012-10-09 21:19:15 -07:00
Mark Nauwelaerts
8596e8d5da
mpeg4videoparse: properly mark config data presence
...
... which we allow to start at VisualObjectSequence or
at VideoObject.
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=685709
2012-10-09 13:59:38 +02:00
Andoni Morales Alastruey
4d13feda83
videoparsers: fix duplicated symbols for static links with libschroedinger
2012-10-03 12:07:08 +02:00
Mark Nauwelaerts
578861abea
replace gst_element_class_set_details_simple with gst_element_class_set_metadata
2012-09-14 17:27:49 +02:00
Mark Nauwelaerts
f2191d403c
h264parse: init pps and sps structures before parsing
...
... which arranges for a valid fallback id, and allows to continue best effort
processing even when sps/pps parsing fails.
2012-09-14 17:27:49 +02:00
Peter Seiderer
a0d88d5ff5
gsth264parse: add comment where return should be checked.
...
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=683264
2012-09-14 17:27:49 +02:00
Arnaud Vrac
744bd3d3f2
mpeg4videoparse: use previously parsed visual object when parsing VOL
...
https://bugzilla.gnome.org/show_bug.cgi?id=683254
2012-09-14 09:14:27 +02:00
Arnaud Vrac
207a76daea
mpeg4videoparse: do not skip user data
...
User data was skipped until now, so the user data was included when
parsing the previous packet and in the config buffer.
https://bugzilla.gnome.org/show_bug.cgi?id=683254
2012-09-14 09:14:23 +02:00
Jan Schmidt
b7d63d3fb1
videoparsers: Disable PTS interpolation in the base parse class
...
All these formats have re-ordered PTS which the base class gets
wrong. It's better to leave them blank and let the decoder sort it
out. Better yet would be to track and interpolate the timestamps
in the subclasses (FIXME)
2012-09-12 23:05:47 -07:00