Commit graph

4496 commits

Author SHA1 Message Date
Wim Taymans
4279aa6a68 theorapay: handle 0 sized packets
Handle 0 sized packets (repeat frame) in the payloader and depayloader.

Fixes #641827
2011-02-14 16:48:06 +01:00
Tuukka Pasanen
d203b1ef50 taginject: resend tags when they are changed
Allow setting new tags on the property while running and send them.

Fixes #640249
2011-02-14 15:23:56 +02:00
Miguel Angel Cabrera Moya
3cca27ced1 rtspsrc: fix minor leaks when handling server requests.
https://bugzilla.gnome.org/show_bug.cgi?id=640163
2011-02-14 11:33:18 +01:00
Heath Nielson
aa7e638d8e qtdemux: extract MusicBrainz tags
Extract MusicBrainz tags added by MusicBrainz's Picard
tagger application. These tags (esp. the album id) are
helpful for rhythmbox et.al. to automatically downloads
cover art.

https://bugzilla.gnome.org/show_bug.cgi?id=642205
2011-02-14 00:49:00 +00:00
Tim-Philipp Müller
6f0a4fa85b qtdemux: refactor iTunes tag parsing a bit 2011-02-14 00:38:45 +00:00
Mark Nauwelaerts
686189f3f0 qtdemux: propagate error during expose_streams
... as it may occur during initial parsing of fragmented file.
2011-02-10 18:17:56 +01:00
Mark Nauwelaerts
3dc42d3704 qtdemux: avoid skipping exposing a stream following a removed stream 2011-02-10 18:17:40 +01:00
Mark Nauwelaerts
b70f4b6ffa matroskademux: store cluster positions provided by SeekHead
... and use those, if available, to locate a cluster rather than scanning.
2011-02-10 18:17:31 +01:00
Mark Nauwelaerts
9de84b45bc matroskademux: properly resume cluster scanning
... rather than getting offset tracking messed up, and then likely
failing a subsequent assert.
2011-02-09 16:27:00 +01:00
Stefan Kost
a86bab6689 id3demux: ensure a taglist before adding the container tag
In the case of id3v1 also don't return NULL on empty tags, but also create a new
taglist and add the container tag for consistency.
2011-02-08 10:07:43 +02:00
Stefan Kost
6f6b2a7efc rtspsrc: strip trailing spaces 2011-02-07 17:08:47 +02:00
Stefan Kost
5e071d51f2 rtpsrc: set multiple properties in one go
There is no need for separate g_object_set() calls here.
2011-02-07 17:07:42 +02:00
Thiago Santos
cb527623a3 deinterlace: Handle image caps without asserting
Images might have framerate=0/1 in the caps, which caused an
assertion on deinterlace. I don't know of interlaced image formats
but deinterlace might be hardcoded on some generic pipelines and
it shouldn't assert.

The fix was to set field_duration to 0 if the input has a framerate
with a 0 numerator.

This patch also adds checks for this situation on the unit tests.

https://bugzilla.gnome.org/show_bug.cgi?id=641400
2011-02-04 09:38:35 -03:00
Stefan Kost
18213aa214 docs: fix parameter name in udpsrc docs
It is "buffer-size" and not "buffer". Also trim trailing whitespace.
2011-02-04 12:34:08 +02:00
Wim Taymans
61382aad28 source: fix type of ntpnstime 2011-02-02 18:30:47 +01:00
Wim Taymans
8598aaf81b rtpbin: Get and use the NTP time when receiving RTCP
When we receive an RTCP packet, get the current NTP time in nanseconds so that
we can correctly calculate the round-trip time.
2011-02-02 18:30:46 +01:00
Olivier Crête
8a7a327db7 rtptheoradepay: Request new keyframe on lost packets
Theora can only use the last frame (or the keyframe) as a reference, so in
practice. If we receive a buffer that references an unknown codebook, request
new headers. It probably means that headers were lost.
2011-02-01 18:28:51 +01:00
Olivier Crête
cd923223dd rtpsession: Add action signal to request early RTCP 2011-02-01 18:28:51 +01:00
Olivier Crête
c0996e6b90 rtpsession: Add callback to get the current time 2011-02-01 18:28:51 +01:00
Olivier Crête
a630c68fc3 rtpsession: Don't relay more than one PLI request per RTT
Drop PLI requests if one was relay in the last RTT, the other side may
just not have received the keyframe yet.
2011-02-01 18:28:51 +01:00
Olivier Crête
a61bb9e94b rtpsession: Send GstForceKeyUnit event in response to received RTCP PLI 2011-02-01 18:28:51 +01:00
Sjoerd Simons
7350d2adfa gstrtpsession: Fallback for FIR to PLI if PLI isn't available 2011-02-01 18:28:51 +01:00
Olivier Crête
52f95fa7ee rtpsession: Implement sending PLI packets in response to GstForceKeyUnit 2011-02-01 18:28:51 +01:00
Olivier Crête
db5150a23a rtpsource: Retain RTCP Feedback packets for a specified amount of time 2011-02-01 18:28:51 +01:00
Olivier Crête
90354ecb49 rtpsession: Make rtcp buffer metadata writable after processing it
Functions that process the rtcp buffer could decide to keep a ref
on the buffer for further processing. So make the metadata writable
only after they are done.
2011-02-01 18:28:50 +01:00
Olivier Crête
1643f427db rtpsession: Emit signal on incoming RTCP FB packet 2011-02-01 18:28:50 +01:00
Wim Taymans
f399b6a641 rtpsession: fix compilation 2011-02-01 18:28:50 +01:00
Olivier Crête
1bde427250 rtpsession: Add method to request early RTCP packet
Implement the early mode defined in RFC 4585. In this mode, RTCP feedback
packets are sent early to notifier.
2011-02-01 17:03:39 +01:00
Olivier Crête
975e1fecb3 rtpsession: Add property for minimum interval between Regular RTCP messages
This can be changed according to RFC 4585
2011-02-01 16:56:15 +01:00
Olivier Crête
cdb5465741 rtpsession: Emit signal when sending a compound RTCP packet
This allows users to add extra RTCP packets to the compound
RTCP packet.
2011-02-01 16:50:58 +01:00
Olivier Crête
589b254ce5 rtpptdemux: Tag upstream custom events with payload type 2011-02-01 16:50:25 +01:00
Olivier Crete
c7b1ce7310 rtpssrcdemux: Tag upstream custom events with SSRC 2011-02-01 16:49:10 +01:00
Olivier Crête
9f073459e0 rtpsession: Emit "on-ssrc-validated" when validating by RTCP
Emit "on-ssrc-validated" if the SSRC is validated by receiving
a RTCP SDES packet.
2011-02-01 16:45:58 +01:00
Wim Taymans
f95c30a413 j2kpay: skip EPH packets
Include EPH markers into the previous chunk of packets.
2011-02-01 16:39:10 +01:00
Olivier Crête
07ebec51f5 rtppcmapay: Rename the class to have the right name
It was name pmca instead of pcma and made debug logs hard to search.
2011-01-31 17:56:43 -05:00
Tim-Philipp Müller
ede0635d45 deinterlace: simplify template caps
We can merge all the YUV variants into one single structure.
2011-01-31 13:44:45 +00:00
Mark Nauwelaerts
8d90dba55e avidemux: initialize local variable to please mingw32 compiler 2011-01-27 16:02:46 +01:00
Mark Nauwelaerts
7def8c9b98 udp: use socklen_t where appropriate rather than custom type
In particular, fixes Cygwin build where socklen_t is defined as int
in line with native win32 api definition.
2011-01-27 16:01:09 +01:00
Mark Nauwelaerts
cb76a13cc9 qtdemux: mind rounding issues when converting from global time to mov time
In particular, this avoids missing the intended keyframe when first converting
from the frame's mov time to global segment time, and then back from global
time to mov time when activating the segment.
2011-01-27 12:27:38 +01:00
Ognyan Tonchev
0add79cbf1 matroskamux: don't leak ebml writer caps when re-using matroskamux
https://bugzilla.gnome.org/show_bug.cgi?id=640542
2011-01-26 08:51:04 +00:00
Stefan Kost
9f34b89245 rtpjitterbuffer: don't divide by 0 2011-01-25 21:57:57 +02:00
Mark Nauwelaerts
68fc03fd76 matroskademux: pull mode should always report seekable
... as it no longer requires an index, but can seek by scanning as well.
2011-01-24 22:24:28 +01:00
Mark Nauwelaerts
9f7570f132 qtdemux: support some more mpeg-4 fourcc variants 2011-01-24 22:23:56 +01:00
Mark Nauwelaerts
662ec520ae qtdemux: simplify retrieving stsd child entry atom 2011-01-24 22:23:53 +01:00
Edward Hervey
c6b9f5b25a avidemux: Don't consider 0 fcc_handler as uncompressed.
Just avoids a warning
2011-01-24 18:30:57 +01:00
Wim Taymans
899dad8949 qtdemux: take configured start time into account
when creating the newsegment event, take the configured start time
into account.
2011-01-24 16:48:17 +01:00
Tim-Philipp Müller
06364a54ce qtdemux: fix printf format warning on mingw32
Make win32 build bot happy again, and nicefy output while we're at it.

qtdemux.c: In function 'qtdemux_parse_trun':
qtdemux.c:2162:3: error: format '%lu' expects type 'long unsigned int', but argument 9 has type 'guint32'
2011-01-24 15:11:02 +00:00
Tim-Philipp Müller
693b3b7e0b h264depay: don't leak codec data buffer in byte-stream=true mode
https://bugzilla.gnome.org/show_bug.cgi?id=640063
2011-01-20 14:10:55 +00:00
Tim-Philipp Müller
08855b45b6 rtspsrc: don't leak url string
https://bugzilla.gnome.org/show_bug.cgi?id=640064
2011-01-20 13:46:44 +00:00
Edward Hervey
6d545e29ad qtdemux: Gracefully handle mov files misusing the WAVE atoms
Check that the WAVEHEADER node is present instead of blindly using it.
If not present we won't be able to provide a more refined caps, but at
least we won't crash.

https://bugzilla.gnome.org/show_bug.cgi?id=640028
2011-01-20 11:48:38 +01:00