Vineeth T M [Mon, 22 Jun 2015 10:35:57 +0000 (19:35 +0900)]
lzo: fix memory leak
the opened file is not being closed during test, which will result
in memory leak.
https://bugzilla.gnome.org/show_bug.cgi?id=751306
Vineeth T M [Mon, 22 Jun 2015 10:30:58 +0000 (19:30 +0900)]
mikmod_reader: Possible null pointer dereference:
gst_reader variable is being used before actually checking if it
allocated properly
https://bugzilla.gnome.org/show_bug.cgi?id=751306
Sangkyu Park [Mon, 22 Jun 2015 10:45:14 +0000 (19:45 +0900)]
rtpjitterbuffer: Minor clean-up
1. Fix the code which is wrong coding style.
2. Fix a typing error of comment.
https://bugzilla.gnome.org/show_bug.cgi?id=751316
Jose Antonio Santos Cadenas [Mon, 22 Jun 2015 09:28:13 +0000 (11:28 +0200)]
rtpsource: Do not try to push NULL buffers
If update_receiver_stats() fails, we can't really do anything with this buffer
anymore and have to drop it. This happens if there's a big seqnum
discontinuity for example.
https://bugzilla.gnome.org/show_bug.cgi?id=751311
Vineeth TM [Mon, 22 Jun 2015 04:10:02 +0000 (13:10 +0900)]
flvdemux: trivial cleanup
trivial patch to add proper ( while checking for if(G_UNLIKELY())
https://bugzilla.gnome.org/show_bug.cgi?id=751306
Vineeth TM [Mon, 22 Jun 2015 04:16:08 +0000 (13:16 +0900)]
dcaparse: initialize size variable
size can be used in cleanup without being initialized. Hence
setting it to 0 when declaring
https://bugzilla.gnome.org/show_bug.cgi?id=751306
Vineeth TM [Mon, 22 Jun 2015 04:13:29 +0000 (13:13 +0900)]
mpegaudioparse: initialze bpf variable
bpf variable might be used in cleanup without being intialized.
https://bugzilla.gnome.org/show_bug.cgi?id=751306
Miguel París Díaz [Fri, 19 Jun 2015 12:50:59 +0000 (14:50 +0200)]
rtprtxqueue: reverse pending list before pushing buffers
With this we send the RTX buffers in the same order
that they were requested.
https://bugzilla.gnome.org/show_bug.cgi?id=751297
Nicolas Dufresne [Sun, 21 Jun 2015 23:22:10 +0000 (19:22 -0400)]
flvmux: Fix DTS validity check
This check was up-side-down, causing a bad timestamp at start
and then all timestamp being delayed.
https://bugzilla.gnome.org/show_bug.cgi?id=751298
Nicolas Dufresne [Wed, 17 Jun 2015 19:19:47 +0000 (15:19 -0400)]
cslg: Add Composition Shift Least Greatest Atom
This simply add fourcc and dump function for the cslg Atom.
https://bugzilla.gnome.org/show_bug.cgi?id=751103
Nicolas Dufresne [Wed, 17 Jun 2015 19:18:38 +0000 (15:18 -0400)]
ctts_dump: Fix signess issues
It didn't bug, but use correct signess in traces. The number of
entries is unsigned while the offset can be signed according to
recent spec.
https://bugzilla.gnome.org/show_bug.cgi?id=751103
Nicolas Dufresne [Tue, 16 Jun 2015 21:48:08 +0000 (17:48 -0400)]
Automatic update of common submodule
From 6015d26 to f74b2df
Sebastian Dröge [Tue, 16 Jun 2015 09:43:39 +0000 (11:43 +0200)]
rtpjitterbuffer: gst_rtp_buffer_ext_timestamp() modifies its first argument, keep a copy around
Sebastian Dröge [Tue, 16 Jun 2015 08:30:34 +0000 (10:30 +0200)]
rtpjitterbuffer: Compare ext RTP times, not plain RTP time and ext RTP time when calculating elapsed time
Otherwise all RTP times after a wraparound would be considered as going
backwards, they will always be smaller than the ext RTP time.
Sebastian Dröge [Mon, 15 Jun 2015 17:25:12 +0000 (19:25 +0200)]
rtpbin: The default rtp-profile should be AVP, not AVPF
Sangkyu Park [Mon, 15 Jun 2015 05:32:21 +0000 (14:32 +0900)]
rtpjitterbuffer: Minor cleanup
1. Add Null check in 'free_item' function.
2. Fix a typing error of comment.
https://bugzilla.gnome.org/show_bug.cgi?id=750965
Nicolas Dufresne [Fri, 12 Jun 2015 21:44:51 +0000 (17:44 -0400)]
flmux: Make sure best_time is initialized
Sebastian Dröge [Fri, 12 Jun 2015 21:29:19 +0000 (23:29 +0200)]
rtpbin/session: Add new ntp-time-source property and deprecate use-pipeline-clock property
The new property allows to select the time source that should be used for the
NTP time in RTCP packets. By default it will continue to calculate the NTP
timestamp (1900 epoch) based on the realtime clock. Alternatively it can use
the UNIX timestamp (1970 epoch), the pipeline's running time or the pipeline's
clock time. The latter is especially useful for synchronizing multiple
receivers if all of them share the same clock.
If use-pipeline-clock is set to TRUE, it will override the ntp-time-source
setting and continue to use the running time plus 70 years. This is only kept
for backwards compatibility.
Thiago Santos [Tue, 7 Apr 2015 19:03:42 +0000 (16:03 -0300)]
tests: qtmux: test for muxing with DTS outside the segment
https://bugzilla.gnome.org/show_bug.cgi?id=740575
Nicolas Dufresne [Thu, 11 Jun 2015 21:26:49 +0000 (17:26 -0400)]
qtdemux: Adjust segment according to ctts offset
In presence of a CTTS, the segment start/stop must be offset so
the segment start/stop include the PTS. This is needed since the
PTS cannot be negative in this format. This fixes issues where the
running time of the first buffer isn't at the start.
https://bugzilla.gnome.org/show_bug.cgi?id=740575
Nicolas Dufresne [Sat, 4 Apr 2015 00:34:42 +0000 (20:34 -0400)]
qtmux: Handle DTS with negative running time
As QT works with duration, simply bring back first DTS to 0 and shift
forward the PTS of the same amount.
https://bugzilla.gnome.org/show_bug.cgi?id=740575
Nicolas Dufresne [Wed, 10 Jun 2015 22:15:52 +0000 (18:15 -0400)]
flvmux: Add negative runtime DTS support
This is done by using new feature of the CollectPad clip function
which sets the DTS as a gint64 in the collected data. It also simplify
the code a bit.
https://bugzilla.gnome.org/show_bug.cgi?id=740575
Sebastian Dröge [Fri, 12 Jun 2015 21:06:24 +0000 (23:06 +0200)]
rtpbin: Rename some variables and debug output to make more sense
Local and remote were mixed up in a few places, and the time we store here is
not UNIX time (1970 epoch), but NTP time (1900 epoch) in nanoseconds.
Ilya Konstantinov [Fri, 12 Jun 2015 16:21:10 +0000 (19:21 +0300)]
osxaudio: fix latency property query on RemoteIO
AudioUnitGetProperty would fail with kParamErr (-50) every time,
simply because size wasn't initialized.
Now it returns zero latency, but at least it doesn't fail.
https://bugzilla.gnome.org/show_bug.cgi?id=750868
Arun Raghavan [Tue, 7 Apr 2015 08:36:16 +0000 (14:06 +0530)]
pulsesrc: Fix mapping of latency parameters to buffer attributes
Jan Schmidt [Thu, 11 Jun 2015 15:56:37 +0000 (01:56 +1000)]
matroska-demux: Actually set detected 3D info into output caps.
Use the information read from the StereoMode info
to configure multiview-mode and multiview-flags in the
video caps.
Jan Schmidt [Thu, 11 Jun 2015 03:36:54 +0000 (13:36 +1000)]
splitmuxsink: Take released-but-not-yet-output bytes into account
When deciding whether it's time to switch to a new file, take into
account data that's been released for pushing, but hasn't yet
been pushed - because downstream is slow or the threads haven't been
scheduled.
Fixes a race in the unit test and probably in practice - sometimes
failing to switch when it should for an extra GOP or two.
Also fix a problem in splitmuxsrc where playback sometimes
stalls at startup if types are found too quickly.
https://bugzilla.gnome.org/show_bug.cgi?id=750747
Thiago Santos [Thu, 11 Jun 2015 04:04:51 +0000 (01:04 -0300)]
atoms: remove custom gst_buffer_new function in favor of core version
Remove a custom specialized version of gst_buffer_new_wrapped by
using gst_buffer_new_wrapped_full inside a macro to simplify
parameters and give it a more meaningful name.
It is only used to create temporary buffers to have its data copied.
Thiago Santos [Thu, 11 Jun 2015 03:14:41 +0000 (00:14 -0300)]
atoms: simplify free form data atoms creation
Avoid creating an intermediary buffer or memory area just
to copy into an atom's data area.
Thiago Santos [Thu, 11 Jun 2015 01:27:27 +0000 (22:27 -0300)]
qtmux: add AC-3 muxing support
Adds AC-3 muxing support. It is defined for mp4 and 3gp formats.
One extra feature that was added was the ability to add extension
atoms after set_caps as the AC-3 extension atom needs some data
that has to be extracted from the stream itself and is not
present on caps.
Thiago Santos [Thu, 11 Jun 2015 01:36:59 +0000 (22:36 -0300)]
qtmux: remove unused type MP4S
Thiago Santos [Thu, 11 Jun 2015 01:29:01 +0000 (22:29 -0300)]
qtmux: remove duplicate attribute value set
It is also set a few lines below
Jan Schmidt [Wed, 10 Jun 2015 14:22:54 +0000 (00:22 +1000)]
matroska: Implement basic stereoscopic video support
Implement support for the packed video formats WebM
uses, not all the values that Matroska might use.
In practice, it's really hard to find any samples in the
wild of any.
Supported in both the muxer and demuxer.
Jan Schmidt [Tue, 9 Jun 2015 15:26:15 +0000 (01:26 +1000)]
qtdemux: Add basic support for MPEG-A stereoscopic video
The MPEG-A format provides an extension to the ISO base media
file format to store stereoscopic content encoded with different
codecs like H.264 and MPEG-4:2. The stereo video media information(svmi)
atom declares the presence and storage method for the video.
Stereo video information for MPEG-A can also be supplied through
the 'stvi' atom (ref: ISO/IEC_14496-12, ISO/IEC_23000-11), which
is not implemented in this patch.
Also missing is support for stereo video encoded as separate video tracks
for now.
Based on a patch by Sreerenj Balachandran <sreerenj.balachandran@intel.com>
https://bugzilla.gnome.org/show_bug.cgi?id=611157
Xavier Claessens [Tue, 2 Jun 2015 20:15:35 +0000 (16:15 -0400)]
souphttpsrc: Add tls-database property
https://bugzilla.gnome.org/show_bug.cgi?id=750298
Sebastian Dröge [Wed, 10 Jun 2015 12:33:50 +0000 (14:33 +0200)]
rtp: Use GST_BUFFER_PTS() instead of GST_BUFFER_TIMESTAMP()
The mix between all these in the RTP code is confusing, let's try to be
consistent.
Ilya Konstantinov [Wed, 10 Jun 2015 11:49:50 +0000 (14:49 +0300)]
rtpmanager: clarify negative lost packets in stats
Also:
- Move notes on units before field documentation.
- Unify documentation style.
https://bugzilla.gnome.org/show_bug.cgi?id=750653
Xavier Claessens [Wed, 10 Jun 2015 10:38:39 +0000 (06:38 -0400)]
souphttpsrc: fix getter of "ssl-use-system-ca-file"
https://bugzilla.gnome.org/show_bug.cgi?id=750298
Vineeth TM [Wed, 10 Jun 2015 00:49:47 +0000 (09:49 +0900)]
qtdemux: fix reverse playback
When performing seek, segment->start is being updated with desired_offset,
but in case of reverse playback segment->start should be 0 and
segment->stop should be updated with desired offset.
https://bugzilla.gnome.org/show_bug.cgi?id=750675
Philipp Zabel [Wed, 21 Jan 2015 17:09:03 +0000 (18:09 +0100)]
gstv4l2bufferpool: handle -EPIPE from DQBUF to signal EOS
The V4L2 decoder signals EOS by returning -EPIPE from DQBUF after the
last buffer.
https://bugzilla.gnome.org/show_bug.cgi?id=743338
Xavier Claessens [Sun, 7 Jun 2015 01:09:19 +0000 (21:09 -0400)]
rtspsrc: Add a GTlsInteraction property
It can be used for TLS client authentication.
https://bugzilla.gnome.org/show_bug.cgi?id=750471
Enrico Jorns [Fri, 9 Jan 2015 10:36:11 +0000 (11:36 +0100)]
v4l2: Allow scaling in the v4l2*convert element
This is inspired of videoscale and videoconvert elements.
https://bugzilla.gnome.org/show_bug.cgi?id=742917
Ilya Konstantinov [Tue, 9 Jun 2015 16:02:55 +0000 (19:02 +0300)]
rtpmanager: document units of stats and arguments
Also, minor spelling and style corrections.
https://bugzilla.gnome.org/show_bug.cgi?id=750653
Stefan Sauer [Tue, 9 Jun 2015 12:42:27 +0000 (14:42 +0200)]
cruft: add the obsolete tmpl dir to cruft-dirs
Edward Hervey [Tue, 9 Jun 2015 09:30:22 +0000 (11:30 +0200)]
Automatic update of common submodule
From d9a3353 to 6015d26
Edward Hervey [Tue, 9 Jun 2015 05:04:07 +0000 (07:04 +0200)]
Fix common version
Was accidently downgraded by
87a4884acd8655a6591d735a1d944ecb5ea3de16
Nicolas Dufresne [Mon, 8 Jun 2015 23:11:41 +0000 (19:11 -0400)]
v4l2: Also set colorimetry on output devices
This completes the code that set the colorimetry on output
device.
Nicolas Dufresne [Mon, 8 Jun 2015 23:10:34 +0000 (19:10 -0400)]
v4l2: Add missing SMTP240M matrix
This is missing in the doc, but was in the header.
Luis de Bethencourt [Mon, 8 Jun 2015 22:00:16 +0000 (23:00 +0100)]
goom: possible uninitialized variables warning
Build fails with the latest snapshot of gcc-4.9 because param1 and param2 might
possibly be used uninitialized. They are set depending on the cases of a switch
statement and the compiler sees this as not a complete guarantee.
Set them to 0 if the switch statement falls down to the default case.
https://bugzilla.gnome.org/show_bug.cgi?id=750566#c6
Nicolas Dufresne [Mon, 8 Jun 2015 21:24:38 +0000 (17:24 -0400)]
v4l2object: Fully implement colorimetry support
This fixes wrong mapping for sRGB as in GStreamer sRGB correctly
apply to RGB formats, while in V4L2 it's an alias for sYCC. Also
add support for the new quantization (range), ycbcr_encoding (matrix)
and xfer_func (transfer) enumeration.
Nicolas Dufresne [Mon, 8 Jun 2015 21:01:15 +0000 (17:01 -0400)]
v4l2: Update kernel headers to latest from media tree
This is the latest from media tree. This should enable more development
of the v4l2 elements. This includes new flags requires to fix draining
path in decoder, colorimetry and much more.
Stefan Sauer [Mon, 8 Jun 2015 21:07:55 +0000 (23:07 +0200)]
Automatic update of common submodule
From d37af32 to d9a3353
Chris Clayton [Mon, 8 Jun 2015 18:42:30 +0000 (19:42 +0100)]
rtpvp8depay: potential access beyond end of array
Compiling (with gcc-4.9-
20150603) produces an error because of an access beyond
the end of an array. This patch fixes the error by initializing the loop
control/array index variable (i) to 1 and returning i - 1 when a match is found.
Also, because the values stored in the array increase in value as the index
increases, the >= test unnecessary, so it is removed.
Jan Schmidt [Wed, 29 Apr 2015 16:52:58 +0000 (02:52 +1000)]
splitmuxsink: Don't accumulate more than 2 GOPs
Don't allow large amounts of data to queue up - we only need
the GOP we're writing, and the GOP we're accumulating.
Jan Schmidt [Thu, 16 Apr 2015 00:44:49 +0000 (10:44 +1000)]
isomp4: fsync after sending updates in robust mode
Use the new GstBuffer SYNC_AFTER flag to trigger an fsync
after updating the moov or mdat atom, and after updating the free
atom to make it visible.
Jan Schmidt [Thu, 2 Apr 2015 13:57:20 +0000 (00:57 +1100)]
isomp4: Only set moov header into streamheader at EOS
Only update the moov header into the caps if it's the finalised
moov at EOS time. Avoids posting a bogus moov at startup and
repeated updates in robust-recording mode
Jan Schmidt [Thu, 2 Apr 2015 14:44:15 +0000 (01:44 +1100)]
tests: Update mp4 mux test for mdat placeholder change
The mp4 muxer now writes a place-holder mdat as a free
atom followed by a 0-byte mdat that covers the rest of the
file, making it possible to rewrite it as 64-bit, or leave
it as-is if nothing else is written afterward
Jan Schmidt [Wed, 1 Apr 2015 00:15:38 +0000 (11:15 +1100)]
isomp4: Implement robust muxing using ping-pong strategy
Implement a robust recording mode, where the output
file is always in a playable state, seeking and rewriting
the moov header at a configurable interval. Rewriting
moov is done using reserved space at the start of
the file, and a ping-pong strategy where the moov
is replaced atomically so it's never invalid.
Track when tags have actually changed, and don't write them into
the moov unless they've changed. Clear any existing tags when
re-writing them, so we can do progressive moov updating in robust
recording mode.
Write placeholder mdat as a free atom plus a 32-bit mdat
with '0' size, which means "rest of the file" in the spec.
Re-write it later to a full 64-bit extended size atom if needed.
Jan Schmidt [Tue, 31 Mar 2015 13:58:52 +0000 (00:58 +1100)]
isomp4: Update edit list when re-writing moov
Correctly update any edit lists each time the moov is recalculated,
updating existing table entries if they already exist instead of just
adding new ones.
Jan Schmidt [Tue, 7 Apr 2015 15:41:18 +0000 (01:41 +1000)]
isomp4: Remove an extra bracket in a comment.
Jan Schmidt [Thu, 19 Mar 2015 09:29:44 +0000 (20:29 +1100)]
splitmuxsrc: Protect total_duration state variable with the object lock.
Prevent deadlocks from downstream querying duration from the streaming thread.
Stefan Sauer [Sun, 7 Jun 2015 21:06:20 +0000 (23:06 +0200)]
Automatic update of common submodule
From 21ba2e5 to d37af32
Luis de Bethencourt [Sun, 7 Jun 2015 18:24:20 +0000 (19:24 +0100)]
goom: clean dereferences of private structure
https://bugzilla.gnome.org/show_bug.cgi?id=742875
Luis de Bethencourt [Sun, 7 Jun 2015 18:20:04 +0000 (19:20 +0100)]
goom2k1: clean dereferences of private structure
https://bugzilla.gnome.org/show_bug.cgi?id=742875
Stefan Sauer [Sun, 7 Jun 2015 15:32:01 +0000 (17:32 +0200)]
Automatic update of common submodule
From c408583 to 21ba2e5
Stefan Sauer [Sun, 7 Jun 2015 15:01:37 +0000 (17:01 +0200)]
docs: remove variables that we define in the snippet from common
This is syncing our Makefile.am with upstream gtkdoc.
Stefan Sauer [Sun, 7 Jun 2015 15:16:19 +0000 (17:16 +0200)]
Automatic update of common submodule
From d676993 to c408583
Sebastian Dröge [Sun, 7 Jun 2015 14:44:37 +0000 (16:44 +0200)]
Back to development
Sebastian Dröge [Sun, 7 Jun 2015 08:46:34 +0000 (10:46 +0200)]
Release 1.5.1
Sebastian Dröge [Sun, 7 Jun 2015 08:38:28 +0000 (10:38 +0200)]
Update .po files
Sebastian Dröge [Sun, 7 Jun 2015 08:32:38 +0000 (10:32 +0200)]
rtpsession: Override the SSRC from the packets' SSRC if none was given via caps or property
Sebastian Dröge [Sun, 7 Jun 2015 07:35:38 +0000 (09:35 +0200)]
po: Update translations
Nicolas Dufresne [Fri, 5 Jun 2015 19:32:10 +0000 (15:32 -0400)]
v4l2: Don't warn when optional CID are not implement
gst_v4l2_get_attributre() shall only be used when the CID is expected
to be supported. Otherwise, we get unwanted warning posted to the bus.
Sebastian Dröge [Fri, 5 Jun 2015 14:43:08 +0000 (16:43 +0200)]
rtpsession: Only suggest our internal ssrc if it's not a random one and was selected as internal ssrc
https://bugzilla.gnome.org/show_bug.cgi?id=749581
Vineeth TM [Thu, 4 Jun 2015 05:18:01 +0000 (14:18 +0900)]
interleave: error when channel-positions-from-input=False
self->channels is being incremented only when
channel-positions-from-input is set as TRUE. So in case of FALSE
self->func is not set and hence creating assertion error.
Hence removing the condition to increment self->channels.
https://bugzilla.gnome.org/show_bug.cgi?id=744211
Sebastian Dröge [Fri, 5 Jun 2015 08:33:11 +0000 (10:33 +0200)]
rtpjitterbuffer: Add support for receiving reduced size RTCP
It worked before but gave warnings, now we just ignore RTCP
packets that don't start with a SR. As all we're interested
in here are SRs.
Jose Antonio Santos Cadenas [Wed, 3 Jun 2015 10:22:42 +0000 (12:22 +0200)]
rtpssrcdemux: Add support for reduce size rtcp
According to RFC 5506, reduce size packages can be sent, this
packages may not be compound, so we need to add support for
getting ssrc from other types of packages.
https://bugzilla.gnome.org/show_bug.cgi?id=750327
Jose Antonio Santos Cadenas [Wed, 3 Jun 2015 11:14:44 +0000 (13:14 +0200)]
rtpsession: Add support for receiving reduced size rtcp
See RFC 5506
https://bugzilla.gnome.org/show_bug.cgi?id=750332
Sebastian Dröge [Thu, 4 Jun 2015 14:09:41 +0000 (16:09 +0200)]
aacparse: Add support for channel configurations 11, 12 and 14 and 7 actually has 8 channels
ISO/IEC 14496-3:2009/PDAM 4 added 11, 12 and 14.
Nicolas Dufresne [Wed, 3 Jun 2015 12:57:57 +0000 (08:57 -0400)]
asteriskh263: Un-rank clashing depayloader
This depayloader clash with the standard one for H263p. It produces an
H263p stream with a modified header. It uses encoding-name that is the
same as H263p (H263-1998) though the resulting ES is not decodable or
parsable in GStreamer, making it unsuable in dynamic pipeline. This
patch unrank this specialized depayloader since it can only be used in
custom pipeline.
https://bugzilla.gnome.org/show_bug.cgi?id=739935
Luis de Bethencourt [Tue, 2 Jun 2015 17:09:48 +0000 (18:09 +0100)]
goom2k1: remove variables not needed anymore
https://bugzilla.gnome.org/show_bug.cgi?id=742875
Luis de Bethencourt [Tue, 2 Jun 2015 16:52:46 +0000 (17:52 +0100)]
goom2k1: rebase to use the audiovisualizer class
Rebase to have goom2k1 using the common GstAudioVisualizer class
https://bugzilla.gnome.org/show_bug.cgi?id=742875
Luis de Bethencourt [Tue, 2 Jun 2015 16:29:36 +0000 (17:29 +0100)]
goom: rebase to use the audiovisualizer class
Edward Hervey [Tue, 2 Jun 2015 14:27:24 +0000 (16:27 +0200)]
check: Use GST_CHECK_MAIN () macro everywhere
Makes source code smaller, and ensures we go through common initialization
path (like the one that sets up XML unit test output ...)
Sebastian Dröge [Tue, 26 May 2015 12:47:31 +0000 (14:47 +0200)]
rtpsession: Only schedule a timer when we actually have to send RTCP
Otherwise we will have 10s-100s of thread wakeups in feedback profiles, create
RTCP packets, etc. just to suppress them in 99% of the cases (i.e. if no
feedback is actually pending and no regular RTCP has to be sent).
This improves CPU usage and battery life quite a lot.
https://bugzilla.gnome.org/show_bug.cgi?id=746543
Sebastian Dröge [Fri, 22 May 2015 10:44:03 +0000 (13:44 +0300)]
rtpsession: Remove useless goto
https://bugzilla.gnome.org/show_bug.cgi?id=746543
Sebastian Dröge [Thu, 21 May 2015 09:54:47 +0000 (12:54 +0300)]
examples: Set RTP profile to AVPF for rtpaux examples
https://bugzilla.gnome.org/show_bug.cgi?id=746543
Sebastian Dröge [Mon, 4 May 2015 14:41:50 +0000 (16:41 +0200)]
rtspsrc: Set RTP profile on the rtpsession objects
https://bugzilla.gnome.org/show_bug.cgi?id=746543
Sebastian Dröge [Thu, 21 May 2015 11:13:56 +0000 (14:13 +0300)]
rtpbin: Add rtp-profile property for setting the default profile of newly created sessions
https://bugzilla.gnome.org/show_bug.cgi?id=746543
Sebastian Dröge [Mon, 4 May 2015 09:51:41 +0000 (11:51 +0200)]
rtpsession: Only put RRs and full SDES into regular RTCP packets
If we may suppress the packet due to the rules of RFC4585 (i.e. when
below the t-rr-int), we can send a smaller RTCP packet without RRs
and full SDES. In theory we could even send a minimal RTCP packet
according to RFC5506, but we don't support that yet.
https://bugzilla.gnome.org/show_bug.cgi?id=746543
Sebastian Dröge [Mon, 4 May 2015 11:51:50 +0000 (13:51 +0200)]
rtpsession: Keep track of tp/tn and t_rr_last separately
Otherwise we can't properly schedule RTCP in feedback profiles as we need to
distinguish the time when we last checked for sending RTCP (tp) but might have
suppressed it, and the time when we last actually sent a non-early RTCP
packet.
This together with the other changes should now properly implement RTCP
scheduling according to RFC4585, and especially allow us to send feedback
packets a lot if needed but only send regular RTCP packets every once in a
while.
https://bugzilla.gnome.org/show_bug.cgi?id=746543
Sebastian Dröge [Mon, 4 May 2015 09:42:08 +0000 (11:42 +0200)]
rtpsession: Add property for selecting RTP profile (AVP/AVPF/etc)
And modify our RTCP scheduling algorithm accordingly. We now can send more
RTCP packets if needed for feedback, but will throttle full RTCP packets by
rtcp-min-interval (t-rr-int from RFC4585).
In non-feedback mode, rtcp-min-interval is Tmin from RFC3550, which is
statically set to 1s or 0s by RFC4585. Tmin defines how often we should
send RTCP packets at most.
https://bugzilla.gnome.org/show_bug.cgi?id=746543
Olivier Crête [Sat, 30 May 2015 21:41:05 +0000 (17:41 -0400)]
mulawdec: Let baseclass estimate bitrate
This makes playback directly from a file work with the right caps.
Tim-Philipp Müller [Wed, 27 May 2015 15:31:23 +0000 (16:31 +0100)]
dynudpsink: keep GCancellable fd around instead of re-creating it constantly
And create it only when starting the element.
Tim-Philipp Müller [Wed, 27 May 2015 14:55:56 +0000 (15:55 +0100)]
udpsink, multiudpsink: keep GCancellable fd around instead of re-creating it constantly
Otherwise we constantly create/close event file descriptors,
every time we call g_socket_condition_timed_wait() or
g_socket_send_message(s)(), i.e. a lot. Which is not
particularly good for performance.
Can't create GCancellable in ::start() here because it's used
in client_new() which may be called via the add-client action
signal which may be called before the element is up and running.
Tim-Philipp Müller [Tue, 19 May 2015 17:13:16 +0000 (18:13 +0100)]
udpsrc: keep GCancellable fd around instead of re-creating it constantly
Otherwise we constantly create/close event file descriptors,
every single time we call g_socket_condition_timed_wait() or
g_socket_receive_message(), i.e. twice per packet received!
This was not particularly good for performance.
Also only create GCancellable on start-up.
Luis de Bethencourt [Tue, 26 May 2015 14:33:37 +0000 (15:33 +0100)]
matroska: overwritten value assignment
curpos is set and immediately after, set again. Remove the redundant
assignment.
https://bugzilla.gnome.org/show_bug.cgi?id=749909
Tim-Philipp Müller [Sat, 23 May 2015 12:47:17 +0000 (13:47 +0100)]
rtpvrawdepay: don't shadow existing outbuf variable
And fix unref of the wrong one which will contain NULL
in an error code path.
Tim-Philipp Müller [Sat, 23 May 2015 12:23:22 +0000 (13:23 +0100)]
rtpvrawdepay: map/unmap output frame only once, not for every input packet
Map output buffer after creating it and keep it mapped
until we're done with it instead of mapping/unmapping
it for every single input buffer.
Thiago Santos [Mon, 25 May 2015 11:47:47 +0000 (08:47 -0300)]
qtdemux: remove fixme from 2006
It has been verified by use over time.