platform/upstream/gstreamer.git
7 years agoRelease 1.10.0
Sebastian Dröge [Tue, 1 Nov 2016 16:06:46 +0000 (18:06 +0200)]
Release 1.10.0

7 years agotests: try to avoid using the same ports in different tests
Tim-Philipp Müller [Fri, 28 Oct 2016 17:38:01 +0000 (18:38 +0100)]
tests: try to avoid using the same ports in different tests

Causes problems with client multicast tests otherwise if
tests are run in parallel.

https://bugzilla.gnome.org/show_bug.cgi?id=773640

7 years agotests: client: use fail_unless_equals_foo() for better failure reporting
Tim-Philipp Müller [Fri, 28 Oct 2016 16:50:59 +0000 (17:50 +0100)]
tests: client: use fail_unless_equals_foo() for better failure reporting

7 years agortsp-client: Session filter in unwatch session
Göran Jönsson [Mon, 26 Sep 2016 09:16:04 +0000 (11:16 +0200)]
rtsp-client: Session filter in unwatch session

Call session filter with filter_session_media as paramer in
client_unwatch_session if using drop_backlog = FALSE.

In client_unwatch_session its allowed to grow the watchs backlog.
If using drop_backlog = FALSE and the backlog is full it will cause
a deadlock when setting session media state to NULL
if the backlog is not allowed to grow.

https://bugzilla.gnome.org/show_bug.cgi?id=771983

7 years agomeson: add fallbacks for gst modules
Tim-Philipp Müller [Thu, 20 Oct 2016 20:40:18 +0000 (21:40 +0100)]
meson: add fallbacks for gst modules

For gst-all.

7 years agortsp-client: Fix factory leaking in find_media() in error cases
Nikita Bobkov [Wed, 14 Sep 2016 14:48:39 +0000 (17:48 +0300)]
rtsp-client: Fix factory leaking in find_media() in error cases

https://bugzilla.gnome.org/show_bug.cgi?id=771488

7 years agostream: Fix randomly missing streams from SDP with dynamic elements
Xavier Claessens [Thu, 6 Oct 2016 15:47:50 +0000 (11:47 -0400)]
stream: Fix randomly missing streams from SDP with dynamic elements

When using dynamic elements, gst_rtsp_stream_join_bin() is called from
"pad-added" signal. In that case priv->srcpad could already have its caps,
and they'll be sent to priv->send_src[0] pad. That means that when it
connects "notify::caps" signal, that pad could already have received its
caps and the signal won't be emitted anymore.

In that case priv->caps stay to NULL and when building the SDP that stream
gets ignored. Leading to missing video or audio when playing in client side.

https://bugzilla.gnome.org/show_bug.cgi?id=772478

7 years agomeson: update version
Tim-Philipp Müller [Fri, 30 Sep 2016 10:42:08 +0000 (11:42 +0100)]
meson: update version

7 years agoRelease 1.9.90
Sebastian Dröge [Fri, 30 Sep 2016 10:04:12 +0000 (13:04 +0300)]
Release 1.9.90

7 years agortsp-server: Hint that set_multicast_iface expects the name of the interface
Ian Jamison [Sat, 17 Sep 2016 12:17:19 +0000 (13:17 +0100)]
rtsp-server: Hint that set_multicast_iface expects the name of the interface

To prevent any possibly confusion with IPs or anything else.

https://bugzilla.gnome.org/show_bug.cgi?id=771530

7 years agortsp-media: Call g_free() instead of g_object_unref() on multicast-iface strings
Sebastian Dröge [Sun, 18 Sep 2016 13:58:55 +0000 (09:58 -0400)]
rtsp-media: Call g_free() instead of g_object_unref() on multicast-iface strings

https://bugzilla.gnome.org/show_bug.cgi?id=763000#c5

7 years agoconfigure: Depend on gstreamer 1.9.2.1
Sebastian Dröge [Wed, 14 Sep 2016 09:31:15 +0000 (11:31 +0200)]
configure: Depend on gstreamer 1.9.2.1

7 years agoAutomatic update of common submodule
Jan Schmidt [Sat, 10 Sep 2016 10:52:31 +0000 (20:52 +1000)]
Automatic update of common submodule

From b18d820 to f980fd9

7 years agoAutomatic update of common submodule
Jan Schmidt [Fri, 9 Sep 2016 23:58:31 +0000 (09:58 +1000)]
Automatic update of common submodule

From 6f2d209 to b18d820

7 years agortsp-stream: Remove unused _locked() variant of a function
Sebastian Dröge [Wed, 7 Sep 2016 15:44:34 +0000 (18:44 +0300)]
rtsp-stream: Remove unused _locked() variant of a function

It was added during refactoring.

7 years agostream: cosmetic cleanup
Xavier Claessens [Wed, 7 Sep 2016 14:21:09 +0000 (10:21 -0400)]
stream: cosmetic cleanup

https://bugzilla.gnome.org/show_bug.cgi?id=766612

7 years agostream: Compare IP addresses case insensitive in more places
Xavier Claessens [Wed, 7 Sep 2016 14:16:19 +0000 (10:16 -0400)]
stream: Compare IP addresses case insensitive in more places

https://bugzilla.gnome.org/show_bug.cgi?id=766612

7 years agostream: Fix leaked joined_bin
Xavier Claessens [Wed, 7 Sep 2016 14:12:18 +0000 (10:12 -0400)]
stream: Fix leaked joined_bin

There is no need to keep a strong ref on it, and _leave_bin() was
setting it to NULL before calling g_clear_object() so it was leaked.

https://bugzilla.gnome.org/show_bug.cgi?id=766612

7 years agortsp-stream: Compare IP address strings case insensitive
Sebastian Dröge [Tue, 6 Sep 2016 16:15:23 +0000 (19:15 +0300)]
rtsp-stream: Compare IP address strings case insensitive

Otherwise IPv6 addresses might fail this comparision.

7 years agortsp-stream: Bind multicast sockets to ANY as before
Sebastian Dröge [Tue, 6 Sep 2016 16:10:21 +0000 (19:10 +0300)]
rtsp-stream: Bind multicast sockets to ANY as before

https://bugzilla.gnome.org/show_bug.cgi?id=766612#c48

7 years agortsp-session: Fix segfault when doing keep-alive after removing the session
Kseniia [Mon, 5 Sep 2016 15:31:36 +0000 (18:31 +0300)]
rtsp-session: Fix segfault when doing keep-alive after removing the session

If keep-alive happens after removing the session but before finalizing the
stream transport, we would segfault.

https://bugzilla.gnome.org/show_bug.cgi?id=750544

7 years agortsp-stream: Always create multicast UDP elements if the protocol flag is set
Sebastian Dröge [Mon, 5 Sep 2016 15:04:50 +0000 (18:04 +0300)]
rtsp-stream: Always create multicast UDP elements if the protocol flag is set

Adding them later will cause deadlocks due to
1) pre-rolling and staying in PAUSED with the unicast/TCP sinks
2) adding the multicast sink
3) waiting for it to get data to preroll again

3) never happens because the queues after the tee are full.

7 years agortsp-stream: Fix up various multicast related issues
Sebastian Dröge [Mon, 5 Sep 2016 13:32:57 +0000 (16:32 +0300)]
rtsp-stream: Fix up various multicast related issues

7 years agotests: Fix compilation
Sebastian Dröge [Mon, 5 Sep 2016 10:40:59 +0000 (13:40 +0300)]
tests: Fix compilation

7 years agostream: revert back to create udpsrc/udpsink on DESCRIBE for unicast
Xavier Claessens [Thu, 28 Jul 2016 19:33:05 +0000 (15:33 -0400)]
stream: revert back to create udpsrc/udpsink on DESCRIBE for unicast

This is basically reverting changes introduced in commit f62a9a7,
because it was introducing various regressions:

- It introduces a leak of udpsrc elements that got wrongly fixed by adding
  an hash table in commit cba045e. We should have at most 4 udpsrc for unicast:
  ipv4/ipv6, rtp/rtcp. They can be reused for all unicast clients.
- If a mcast client connects, it creates a new socket in SETUP to try to respect
  the destination/port given by the client in the transport, and overrides the
  socket already set on the udpsink element. That means that if we already had a
  client connected, the source address on the udp packets it receives suddenly
  changes.
- If a 2nd mcast client connects, the destination/port in its transport is
  ignored but its transport wasn't updated.

What this patch does:

- Revert back to create udpsrc/udpsink for unicast clients on DESCRIBE.
- Always have a tee+queue when udp is enabled. This could be optimized
  again in a later patch, but is more complicated. If no unicast clients
  connects then those elements are useless, this could be also optimized
  in a later patch.
- When mcast transport is added, it creates a new set of udpsrc/udpsink,
  seperated from those for unicast clients. Since we already support only
  one mcast address, we also create only one set of elements.

https://bugzilla.gnome.org/show_bug.cgi?id=766612

7 years agostream: factor our plug_src function
Xavier Claessens [Thu, 28 Jul 2016 19:20:31 +0000 (15:20 -0400)]
stream: factor our plug_src function

https://bugzilla.gnome.org/show_bug.cgi?id=766612

7 years agostream: factor out plug_sink function
Xavier Claessens [Fri, 22 Jul 2016 01:46:16 +0000 (21:46 -0400)]
stream: factor out plug_sink function

https://bugzilla.gnome.org/show_bug.cgi?id=766612

7 years agostream: small documentation clarification
Xavier Claessens [Thu, 21 Jul 2016 03:05:09 +0000 (23:05 -0400)]
stream: small documentation clarification

https://bugzilla.gnome.org/show_bug.cgi?id=766612

7 years agostream: rename addr_v4/6 to mcast_addr_v4/6 for clarity
Xavier Claessens [Wed, 20 Jul 2016 19:35:44 +0000 (15:35 -0400)]
stream: rename addr_v4/6 to mcast_addr_v4/6 for clarity

https://bugzilla.gnome.org/show_bug.cgi?id=766612

7 years agostream: Keep a ref on joined bin
Xavier Claessens [Thu, 14 Jul 2016 15:10:31 +0000 (11:10 -0400)]
stream: Keep a ref on joined bin

https://bugzilla.gnome.org/show_bug.cgi?id=766612

7 years agostream: code cleanup
Xavier Claessens [Wed, 20 Jul 2016 19:11:32 +0000 (15:11 -0400)]
stream: code cleanup

https://bugzilla.gnome.org/show_bug.cgi?id=766612

7 years agostream: small fix in error code path
Xavier Claessens [Thu, 21 Jul 2016 03:18:23 +0000 (23:18 -0400)]
stream: small fix in error code path

https://bugzilla.gnome.org/show_bug.cgi?id=766612

7 years agoRevert "rtsp-stream: Fix crash on cleanup with shared media and multiple udpsrc"
Xavier Claessens [Thu, 21 Jul 2016 00:09:57 +0000 (20:09 -0400)]
Revert "rtsp-stream: Fix crash on cleanup with shared media and multiple udpsrc"

This partly reverts commit cba045e1b19fad6e689e10206f57903e15f1229a,
but keeps unit tests.

https://bugzilla.gnome.org/show_bug.cgi?id=766612

7 years agoBack to development
Sebastian Dröge [Thu, 1 Sep 2016 09:33:00 +0000 (12:33 +0300)]
Back to development

7 years agoRelease 1.9.2
Sebastian Dröge [Thu, 1 Sep 2016 09:32:51 +0000 (12:32 +0300)]
Release 1.9.2

7 years agoAdd support for Meson as alternative/parallel build system
Tim-Philipp Müller [Wed, 27 Jan 2016 01:03:52 +0000 (01:03 +0000)]
Add support for Meson as alternative/parallel build system

https://github.com/mesonbuild/meson

7 years agobuild: silence error about pthread for 'make check' in osx
Josep Torra [Fri, 26 Aug 2016 19:56:13 +0000 (21:56 +0200)]
build: silence error about pthread for 'make check' in osx

Fixes "clang: error: argument unused during compilation: '-pthread'"

7 years agortsp-client: Fix leaking of media in error cases
Nikita Bobkov [Fri, 25 Sep 2015 15:04:00 +0000 (15:04 +0000)]
rtsp-client: Fix leaking of media in error cases

With additional fixes by Kseniya Vasilchuk <vasilchukkseniia@gmail.com>
and myself to make the media refcounting a bit easier to follow.

https://bugzilla.gnome.org/show_bug.cgi?id=755632

7 years agortsp-client: Fix leaking of session in error cases
Sebastian Dröge [Tue, 2 Aug 2016 12:08:22 +0000 (15:08 +0300)]
rtsp-client: Fix leaking of session in error cases

https://bugzilla.gnome.org/show_bug.cgi?id=755632

7 years agoAutomatic update of common submodule
Stefan Sauer [Mon, 11 Jul 2016 19:16:04 +0000 (21:16 +0200)]
Automatic update of common submodule

From f363b32 to f49c55e

7 years agoBack to development
Sebastian Dröge [Wed, 6 Jul 2016 10:51:15 +0000 (13:51 +0300)]
Back to development

7 years agoRelease 1.9.1
Sebastian Dröge [Wed, 6 Jul 2016 10:28:12 +0000 (13:28 +0300)]
Release 1.9.1

7 years agoconfigure: Need to add -DGST_STATIC_COMPILATION when building only statically
Nirbheek Chauhan [Thu, 23 Jun 2016 20:32:20 +0000 (02:02 +0530)]
configure: Need to add -DGST_STATIC_COMPILATION when building only statically

https://bugzilla.gnome.org/show_bug.cgi?id=767463

7 years agoAutomatic update of common submodule
Nicolas Dufresne [Tue, 21 Jun 2016 15:49:02 +0000 (11:49 -0400)]
Automatic update of common submodule

From ac2f647 to f363b32

7 years agosdp: add rollover counters for all sender SSRC
Aleix Conchillo Flaqué [Fri, 15 Apr 2016 05:56:11 +0000 (22:56 -0700)]
sdp: add rollover counters for all sender SSRC

We add different crypto sessions in MIKEY, one for each sender
SSRC. Currently, all of them will have the same security policy, 0.

The rollover counters are obtained from the srtpenc element using the
"stats" property.

https://bugzilla.gnome.org/show_bug.cgi?id=730539

8 years agodocs: fix some typos
Tim-Philipp Müller [Tue, 7 Jun 2016 19:44:42 +0000 (20:44 +0100)]
docs: fix some typos

8 years agog-i: pass compiler env to g-ir-scanner
Tim-Philipp Müller [Wed, 25 May 2016 09:28:43 +0000 (10:28 +0100)]
g-i: pass compiler env to g-ir-scanner

It's what introspection.mak does as well. Should
fix spurious build failures on gnome-continuous
(caused by g-ir-scanner getting compiler details
via python which is broken in some environments
so passing the compiler details bypasses that).

8 years agortsp-session: RFC2326 does not allow a space between ; and timeout in the Session...
Ian [Wed, 18 May 2016 15:48:44 +0000 (16:48 +0100)]
rtsp-session: RFC2326 does not allow a space between ; and timeout in the Session header

This works with rtspsrc and live555, but fails with e.g. ffmpeg.

https://bugzilla.gnome.org/show_bug.cgi?id=766619

8 years agortspclientsink: Check return value of sscanf
Edward Hervey [Mon, 7 Mar 2016 13:48:38 +0000 (14:48 +0100)]
rtspclientsink: Check return value of sscanf

And just make sure we always have 0/0 if we have an error

CID #1352031

8 years agortsp-stream: Fix crash on cleanup with shared media and multiple udpsrc
Jake Foytik [Mon, 25 Apr 2016 12:55:25 +0000 (08:55 -0400)]
rtsp-stream: Fix crash on cleanup with shared media and multiple udpsrc

 - Unicast udpsrcs are now managed in a hash table. This allows for proper cleanup in with shared streams and fixes a memory leak.
 - Unicast udpsrcs are now properly cleaned up when shared connections exit. See the update_transport() function.
 - Create unit test for shared media.

https://bugzilla.gnome.org/show_bug.cgi?id=764744

8 years agortsp-stream: Always bind to ANY when address is a multicast address and not only...
Sebastian Dröge [Mon, 11 Apr 2016 07:55:23 +0000 (10:55 +0300)]
rtsp-stream: Always bind to ANY when address is a multicast address and not only on Windows

For IPv6 addresses, binding to a multicast group does not work on Linux
either. Always bind to ANY and then later join the multicast group.

https://bugzilla.gnome.org/show_bug.cgi?id=764679

8 years agoAutomatic update of common submodule
Julien Isorce [Thu, 14 Apr 2016 09:05:02 +0000 (10:05 +0100)]
Automatic update of common submodule

From 6f2d209 to ac2f647

8 years agortsp-thread-pool: explained why GSource is a part of ThreadImpl
Patricia Muscalu [Wed, 6 Apr 2016 08:09:46 +0000 (10:09 +0200)]
rtsp-thread-pool: explained why GSource is a part of ThreadImpl

Clarified why it is necessary to add source information to
GstRTSPThreadImpl. See the reported bug in GLib:
https://bugzilla.gnome.org/show_bug.cgi?id=720186
for more information.

https://bugzilla.gnome.org/show_bug.cgi?id=761702

8 years agoexamples: Clean up CFLAGS/LDADD even more
Sebastian Dröge [Mon, 4 Apr 2016 09:58:38 +0000 (12:58 +0300)]
examples: Clean up CFLAGS/LDADD even more

The internal .la should come first and is part of LDADD, as is
GST_CFLAGS/LIBS.

8 years agoexamples: Clean up CFLAGS/LDADD to link with the correct versions of all libraries
Sebastian Dröge [Mon, 4 Apr 2016 09:39:39 +0000 (12:39 +0300)]
examples: Clean up CFLAGS/LDADD to link with the correct versions of all libraries

8 years agortsp-server: Use $(GST_NET_LIBS) / $(GST_NET_CFLAGS)
Sebastian Dröge [Sun, 3 Apr 2016 09:06:29 +0000 (12:06 +0300)]
rtsp-server: Use $(GST_NET_LIBS) / $(GST_NET_CFLAGS)

8 years agortsp-server: Implement clock signalling according to RFC7273
Sebastian Dröge [Wed, 30 Dec 2015 16:39:05 +0000 (18:39 +0200)]
rtsp-server: Implement clock signalling according to RFC7273

For NTP and PTP clocks we signal the actual clock that is used and signal
the direct media clock offset.

For all other clocks we at least signal that it's the local sender clock.

This allows receivers to know which clock was used to generate the media and
its RTP timestamps. Receivers can then implement network synchronization,
either absolute or at least relative by getting the sender clock rate directly
via NTP/PTP instead of estimating it from RTP timestamps and packet receive
times.

https://bugzilla.gnome.org/show_bug.cgi?id=760005

8 years agortspclientsink: Add support for setting the multicast interface
Sebastian Dröge [Wed, 2 Mar 2016 17:42:58 +0000 (19:42 +0200)]
rtspclientsink: Add support for setting the multicast interface

https://bugzilla.gnome.org/show_bug.cgi?id=763000

8 years agortsp-media: Add support for setting the multicast interface
Sebastian Dröge [Wed, 2 Mar 2016 17:42:13 +0000 (19:42 +0200)]
rtsp-media: Add support for setting the multicast interface

https://bugzilla.gnome.org/show_bug.cgi?id=763000

8 years agortspclientsink: use new gst_element_class_add_static_pad_template()
Vineeth TM [Sun, 6 Mar 2016 23:50:01 +0000 (08:50 +0900)]
rtspclientsink: use new gst_element_class_add_static_pad_template()

https://bugzilla.gnome.org/show_bug.cgi?id=763196

8 years agoBack to development
Sebastian Dröge [Thu, 24 Mar 2016 11:33:43 +0000 (13:33 +0200)]
Back to development

8 years agoRelease 1.8.0
Sebastian Dröge [Thu, 24 Mar 2016 11:00:35 +0000 (13:00 +0200)]
Release 1.8.0

8 years agortsp-stream: Don't set the state of the appsrc from PLAYING to PAUSED again during...
Sebastian Dröge [Wed, 16 Mar 2016 21:35:09 +0000 (23:35 +0200)]
rtsp-stream: Don't set the state of the appsrc from PLAYING to PAUSED again during setup

This would get us NO_PREROLL in the bin again and break seeking.
Thanks to Carlos Rafael Giani for helping to debug this!

https://bugzilla.gnome.org/show_bug.cgi?id=740509

8 years agoRelease 1.7.91
Sebastian Dröge [Tue, 15 Mar 2016 10:26:13 +0000 (12:26 +0200)]
Release 1.7.91

8 years agortsp-stream: Ensure that the pipeline is live and later-added udpsrcs are syncing...
Sebastian Dröge [Thu, 10 Mar 2016 11:54:38 +0000 (13:54 +0200)]
rtsp-stream: Ensure that the pipeline is live and later-added udpsrcs are syncing the state with the parent bin

Without this, RECORD pipelines are broken because
a) we wait for ASYNC_DONE which never happens anymore because udpsrc would be
added later. Previously it was there earlier and due to NO_PREROLL caused the
pipeline to preroll immediately
b) the udpsrc for the pipeline is added later and never set to PLAYING state,
as the corresponding code previously was only for PLAY pipelines.

https://bugzilla.gnome.org/show_bug.cgi?id=763281

8 years agortsp-stream: Fix typo in the docstring
Jan Schmidt [Thu, 10 Mar 2016 14:22:54 +0000 (01:22 +1100)]
rtsp-stream: Fix typo in the docstring

gst_rtsp_stream_set_client_side -> gst_rtsp_stream_is_client_side

8 years agortsp-stream: Disable multicast loopback for all our sockets
Sebastian Dröge [Sat, 5 Mar 2016 08:52:11 +0000 (10:52 +0200)]
rtsp-stream: Disable multicast loopback for all our sockets

On Windows this is a receiver-side setting, on Linux a sender-side setting. As
we provide a socket ourselves to udpsrc, udpsrc is never setting the multicast
loopback setting on the socket... while udpsink does which unfortunately has
no effect here on Windows but on Linux.

https://bugzilla.gnome.org/show_bug.cgi?id=757488

8 years agostream tests: added new tests
Patricia Muscalu [Thu, 3 Mar 2016 14:07:06 +0000 (15:07 +0100)]
stream tests: added new tests

Test a case when the address pool only contains multicast addresses
and the client is requesting unicast udp.
Added tests for multicast ports allocation.

https://bugzilla.gnome.org/show_bug.cgi?id=757488

8 years agortsp-stream: Only bind multicast sockets to ANY on Windows
Sebastian Dröge [Fri, 4 Mar 2016 11:51:12 +0000 (13:51 +0200)]
rtsp-stream: Only bind multicast sockets to ANY on Windows

On Linux it is still needed to bind to the multicast address
to filter out random other packets, while on Windows binding
to multicast addresses just fails.

8 years agortsp-stream: Only use the address pool for unicast UDP if it contains unicast addresses
Sebastian Dröge [Thu, 3 Mar 2016 08:41:51 +0000 (10:41 +0200)]
rtsp-stream: Only use the address pool for unicast UDP if it contains unicast addresses

Otherwise we fail to allocate UDP ports if the pool only contains multicast
addresses, which is something that used to work before. For unicast addresses
if the pool contains none, we just allocate them as if there is no pool at
all.

https://bugzilla.gnome.org/show_bug.cgi?id=757488

8 years agortsp-server: Fix indentation
Sebastian Dröge [Wed, 2 Mar 2016 09:48:49 +0000 (11:48 +0200)]
rtsp-server: Fix indentation

8 years agortsp-stream: Don't bind the sockets to multicast addresses
Sebastian Dröge [Wed, 2 Mar 2016 09:47:47 +0000 (11:47 +0200)]
rtsp-stream: Don't bind the sockets to multicast addresses

This works on Linux but fails completely on Windows. You're supposed
to bind to ANY and then join the multicast group.

https://bugzilla.gnome.org/show_bug.cgi?id=757488

8 years agoRelease 1.7.90
Sebastian Dröge [Tue, 1 Mar 2016 17:00:45 +0000 (19:00 +0200)]
Release 1.7.90

8 years agoAutomatic update of common submodule
Sebastian Dröge [Fri, 26 Feb 2016 10:42:51 +0000 (12:42 +0200)]
Automatic update of common submodule

From b64f03f to 6f2d209

8 years agortspsink: Fix some leaks in rtspclientsink and the unit test.
Jan Schmidt [Tue, 23 Feb 2016 13:10:52 +0000 (00:10 +1100)]
rtspsink: Fix some leaks in rtspclientsink and the unit test.

https://bugzilla.gnome.org/show_bug.cgi?id=762525

8 years agotests: unit test fixes
Patricia Muscalu [Tue, 23 Feb 2016 14:01:22 +0000 (15:01 +0100)]
tests: unit test fixes

Removed port allocation test from the media suite.
The port allocation failure is now in the stream suite.
rtspserver:
Make sure that the media is suspended after the DESCRIBE request
before reconfiguring the UDP sinks.
rtspclientsink:
In the RECORD case we have to set async property to false
for the appsink element in the test in order to make sure
that the media pipeline doesn't hang in start_preroll().

https://bugzilla.gnome.org/show_bug.cgi?id=757488

8 years agortsp-stream: postpone UDP socket allocation until SETUP
Patricia Muscalu [Tue, 23 Feb 2016 13:59:32 +0000 (14:59 +0100)]
rtsp-stream: postpone UDP socket allocation until SETUP

Postpone the allocation of the UDP sockets until we know
what transport has been chosen by the client.
Both unicast and multicast UDP sources are created in one
function.

https://bugzilla.gnome.org/show_bug.cgi?id=757488

8 years agortsp-stream: postpone the creation of the UDP sources
Patricia Muscalu [Wed, 13 Jan 2016 10:29:35 +0000 (11:29 +0100)]
rtsp-stream: postpone the creation of the UDP sources

Code refactoring: allocate the UDP ports after the sender and
the reciver parts have been created.
We postpone the creation of the UDP sources until the UDP
ports have been allocated.

https://bugzilla.gnome.org/show_bug.cgi?id=757488

8 years agortsp-stream: added function for setting UDP sources to PLAYING state
Patricia Muscalu [Wed, 13 Jan 2016 09:55:40 +0000 (10:55 +0100)]
rtsp-stream: added function for setting UDP sources to PLAYING state

Code refactoring: Introduced a function for setting UDP sources
to PLAYING state.

https://bugzilla.gnome.org/show_bug.cgi?id=757488

8 years agortsp-stream: added function for creating and configuring UDP sources
Patricia Muscalu [Fri, 20 Nov 2015 14:34:43 +0000 (15:34 +0100)]
rtsp-stream: added function for creating and configuring UDP sources

Code refactoring: create and configure UDP sources in a separate function.

https://bugzilla.gnome.org/show_bug.cgi?id=757488

8 years agortsp-stream: added function for RTP/RTCP socket configuration
Patricia Muscalu [Fri, 20 Nov 2015 13:43:38 +0000 (14:43 +0100)]
rtsp-stream: added function for RTP/RTCP socket configuration

Code refactoring: configure RTP and RTCP sockets for UDP sinks
in a separate function.

https://bugzilla.gnome.org/show_bug.cgi?id=757488

8 years agortsp-stream: added function for creating and configuring UDP sinks
Patricia Muscalu [Fri, 20 Nov 2015 07:38:42 +0000 (08:38 +0100)]
rtsp-stream: added function for creating and configuring UDP sinks

Code refactoring: create and configure UDP sinks in a separate function.

https://bugzilla.gnome.org/show_bug.cgi?id=757488

8 years agortsp-stream: added helper function for creating the sender/receiver parts
Patricia Muscalu [Thu, 19 Nov 2015 13:09:25 +0000 (14:09 +0100)]
rtsp-stream: added helper function for creating the sender/receiver parts

Code refactoring: introduced helper function for creating
the receiver and the sender parts of the streaming pipeline.

https://bugzilla.gnome.org/show_bug.cgi?id=757488

8 years agoBack to development
Sebastian Dröge [Fri, 19 Feb 2016 10:38:42 +0000 (12:38 +0200)]
Back to development

8 years agoRelease 1.7.2
Sebastian Dröge [Fri, 19 Feb 2016 10:03:18 +0000 (12:03 +0200)]
Release 1.7.2

8 years agouninstalled.pc: add support for non libtool build systems
Julien Isorce [Thu, 18 Feb 2016 15:20:05 +0000 (15:20 +0000)]
uninstalled.pc: add support for non libtool build systems

Currently the .la path is provided which requires to use libtool as
mentioned in the GStreamer manual section-helloworld-compilerun.html.
It is fine as long as the application is built using libtool.

So currently it is not possible to compile a GStreamer application
within gst-uninstalled with CMake or other build system different
than autotools.

This patch allows to do the following in gst-uninstalled env:
gcc test.c -o test $(pkg-config --cflags --libs gstreamer-1.0 \
  gstreamer-rtsp-server-1.0)
Previously it required to prepend libtool --mode=link

https://bugzilla.gnome.org/show_bug.cgi?id=720778

8 years agortspclientsink: remove check for impossible condition
Luis de Bethencourt [Tue, 9 Feb 2016 10:34:22 +0000 (10:34 +0000)]
rtspclientsink: remove check for impossible condition

Goto error label checks stream to see if it needs to be unreferenced before
returning, but this goto jumps happens before the stream is ever set, so it
will always be NULL in this error label.

CID #1352034

8 years agortspclientsink: clean switch statements
Luis de Bethencourt [Mon, 8 Feb 2016 23:33:03 +0000 (23:33 +0000)]
rtspclientsink: clean switch statements

Coverity demands for fallthrough statements to be clearly commented,
to distinguish from accidental fall throughs. And it also needs all
cases to finish with a break, even if the break is never going to be
executed like in the case of a continue jump.

CID #1352039
CID #1352040

8 years agotests: extend the AM_TESTS_ENVIRONMENT from check.mak
Thiago Santos [Fri, 5 Feb 2016 23:03:01 +0000 (20:03 -0300)]
tests: extend the AM_TESTS_ENVIRONMENT from check.mak

To get the CK_DEFAULT_TIMEOUT defined for all tests

Also removes a 120 seconds timeout that was set as default
explicitly in this module

https://bugzilla.gnome.org/show_bug.cgi?id=761472

8 years agoAutomatic update of common submodule
Thiago Santos [Fri, 5 Feb 2016 21:11:41 +0000 (18:11 -0300)]
Automatic update of common submodule

From 86e4663 to b64f03f

8 years agortsp-media: fix state_lock not locked again when preroll fails
Steven Hoving [Tue, 2 Feb 2016 08:01:51 +0000 (09:01 +0100)]
rtsp-media: fix state_lock not locked again when preroll fails

https://bugzilla.gnome.org/show_bug.cgi?id=761399

8 years agoconfigure: Move plugin specific flags below all the others
Sebastian Dröge [Thu, 28 Jan 2016 21:05:56 +0000 (22:05 +0100)]
configure: Move plugin specific flags below all the others

They use some of the other flags, like $GST_ALL_LDFLAGS which is adding
-no-undefined. And -no-undefined is required on Windows to build DLLs.

8 years agortspclientsink: Simplify slightly using new -base API
Jan Schmidt [Wed, 27 Jan 2016 17:58:00 +0000 (04:58 +1100)]
rtspclientsink: Simplify slightly using new -base API

Use the new Mikey and SDP API in the base plugins libs
to simplify some code.

https://bugzilla.gnome.org/show_bug.cgi?id=758180

8 years agortspsink: Add rtspclientsink element
Jan Schmidt [Mon, 16 Nov 2015 14:12:28 +0000 (01:12 +1100)]
rtspsink: Add rtspclientsink element

Add an rtspclientsink element that accepts streams for which
there is a registered payloader and sends them to
an RTSP server using RECORD.

Sending is synchronised to the pipeline clock. Payload-types
are automatically selected. The 'new-payloader' signal is fired
for custom configuration of payloaders when they are created.

Can now stream a movie like this:

receiver:
  ./test-record "( decodebin name=depay0 ! videoconvert ! autovideosink \
       decodebin name=depay1 ! audioconvert ! autoaudiosink )"
sender:
  gst-launch-1.0 filesrc location=file-with-aac-and-h264.mp4 ! qtdemux name=d ! \
       queue ! aacparse ! rtspclientsink location=rtsp://127.0.0.1:8554/test name=s \

https://bugzilla.gnome.org/show_bug.cgi?id=758180

8 years agortsp-stream: Add functions for using rtsp-stream from the client
Jan Schmidt [Mon, 16 Nov 2015 14:12:28 +0000 (01:12 +1100)]
rtsp-stream: Add functions for using rtsp-stream from the client

Add a boolean to indicate that the rtsp-stream is running on the
'client' side of an RTSP connection, for sending streams via
RECORD. In that case, the roles of the client/server ports
in transport setup are swapped.

https://bugzilla.gnome.org/show_bug.cgi?id=758180

8 years agortsp-sdp: Add gst_rtsp_sdp_from_stream()
Jan Schmidt [Mon, 16 Nov 2015 14:12:28 +0000 (01:12 +1100)]
rtsp-sdp: Add gst_rtsp_sdp_from_stream()

A new function that adds info from a GstRTSPStream into an SDP message.

https://bugzilla.gnome.org/show_bug.cgi?id=758180

8 years agortsp-media: Fix mutex beeing unlocked while they should be locked
Steven Hoving [Thu, 28 Jan 2016 08:22:18 +0000 (09:22 +0100)]
rtsp-media: Fix mutex beeing unlocked while they should be locked

https://bugzilla.gnome.org/show_bug.cgi?id=761226

8 years agortsp-media-factory: add missing break in "clock" property setter
Tim-Philipp Müller [Fri, 15 Jan 2016 07:01:37 +0000 (07:01 +0000)]
rtsp-media-factory: add missing break in "clock" property setter

CID 1348453

8 years agortsp-stream: fixed assert during update transport
Srimanta Panda [Tue, 5 Jan 2016 12:10:36 +0000 (13:10 +0100)]
rtsp-stream: fixed assert during update transport

When RTSP server trying update transport during multicast, it throws an
assert. The assert is thrown because it is trying to get the parent of
an non-existing funnel element.

https://bugzilla.gnome.org/show_bug.cgi?id=760150

8 years agodocs: remove dummy function declarations with G_INLINE_FUNC for gtk-doc
Tim-Philipp Müller [Sun, 3 Jan 2016 17:26:31 +0000 (17:26 +0000)]
docs: remove dummy function declarations with G_INLINE_FUNC for gtk-doc

gtk-doc can handle static inline functions just fine these days,
there's no need for this stuff any more.