Commit graph

4292 commits

Author SHA1 Message Date
Jan Schmidt
3ab2eeecb8 videoflip: Forward src pad events upstream.
Fix passing navigation and other events upstream by actually sending them.

Fixes: #633205
2010-10-27 11:59:07 +01:00
Tim-Philipp Müller
ac70239020 qtdemux: fix deadlock in error code path
GST_ELEMENT_ERROR must not be called with the object lock held,
since it will call gst_object_get_parent() internally, which
takes the object lock as well.
2010-10-24 18:57:59 +01:00
Philip Jägenstedt
7fcd7d8cf2 matroskademux: Remove useless clearing of send_xiph_headers for Dirac
This looks like a mistake when copy-pasting the Theora code.

https://bugzilla.gnome.org/show_bug.cgi?id=632682
2010-10-23 16:10:14 +01:00
Philip Jägenstedt
6cf398cdf3 matroskademux: don't crash if vorbis/theora codec data is missing
Error out properly in this case instead of crashing.

https://bugzilla.gnome.org/show_bug.cgi?id=632682
2010-10-23 14:05:46 +01:00
Mark Nauwelaerts
ca7870de49 rtspsrc: fix duration reporting
Init segment prior to storing duration info in it.

Fixes #632548.
2010-10-19 16:47:20 +02:00
David Schleef
e9d4710cc8 Update generated orc code 2010-10-15 14:02:57 -07:00
Olivier Crête
077a61932a rtpbin: Use the right constant to define the "use-pipeline-clock" property
The wrong #define was being used, now use the correct one.
2010-10-14 17:41:30 -04:00
Mark Nauwelaerts
4085f12058 ac3: demuxers provide framed output 2010-10-14 17:29:26 +02:00
Tim-Philipp Müller
7a8ebc4a79 matroskamux: reduce newsegment event spam and set discont flag where needed
Only send newsegment events with new positions downstream when actually
needed, instead of sending multiple newsegment events with new seek
positions in a row. Also set the discont flag on buffers after a
discontinuity.
2010-10-14 14:00:59 +01:00
Tim-Philipp Müller
84e47e579b matroskamux: set correct buffer offsets after seeks
Re-use the existing 'pos' field maintained by ebml writer to set
buffer offsets. This also makes sure that we set the right offsets
on buffers after a seek (e.g. when writing an index at the end).
2010-10-14 12:48:33 +01:00
Tim-Philipp Müller
6ff3dfe946 matroskamux: don't forward tag events downstream
Don't forward stream-specific tag events downstream (esp. not
before any newsegment event).x
2010-10-14 12:48:00 +01:00
Mark Nauwelaerts
c7a8d672a7 qtdemux: handle another mp4v variation
... including the glbl atom containing codec-data.
2010-10-13 17:26:33 +02:00
Stefan Kost
d8167e3071 various (gst): add a missing G_PARAM_STATIC_STRINGS flags 2010-10-13 18:00:28 +03:00
Stefan Kost
2975307f86 various: wrap property registration and add a single fixme for long desc. 2010-10-13 17:39:21 +03:00
Wim Taymans
9f8b56b974 h264depay: always mark the codec_data as keyframe
We need to mark the codec_data as a keyframe or else downstream decoders might
decide to skip it, waiting for a keyframe.

Fixes #631996
2010-10-13 11:48:49 +02:00
Zaheer Abbas Merali
6f0030f701 matroskamux: make buffer offsets a byte count rather than a buffer count 2010-10-13 07:17:24 +01:00
Tim-Philipp Müller
d65eb2b91a ext, gst: canonicalise property names where this wasn't the case
ie. "foo_bar" -> "foo-bar"
2010-10-12 16:04:21 +01:00
Thijs Vermeir
bcde8c1b29 rtpmpvpay: fix timestamping of rtp buffers
Incomming buffer is only pushed on the adapter at the end of the
handle_buffer function. But duration/timestamp of this buffer is already
taken into account for the current data in the adapter. This leads to
wrong rtp timestamps and extra latency.
2010-10-12 15:17:02 +02:00
Wim Taymans
ee7207aa3e rtspsrc: mark as a source
Mark the rtspsrc element as a source.
Requires 0.10.31.1 now
2010-10-11 15:12:51 +02:00
Sebastian Dröge
bcb4f50323 autodetect: Set GST_ELEMENT_IS_SOURCE flag on sources 2010-10-11 14:24:52 +02:00
Zaheer Abbas Merali
f012ab67cc matroskamux: set offsets on outgoing buffers 2010-10-10 14:44:43 +01:00
Robert Swain
6a6f90e745 deinterlace: Fix required fields logic
Both history_count and fields_required count from 1. As per the while loop
condition that follows this code, to perform the deinterlacing method, we need
history_count >= fields_required fields in the history. Therefore if we have
history_count < fields_required (not fields_required + 1), we need more fields.
2010-10-06 15:05:36 +02:00
Andoni Morales Alastruey
0bffae750b flvmux: resend onMetada tag when tags changes in streamable mode 2010-10-06 09:14:24 +02:00
Arun Raghavan
4a244e0d55 qtdemux: AAC codec_data can be > 2 bytes long
This fixes the assumption that DecoderSpecificInfo must be 2 bytes long
for AAC files. The specification allows HE-AAC to be explicitly
signalled in a backward compatible way. This is done by means of an
additional information after the regular AAC header. It is expected that
decoders that can play AAC but not HE-AAC will parse the header normally
and ignore extended bits, much as they do for the HE-AAC specific payload
in the actual stream.

https://bugzilla.gnome.org/show_bug.cgi?id=612313
2010-10-05 19:45:31 +01:00
Mark Nauwelaerts
bb9a8a9b7d matroskademux: only unref buffer when no longer needed for cluster scanning
Fixes #629047.
2010-10-05 16:03:10 +02:00
Mark Nauwelaerts
e0d11f0644 matroskademux: avoid infinite cluster scanning 2010-10-05 16:03:08 +02:00
Wim Taymans
49d5d8f69e goom: take duration into account when doing QoS
Take the duration of the frames into account so that we don't drop frames that
are only partially past the QoS deadline.
2010-10-05 12:23:15 +02:00
Wim Taymans
cd5f31f751 goom: use adapter for timestamping
Use the adapter timestamp code to get more accurate timestamps.
Fix latency calculation, we add our own latency in the worst case.
2010-10-05 12:23:15 +02:00
Andoni Morales Alastruey
4c2f5333bb icydemux: forward tag events
https://bugzilla.gnome.org/show_bug.cgi?id=630205
2010-10-04 20:10:02 +02:00
Wim Taymans
a060a65786 goom2k1: report our latency correctly
Fixes #631303
2010-10-04 19:01:03 +02:00
Wim Taymans
8c910a25fe goom2k1: add defines for default width/height/fps
Add some defines for the default width/height/fps instead of using different
values in different places.
2010-10-04 18:56:15 +02:00
Wim Taymans
418eae3ee3 goom: add latency compensation code.
Implement a latency query and report how much latency we will add to the
stream.
Alse make some defaults for the default width/height/framerate

Fixes #631303
2010-10-04 18:52:14 +02:00
Sebastian Dröge
a4c27169b6 rtp: Fix unitialized compiler warnings on OS X build bot
These warnings are wrong though, the variables are only used in
the cases where they *are* initialized by the bit reader.
2010-10-04 09:39:59 +02:00
Sebastian Dröge
c1877deee0 rtpg722pay: Fix uninitialized variable compiler warning
The clock rate is always 8000 Hz according to the RFC and
the sampling rate must always be 16000 Hz.
2010-10-03 23:49:08 +02:00
Vladimir Eremeev
8bf7381385 rtpjitterbuffer: improve article reference in comment block
https://bugzilla.gnome.org/show_bug.cgi?id=631082
2010-10-01 18:07:03 +01:00
Arun Raghavan
c65305d70e qtdemux: Use pbutils for H.264 profile/level extraction
The functions used to extract this data have been moved to gstpbutils to
facilitate reuse.

https://bugzilla.gnome.org/show_bug.cgi?id=617318
2010-10-01 17:07:36 +01:00
Arun Raghavan
9e786de9c8 matroskademux: Use pbutils for H.264 profile/level extraction
The functions used to extract this data have been moved to gstpbutils to
facilitate reuse.

https://bugzilla.gnome.org/show_bug.cgi?id=617318
2010-10-01 16:58:46 +01:00
Arun Raghavan
1a37a62454 qtdemux: Export MPEG-4 video profile and level in stream caps
This uses gstpbutils to extract the profile and level from the video
object sequence and adds this to stream caps. This can be used as
metadata and for fine-grained decoder selection.

https://bugzilla.gnome.org/show_bug.cgi?id=616521
2010-10-01 14:41:44 +01:00
Tim-Philipp Müller
64753bdbe8 qtdemux: fix aac channel override based on codec data for 7.1 case 2010-10-01 11:42:15 +01:00
Arun Raghavan
845a3d6c3d qtdemux: Export AAC profile and level in caps
This exports the AAC profile and level in caps for use as metadata and
(eventually) for more fine-grained selection of decoders at
caps-negotiation time. (Doesn't work for HE-AAC yet though.)

https://bugzilla.gnome.org/show_bug.cgi?id=612313
2010-10-01 11:41:53 +01:00
Wim Taymans
78e4a260b4 rtp: add G722 pay and depayloader 2010-09-30 18:34:36 +02:00
Thijs Vermeir
2c2c90a723 rtpjitterbuffer: update link to documentation 2010-09-30 12:08:49 +02:00
Tim-Philipp Müller
a461b94629 wavenc: miniscule code clean-up
GST_CLOCK_TIME_NONE is not something that should be used in connection with
GST_FORMAT_BYTES.
2010-09-29 18:53:26 +01:00
Mark Nauwelaerts
8d69663026 avidemux: reverse playback; prevent overlap of subsequent fragments 2010-09-29 11:00:08 +02:00
René Stadler
0cfe24d132 rtspsrc: fix missing null-terminator in protocols array
Fixes random crash regression from commit ae84ae.
2010-09-28 16:21:48 +03:00
Wim Taymans
ef29a59903 rtspsrc: don't add /UDP in the transport, it's the default
don't add the default UDP lower-transport, some servers don't seem to like it.

Fixes #630500
2010-09-24 16:26:20 +02:00
Pascal Buhler
7a8c2a4b8a rtpmanager: packet lost should not be a warning. It happens all the time... 2010-09-24 16:00:03 +02:00
Pascal Buhler
ca6a512b5e rtpbin: Make cleaning up sources in rtp_session_on_timeout MT safe
Using _foreach_remove on the hashtable, while releasing the lock protecting
that table inside the callback is not a good idea. The hashtable might
then change (a source removed or added) while signals like on_timeout
are being sent.

This solution makes a copy of the table, performs the _foreach without
actually removing any sources, but marks them for removal on a second
iteration with the real list, but this time not letting go of the lock.

Fixes #630452
2010-09-24 15:38:00 +02:00
Edward Hervey
87a9d7f679 id3demux: Sanitize id3 frame names
This is similar to what is done in qtdemux. Avoids providing invalid
structure/tags names
2010-09-24 15:27:24 +02:00
Edward Hervey
c6c941f315 apedemux: Skip empty tags
Avoid creating bogus string tags. Also added logging of the string
values of the tag name and value.
2010-09-24 15:27:24 +02:00