Sebastian Dröge
7cae8922cb
matroskademux: Check for the correct size of codec_data in the ACM case
2013-12-23 15:46:43 +01:00
Nicola Murino
00ea1cb003
matroskamux: basic adpcm support
...
https://bugzilla.gnome.org/show_bug.cgi?id=664339
2013-12-23 15:31:04 +01:00
Sebastian Dröge
371482a90c
qtdemux: Fix calcuation of descriptor length
...
https://bugzilla.gnome.org/show_bug.cgi?id=720813
2013-12-23 15:09:49 +01:00
Tim-Philipp Müller
aa9ee4bd93
Automatic update of common submodule
...
From dbedaa0 to d48bed3
2013-12-22 22:33:39 +00:00
Tim-Philipp Müller
ecaede0ce6
po: set gettext domain in Makevars so we don't have to patch the generated Makefile.in.in
...
https://bugzilla.gnome.org/show_bug.cgi?id=705455
2013-12-22 22:23:49 +00:00
Tim-Philipp Müller
9c9efffd8c
udpsrc: on receive error only unmap and unref buffer if one was alloced and mapped
...
coverity CID 1139866.
2013-12-19 20:35:03 +00:00
Tim-Philipp Müller
627109ce4d
multiudpsink: fix misleading comment
...
Those are not allocated on the stack.
2013-12-19 12:47:22 +00:00
Sebastian Dröge
c62229ae2d
vpx: Mark VP9 support as non-experimental
...
There was a libvpx release with VP9 support now and the bitstream
is frozen too.
2013-12-17 18:28:25 +01:00
Todd Agulnick
8bab119af9
Some compiler warning fixes to satisfy XCode compiler
...
https://bugzilla.gnome.org/show_bug.cgi?id=720513
2013-12-16 16:52:40 +01:00
Sebastian Dröge
92c3211c79
id3v2mux: Set picture type in the APIC frames
2013-12-16 16:17:07 +01:00
Sebastian Dröge
d60ac3cfea
id3v2mux: Set image-description from the info struct, not the caps
2013-12-16 16:14:52 +01:00
Sebastian Dröge
2927805749
wavpackparse: Post AUDIO_CODEC tag
2013-12-16 10:03:06 +01:00
Sebastian Dröge
753d3c23a2
sbcparse: Post AUDIO_CODEC tag
2013-12-16 10:03:06 +01:00
Sebastian Dröge
05e196cbb6
flacparse: Post AUDIO_CODEC tag
...
https://bugzilla.gnome.org/show_bug.cgi?id=720512
2013-12-16 10:03:06 +01:00
Sebastian Dröge
29f2cae129
dcaparse: Post AUDIO_CODEC tag
2013-12-16 10:03:05 +01:00
Sebastian Dröge
d2ab5199bc
amrparse: Post AUDIO_CODEC tag
2013-12-16 10:03:05 +01:00
Sebastian Dröge
6f89b430ea
ac3parse: Post AUDIO_CODEC tag
2013-12-16 10:03:05 +01:00
Sebastian Dröge
b3abbe3f5e
aacparse: Post AUDIO_CODEC tag
2013-12-16 10:03:05 +01:00
Sebastian Dröge
c07424a534
mpegaudioparse: Use pbutils functionality to create the AUDIO_CODEC tag
2013-12-16 10:03:05 +01:00
Olivier Crête
ada6ea668b
rtpsession: Add error message if the app tries to set the internal-ssrc
2013-12-13 17:36:36 -05:00
Olivier Crête
d715010d78
rtpsession: Only count nacks when a nack packet is received
...
Not when any RTCP feedback packet is.
2013-12-13 16:08:35 -05:00
Olivier Crête
dc845c1899
tests: Initialize segment in rtpcollision test
2013-12-13 16:05:41 -05:00
Olivier Crête
7af9fdbca6
rtpsession: Process PSFB FIR requests which lack the media ssrc
...
According to RFC 5104 section 4.3.1.2, RTCP PSFB FIR message SHALL
have a media_ssrc field set to 0. The actual media ssrc is in the FCI.
So in that case, we ignore the retained feedback and just let it through
to the rtp_session_process_fir() function which will check for the actual
SSRC inside the FCI.
Fixes a regression introduced by commit 57c27ec3
2013-12-13 16:01:07 -05:00
George Kiagiadakis
6a2de911fa
rtpsession: fix rb blocks disappearing after the first rtcp cycle with multiple senders
...
Previously, when the session had multiple internal sender SSRCs, it would
issue SR reports with RB blocks only on the first RTCP timeout and afterwards
SR reports would be sent empty. This was because the "generation" number
in RTPSource would increase more than once during the same cycle and afterwards
it would always be greater than the session's generation, which would cause
it to be skipped from being included in RBs.
This commit fixes this problem by:
1) Increasing the RTPSource generation only at the end of each cycle,
which essentially fixes the problem but only when the internal senders
are less than GST_RTCP_MAX_RB_COUNT.
2) Keeping for each RTPSource a set of SSRCs which stores which SSRC's
SR the given RTPSource has been reported in, which also fixes the problem
when the internal senders are more than GST_RTCP_MAX_RB_COUNT. This is
necessary because of the fact that any RTPSource is marked as reported
in itself's SR and makes it impossible to know if it has been reported
in other SRs too or not, and which.
2013-12-12 16:44:27 +01:00
George Kiagiadakis
f9b7f44938
tests/check: add an rtpsession unit test to verify all RBs are included in all SRs, roundrobin
...
This test checks that when we have multiple internal sender sources
in rtpsession, SRs contain RBs for every other sender source, and that
they are included roundrobin when they exceed ST_RTCP_MAX_RB_COUNT,
which is the max number of RBs that can fit in a SR.
2013-12-12 16:02:56 +01:00
Wim Taymans
b4ebf8ca50
docs: improve docs
2013-12-12 16:01:10 +01:00
Julien Isorce
a0df8b8fce
doc: add design-rtpcollision.txt that explains when GstRTPCollision is created
...
It also talks about "BYE only the corresponding source, not the whole session."
2013-12-12 15:46:24 +01:00
Julien Isorce
d562263852
tests/check: improve rtpcollision::test_master_ssrc_collision to ensure that a collision does not BYE the whole session
...
Conflicts:
tests/check/elements/rtpcollision.c
2013-12-12 15:39:40 +01:00
Julien Isorce
7b001e35ed
tests/check: add rtpcollision::test_master_ssrc_collision unit test
...
It checks the payloader changes its ssrc when collision happens
2013-12-12 15:39:39 +01:00
George Kiagiadakis
c78a115154
rtpsession: keep extra stats for scheduling BYE
...
Keep an extra stats structure for scheduling the BYE packets. When we
decide to schedule BYE, make a copy of the current stats into the
bye_stats. Then while we schedule the BYE, update and use only the
bye_stats. When we finished scheduling the BYE packet, we use the
regular stats again.
2013-12-12 10:38:43 +01:00
George Kiagiadakis
282028e753
rtpsession: when we schedule BYE, only deal with BYE sources
...
When we are doing the RTCP timeout to schedule BYE packets, don't
generate RTCP for all sources but only for the sources marked as BYE.
2013-12-12 10:34:38 +01:00
George Kiagiadakis
6a421c3d81
rtpsession: reset state after scheduling BYE
...
After we do RTCP, we are not scheduling bye anymore.
2013-12-12 10:32:48 +01:00
George Kiagiadakis
0a0ff100ef
rtpsession: also count NACKS when no signal was pending
2013-12-12 10:31:38 +01:00
George Kiagiadakis
bec9c04ea0
session: ignore RTCP packets for the BYE sources
...
When we are scheduling BYE packets, ignore all RTCP for the sources that
are scheduling a BYE packet. Other sources that are not scheduling BYE
should continue receiving RTCP packets as usual.
2013-12-12 10:09:25 +01:00
Julien Isorce
33b398e345
rtpsession: determine if the session is doing point-to-point
...
In this case T_dither_max is set to 0 according to RFC 4585
2013-12-10 16:57:56 +01:00
Wim Taymans
eee515cb2c
rtpjitterbuffer: serialize events in the buffer
...
Serialize events into the jitterbuffer by inserting them with a -1
seqnum.
Update unit test to expect events from the streaming thread.
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=652986
2013-12-10 11:57:37 +01:00
Wim Taymans
36e78bc5ca
rtpjitterbuffer: detect -1 seqnum
...
Keep the seqnum as a full guint so that we can check for -1 entries and
deal with them correctly.
Immediately try to push -1 seqnum.
2013-12-10 11:04:06 +01:00
Wim Taymans
4a2e0f4ff4
rtpjitterbuffer: reorganize jitterbuffer items
...
Keep the oldest item at the head and the newest items on the tail. This
makes it easier to deal with -1 seqnums.
2013-12-10 11:01:03 +01:00
Wim Taymans
ea2a222cef
jitterbuffer: correctly check for invalid values
...
Check for -1 on the guint from the buffer item instead of on the guint16
or guint32.
Also insert -1 seqnum at the head of the jitterbuffer.
2013-12-09 23:34:10 +01:00
Alessandro Decina
fdf8ac40d8
osxvideosink: fix segfault when dealing with padded frames
...
Fixes crashes with vtdec ! osxvideosink where VideoToolbox outputs padded UYVY
2013-12-08 16:51:00 +01:00
Sebastian Dröge
f3c3dee148
mulawdec: Require caps to be set before accepting any data
2013-12-05 12:15:29 +01:00
Sebastian Dröge
d9deb95012
wavpackdec: Require caps to be set before accepting any data
2013-12-05 12:15:19 +01:00
Sebastian Dröge
c880e36779
speexdec: Require caps to be set before accepting any data
2013-12-05 12:13:33 +01:00
Sebastian Dröge
774e56b051
flacdec: Require caps to be set before accepting any data
2013-12-05 12:13:10 +01:00
Sebastian Dröge
5c8163a685
vpx: Use new gst_video_decoder_set_needs_format() API
2013-12-05 11:42:34 +01:00
Olivier Crête
dc782af133
pulsesink: Free device_info in accepts caps
...
https://bugzilla.gnome.org/show_bug.cgi?id=719811
2013-12-04 16:24:06 -05:00
Sebastian Dröge
d585bd7bbd
rtptheorapay: Don't send headers twice if we got them from the caps already
2013-12-04 21:58:29 +01:00
Sebastian Dröge
d105de6e0f
rtptheorapay: Don't leak config data when receiving a second CAPS event
2013-12-04 21:58:29 +01:00
Sebastian Dröge
0915d696c7
rtpvorbispay: Don't send headers twice if we got them from the caps already
2013-12-04 21:58:29 +01:00
Sebastian Dröge
967280df42
rtpvorbispay: Don't leak config data when receiving a second CAPS event
2013-12-04 21:58:29 +01:00