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
Pascal Buhler
bd8d80a8e4
rtpbin: Handle rysnc of iterator when looking for free pad name
...
If a new pad was added while iterating then a pad could be
returned that was already in use.
Fixes #630451
2010-09-24 14:10:26 +02:00
Wim Taymans
8337c89c74
rtpsession: fix compilation
2010-09-24 14:10:26 +02:00
Trond Andersen
800b4bdb26
rtpbin: Unlock before adding pad in new_payload_found
...
Holding internal locks while potentially calling out is a source
of deadlocks, and in this case the application might subscribe to the
pad-added signal.
Fixes #630449
2010-09-24 14:00:11 +02:00
Havard Graff
062568a9f5
rtpsession: relax third-party collision detection
...
If the source has been inactive for some time, we assume that it has
simply changed its transport source address. Hence, there is no true
third-party collision - only a simulated one.
Fixes #630447
2010-09-24 13:56:56 +02:00
Wim Taymans
ce007b244e
rtpsource: whitespace fixes
2010-09-24 13:50:02 +02:00
Wim Taymans
c5203a479b
rtpsource: simplify the rate estimation some more
2010-09-24 13:48:50 +02:00
Havard Graff
0fa589a3dd
rtpmanager: provide additional statistics
2010-09-24 13:26:10 +02:00
Tim-Philipp Müller
730cfd609a
equalizer: fix class definitions
...
Class structures must be based on the parent class struct, not on
the parent instance struct.
2010-09-23 21:22:45 +01:00
Tim-Philipp Müller
4451718eff
videomixer2: pre-register pad class properly with g_type_class_ref
...
Fix code to match the comment. Also, there's no need to register the
background enum type again, this is already done via install_property.
2010-09-23 21:22:45 +01:00
Havard Graff
3e894a1f29
level: avoid division by zero on silence
...
Fixes bug #630458 .
2010-09-23 21:19:01 +02:00
Wim Taymans
9e7b890a22
flvdemux: parse and use cts
...
For H264, there is an extra header containing the CTS, which is a timestamp
offset that should be applied to the PTS. Parse this value and use it to adjust
the pts.
Fixes #630088
2010-09-23 16:46:31 +02:00
Wim Taymans
77f02c2d7e
flvdemux: improve pts debugging
2010-09-23 16:45:41 +02:00
Edward Hervey
6ce6ad41d5
qtdemux: Don't post tags if there are none
...
And make all code go through _post_global_tags.
2010-09-22 12:56:39 +02:00
Wim Taymans
f5c65a919f
rtph264depay: refactor and simplify AU merging
...
Move the processing of the NALU to a separate method.
Simplify the merging of NALU into AU and use common code when possible.
2010-09-22 12:41:23 +02:00
Sebastian Dröge
72b7685bef
shapewipe: Force format to AYUV in the example pipeline for the same reason
2010-09-21 19:15:22 +02:00
Sebastian Dröge
a1890f8d44
shapewipe: Improve debugging and immediately return empty caps from the getcaps functions
2010-09-21 19:15:22 +02:00
Thiago Santos
52f5e95aee
qtdemux: Parse uuid atoms in push mode
...
Parses uuid atoms in push mode when they are found, they might
contain xmp tags.
Also does a minor refactoring to put the global tags posting
into a single function instead of repeating it in 3 different
places.
Fixes #629839
2010-09-20 23:39:38 -03:00
Thiago Santos
9227352e31
qtdemux: Delay tags posting a little
...
Delay tags posting until we've parsed all the headers so
that the native and xmp tags get merged before posting
https://bugzilla.gnome.org/show_bug.cgi?id=629839
2010-09-20 22:37:26 -03:00
Thiago Santos
8d6cabf9c3
qtdemux: Parse xmp packet in uuid atom
...
xmp packet is placed into a top-level uuid atom for
isom/mp4 variants.
This patch makes qtdemux parse all top-level atoms
in pull-mode before starting to push data, making
it able to find those tags.
https://bugzilla.gnome.org/show_bug.cgi?id=629839
2010-09-20 22:37:26 -03:00
Wim Taymans
2c8b725591
rtpstats: printf format fixes
2010-09-17 11:07:52 +02:00
Wim Taymans
9cc24e1b94
rtppay: some printf format fixes
2010-09-17 11:07:02 +02:00
Alessandro Decina
3605bd454a
qtdemux: fix logic when pushing EOS.
...
Don't check for return values when pushing EOS. Still post an error if EOS is
reached and no streams have been found.
2010-09-15 18:27:24 +02:00
Alessandro Decina
42cde1ba3c
qtdemux: don't send EOS twice on the same pad.
2010-09-14 17:43:33 +02:00
Wim Taymans
604c6555a4
rtpjpegpay: cleanups for DRI markers
...
Protect against invalid DRI markers.
do some cleanups
2010-09-13 17:31:35 +02:00
American Dynamics
0f3151c73b
gstrtpjpegpay: Added Define Restart Interval (DRI) Marker
...
Added ability to detect and respond to a JPEG-defined DRI marker
2010-09-13 16:47:23 +02:00
Olivier Crête
8e73da10b3
gstrtpsession: Split getting the caps into its own function
2010-09-13 16:25:42 +02:00
Wim Taymans
8e1c9b5b33
rtpbin: small cleanup.
2010-09-13 16:25:42 +02:00
Wim Taymans
d541f5e24d
rtpsession: Small cleanups
...
Make the property description prettier.
Actually multiple the bandwidth with the fraction.
2010-09-13 15:51:20 +02:00
Olivier Crête
1f17b334ff
rtpsession: Calculate RTCP bandwidth as a fraction of the RTP bandwidth
...
Calculate the RTCP bandwidth to be a fraction of the RTP bandwidth if it is
specified as a value between 0 and 1.
2010-09-13 15:51:20 +02:00
Wim Taymans
8381d9788d
session: improve bandwidth recalculation
...
Also recalculate bandwidth when one of the source bandwidths changed.
Use the newly calculated bandwidth.
2010-09-13 15:51:20 +02:00
Olivier Crête
6f53a2b240
rtpsession: Add the option to auto-discover the RTP bandwidth
2010-09-13 15:51:19 +02:00
Thijs Vermeir
f38e37470a
rtpbin: set use-pipeline-clock on correct GObject
2010-09-13 14:39:51 +02:00
Olivier Crête
94e87ef8ee
rtpsession: Initialise the average scaled by 16
2010-09-13 13:10:19 +02:00
Wim Taymans
e6db74764b
rtpsession: add running_time argument docs
2010-09-13 12:41:56 +02:00
Olivier Crête
00fd89c074
rtpstats: Rectify description of current_time in RTPArrivalStats
...
It is the current time, it is unrelated to when the packet was actually received.
2010-09-13 12:37:01 +02:00
Wim Taymans
cb6de429a0
rtpsession: compute the average correctly scaled
2010-09-13 12:31:40 +02:00
Olivier Crête
64e4ffa25b
rtpsession: Count sent RTCP packets after they have been finished
...
If they are counted before calling gst_rtcp_buffer_end(), then the
size is way too big.
2010-09-13 12:13:23 +02:00
Olivier Crête
306ee454c6
gstrtpsession: Don't unref pads in finalize
...
The gstrtpsession object is not holding any reference to them directly
2010-09-13 12:10:11 +02:00
Wim Taymans
8f2d254e24
rtspsrc: don't clear sdp when set as uri
...
when we set the SDP with an uri, don't clear it when we go to READY.
2010-09-10 18:06:48 +02:00
Wim Taymans
7698d8bc4a
rtspsrc: use sdp uri parse method
...
Use the sdp parse method that does proper uri escaping.
2010-09-10 18:02:04 +02:00
Mark Nauwelaerts
d8a27ebe3e
rtpmparobustdepay: fix some mis-implementation
...
Also add some debug.
2010-09-10 13:26:43 +02:00
Mark Nauwelaerts
81773f9cce
rtpmparobustdepay: properly insert dummy buffers
2010-09-10 13:26:31 +02:00
Wim Taymans
ae84ae1b36
rtspsrc: add rtsp-sdp protocol support
...
Allow setting an SDP with the rtsp-sdp:// url.
Based on patch from Marco Ballesio.
See #628214
2010-09-10 12:14:21 +02:00
Alessandro Decina
51c9ad0233
alphacolor: make passthrough work.
2010-09-10 11:35:58 +02:00
Stefan Kost
d569cd8195
mp4adepay: small logging cleanup and addition to debug config parsing
2010-09-09 21:49:43 +03:00
Wim Taymans
de4a7fc4c4
rtpjpegpay: improve debugging
2010-09-09 18:48:53 +02:00
Mark Nauwelaerts
075afb6693
rtpmparobustdepay: use valid bitrate for dummy frame
2010-09-09 16:33:29 +02:00
Mark Nauwelaerts
91a60245b7
matroskademux: QoS handling logic only applies to forward playback
...
Fixes #628894 .
2010-09-08 17:51:34 +02:00
Sebastian Dröge
640cb863d4
rtpjpegpay: Fix uninitialized variable compiler warning
...
Fixes bug #629018 .
2010-09-08 07:13:42 +02:00
Wim Taymans
bd43ac854a
qtdemux: use older g_array_free
...
g_array_unref() is only since 2.22
2010-09-07 17:06:02 +02:00
Wim Taymans
2ed53fd77f
rtpjpegpay: do some more sanitity checks
...
Protect some more against invalid input.
2010-09-07 16:40:08 +02:00
American Dynamics
a482677a14
jpegpay: handle corrupted jpeg better
...
Protect against corrupted jpeg input.
2010-09-07 15:20:12 +02:00
Wim Taymans
474c013051
rvawdepay: cleanup unused fields
2010-09-07 13:56:54 +02:00