platform/upstream/gst-rtsp-server.git
13 years agortsp-server: add support for buffer lists
Wim Taymans [Wed, 29 Dec 2010 15:26:41 +0000 (16:26 +0100)]
rtsp-server: add support for buffer lists

Add support for sending bufferlists received from appsink.

Fixes #635832

13 years agomedia: make method to retrieve the play range
Wim Taymans [Tue, 28 Dec 2010 17:35:01 +0000 (18:35 +0100)]
media: make method to retrieve the play range

Make a method to retrieve the playback range so that we can conditionally create
a different range for the SDP and the PLAY requests.

13 years agomedia: add signal to notify of state changes
Wim Taymans [Tue, 28 Dec 2010 17:34:10 +0000 (18:34 +0100)]
media: add signal to notify of state changes

13 years agoclient: cleanup headers
Wim Taymans [Tue, 28 Dec 2010 17:31:26 +0000 (18:31 +0100)]
client: cleanup headers

13 years agoclient: fix typo
Wim Taymans [Tue, 28 Dec 2010 11:18:41 +0000 (12:18 +0100)]
client: fix typo

13 years agofactory-uri: add support for gstpay
Wim Taymans [Thu, 23 Dec 2010 17:53:01 +0000 (18:53 +0100)]
factory-uri: add support for gstpay

Add an option to prefer gstpay over decoder + raw payloader.

13 years agofactory-uri: rework the autoplugger.
Wim Taymans [Thu, 23 Dec 2010 14:58:14 +0000 (15:58 +0100)]
factory-uri: rework the autoplugger.

Rewrite the autoplugger a little so that it prefers to plug demuxers and parsers
before payloaders.

13 years agofactory-uri: use better factory filter
Wim Taymans [Tue, 21 Dec 2010 16:37:26 +0000 (17:37 +0100)]
factory-uri: use better factory filter

Make better payloader filter based on autoplug rank and RTP use case.

13 years agoAutomatic update of common submodule
Edward Hervey [Mon, 20 Dec 2010 16:48:41 +0000 (17:48 +0100)]
Automatic update of common submodule

From 169462a to 46445ad

13 years agoserver: set SO_REUSEADDR before bind
Wim Taymans [Sat, 18 Dec 2010 10:24:48 +0000 (11:24 +0100)]
server: set SO_REUSEADDR before bind

Set the SO_REUSEADDR _before_ bind() to make it actually work.

13 years agomedia: emit prepared signal when prepared
Wim Taymans [Mon, 13 Dec 2010 15:58:36 +0000 (16:58 +0100)]
media: emit prepared signal when prepared

Make a 'prepared' signal and emit it when we successfully prepared the element.
This signal can be used to configure the media object after it has been prepared
for streaming.

13 years agoAutomatic update of common submodule
Stefan Kost [Wed, 15 Dec 2010 12:58:00 +0000 (14:58 +0200)]
Automatic update of common submodule

From 011bcc8 to 169462a

13 years agopython an optional dependency
Andy Wingo [Mon, 13 Dec 2010 15:38:09 +0000 (16:38 +0100)]
python an optional dependency

* configure.ac: Move up valgrind and g-i checks. Make the python
  dependency optional, as it was before.

13 years agomedia: update range when active clients changed
Wim Taymans [Sun, 12 Dec 2010 14:48:47 +0000 (15:48 +0100)]
media: update range when active clients changed

When we changed the number of active clients, update the current range
information because we want the second client connecting to a shared resource
continue from where the stream currently.

13 years agofactory-uri: add colorspace and fix pt
Wim Taymans [Sun, 12 Dec 2010 03:06:41 +0000 (04:06 +0100)]
factory-uri: add colorspace and fix pt

Rework the way we pass data to the autoplugger.
When we have raw caps, plug a converter element to make pluggin to raw
payloaders more successful.
Make sure all dynamically plugged payloaders have a unique payload types.

13 years agoexample: add example of the uri factory
Wim Taymans [Sat, 11 Dec 2010 17:06:26 +0000 (18:06 +0100)]
example: add example of the uri factory

13 years agofactory-uri: add a factory to stream any URI
Wim Taymans [Sat, 11 Dec 2010 17:01:53 +0000 (18:01 +0100)]
factory-uri: add a factory to stream any URI

Make a factory that uses uridecodebin to decode any uri and autoplug a payloader
when we have one.

13 years agomedia: ignore spurious ASYNC_DONE messages
Wim Taymans [Sat, 11 Dec 2010 16:31:44 +0000 (17:31 +0100)]
media: ignore spurious ASYNC_DONE messages

When we are dynamically adding pads, the addition of the udpsrc elements will
trigger an ASYNC_DONE. We have to ignore this because we only want to react to
the real ASYNC_DONE when everything is prerolled.

13 years agomedia-factory: make lock macro
Wim Taymans [Sat, 11 Dec 2010 12:41:24 +0000 (13:41 +0100)]
media-factory: make lock macro

13 years agortsp-server: Remove unused variable and dead assignment
Edward Hervey [Sat, 11 Dec 2010 09:53:28 +0000 (10:53 +0100)]
rtsp-server: Remove unused variable and dead assignment

13 years agoexamples: Run gst-indent
Edward Hervey [Sat, 11 Dec 2010 09:49:30 +0000 (10:49 +0100)]
examples: Run gst-indent

13 years agortsp-server: Run gst-indent
Edward Hervey [Sat, 11 Dec 2010 09:48:42 +0000 (10:48 +0100)]
rtsp-server: Run gst-indent

Since it wasn't using the upstream common previously, there was no
indentation check before commiting.

13 years agortsp-server: Some more doc fixups
Edward Hervey [Sat, 11 Dec 2010 09:48:25 +0000 (10:48 +0100)]
rtsp-server: Some more doc fixups

13 years agoMakefile: Add cruft-cleaning support
Edward Hervey [Tue, 7 Dec 2010 17:56:03 +0000 (18:56 +0100)]
Makefile: Add cruft-cleaning support

13 years agodocs: Add gtk-doc build system
Edward Hervey [Tue, 7 Dec 2010 17:52:15 +0000 (18:52 +0100)]
docs: Add gtk-doc build system

13 years agoMakefile.am: Use standard GIR make behaviour
Edward Hervey [Tue, 7 Dec 2010 17:14:39 +0000 (18:14 +0100)]
Makefile.am: Use standard GIR make behaviour

13 years agoautogen/configure: Bring more in sync to standard gst module behaviour
Edward Hervey [Tue, 7 Dec 2010 17:14:22 +0000 (18:14 +0100)]
autogen/configure: Bring more in sync to standard gst module behaviour

13 years agoAdd common submodule
Edward Hervey [Wed, 1 Dec 2010 19:00:22 +0000 (20:00 +0100)]
Add common submodule

13 years agocommon: Remove static version
Edward Hervey [Wed, 1 Dec 2010 18:58:49 +0000 (19:58 +0100)]
common: Remove static version

13 years agoUpdate introspection.m4 to match usage
Bastien Nocera [Mon, 8 Nov 2010 17:04:00 +0000 (17:04 +0000)]
Update introspection.m4 to match usage

14 years agoREADME: update
Wim Taymans [Sat, 30 Oct 2010 11:26:12 +0000 (13:26 +0200)]
README: update

Remove old stuff from the README

14 years agoback to development
Wim Taymans [Mon, 11 Oct 2010 09:12:11 +0000 (11:12 +0200)]
back to development

14 years agorelease 0.10.7
Wim Taymans [Mon, 11 Oct 2010 09:05:40 +0000 (11:05 +0200)]
release 0.10.7

14 years agotest-ogg: remove parsers
Wim Taymans [Mon, 4 Oct 2010 15:16:40 +0000 (17:16 +0200)]
test-ogg: remove parsers

Remove the parsers, they are not needed anymore as oggdemux now outputs normal
buffers with timestamps. Using the parsers also seems to break things.

14 years agoUpdated Vala bindings
Sebastian Pölsterl [Thu, 23 Sep 2010 10:44:18 +0000 (12:44 +0200)]
Updated Vala bindings

14 years agoAdded initial gobject-introspection support
Sebastian Pölsterl [Wed, 22 Sep 2010 21:13:37 +0000 (23:13 +0200)]
Added initial gobject-introspection support

14 years agomedia-factory: don't use host for shared hash key
Wim Taymans [Thu, 23 Sep 2010 09:32:58 +0000 (11:32 +0200)]
media-factory: don't use host for shared hash key

When we generate the key to share made between connections, don't include the
host used to connect so that we can share media even if between clients that
connected with localhost and ones with the ip address.

14 years agobuild: fix distcheck
Tim-Philipp Müller [Wed, 22 Sep 2010 20:16:03 +0000 (21:16 +0100)]
build: fix distcheck

14 years agoUpdate Vala bindings
Sebastian Dröge [Wed, 22 Sep 2010 16:24:12 +0000 (18:24 +0200)]
Update Vala bindings

14 years agoFix configure checks and installation location for Vala bindings
Sebastian Dröge [Wed, 22 Sep 2010 16:12:50 +0000 (18:12 +0200)]
Fix configure checks and installation location for Vala bindings

Fixes bug #628676.

14 years agoback to development
Wim Taymans [Wed, 22 Sep 2010 14:32:30 +0000 (16:32 +0200)]
back to development

14 years agoconfigure: release 0.10.6
Wim Taymans [Wed, 22 Sep 2010 14:22:49 +0000 (16:22 +0200)]
configure: release 0.10.6

14 years agomedia: help the compiler a little
Wim Taymans [Wed, 22 Sep 2010 14:15:56 +0000 (16:15 +0200)]
media: help the compiler a little

14 years agomedia: cleanup media transport before freeing
Wim Taymans [Tue, 24 Aug 2010 14:47:30 +0000 (16:47 +0200)]
media: cleanup media transport before freeing

Cleanup the media transport data before freeing. In particular, remove the qdata
from the rtpsource object.

14 years agomedia-factory: add eos-shutdown property
Wim Taymans [Fri, 20 Aug 2010 16:17:08 +0000 (18:17 +0200)]
media-factory: add eos-shutdown property

Add an eos-shutdown property that will send an EOS to the pipeline before
shutting it down. This allows for nice cleanup in case of a muxer.

Fixes #625597

14 years agomedia: use multiudpsink send-duplicates when we can
Wim Taymans [Fri, 20 Aug 2010 13:58:39 +0000 (15:58 +0200)]
media: use multiudpsink send-duplicates when we can

If we have a new enough multiudpsink with the send-duplicates property, use this
instead of doing our own filtering. Our custom filtering code should eventually
be removed when we can depend on a released -good.

14 years agomedia: don't leak destinations
Wim Taymans [Fri, 20 Aug 2010 11:19:56 +0000 (13:19 +0200)]
media: don't leak destinations

Refactor and cleanup the destinations array when the stream is destroyed.

14 years agomedia: don't add udp addresses multiple times
Wim Taymans [Fri, 20 Aug 2010 11:09:12 +0000 (13:09 +0200)]
media: don't add udp addresses multiple times

Keep track of the udp addresses we added to udpsink and never add the same udp
destination twice. This avoids duplicate packets when using multicast.

14 years agoserver: disable use of SO_LINGER
Wim Taymans [Fri, 20 Aug 2010 08:18:34 +0000 (10:18 +0200)]
server: disable use of SO_LINGER

SO_LINGER cause the client to fail to receive a TEARDOWN message because the
server close()s the connection.

14 years agoserver: use 5 second linger period in SO_LINGER
Wim Taymans [Thu, 19 Aug 2010 16:52:47 +0000 (18:52 +0200)]
server: use 5 second linger period in SO_LINGER

Wait 5 seconds before clearing the send buffers and reseting the connection with
the client when we do a close. This should be enough time to get the message to
the client.

See #622757

14 years agoserver: use SO_LINGER
Robert Krakora [Mon, 16 Aug 2010 10:32:28 +0000 (12:32 +0200)]
server: use SO_LINGER

SO_LINGER on the socket will make sure that any pending data on the socket is
flushed ASAP and that the socket connection is reset. This makes sure that the
socket can be reused immediately.

Fixes 622757

14 years agoREADME: add blurb about shared media factories
Wim Taymans [Mon, 16 Aug 2010 10:24:50 +0000 (12:24 +0200)]
README: add blurb about shared media factories

14 years agoAdd stdlib.h for atoi()
David Schleef [Mon, 9 Aug 2010 19:56:23 +0000 (12:56 -0700)]
Add stdlib.h for atoi()

14 years agobuild: distcheck fixes
Tim-Philipp Müller [Thu, 20 May 2010 13:33:24 +0000 (14:33 +0100)]
build: distcheck fixes

Fix 'make distcheck', somewhat (it still fails because it tries to
install files into /usr/share/vala/vapi/ irrespective of the
configured prefix).

14 years agoconfigure: bump core/base requirements to released version
Tim-Philipp Müller [Thu, 20 May 2010 13:09:18 +0000 (14:09 +0100)]
configure: bump core/base requirements to released version

Makes things less confusing for people.

14 years agoconfigure: fail if GStreamer core/base requirements are not met
Tim-Philipp Müller [Sun, 25 Apr 2010 15:35:30 +0000 (16:35 +0100)]
configure: fail if GStreamer core/base requirements are not met

14 years agoclient: improve client cleanups
Wim Taymans [Tue, 6 Apr 2010 15:08:40 +0000 (17:08 +0200)]
client: improve client cleanups

Make sure the session does not timeout when using TCP. We need to do this
because quicktime player does not send RTCP for some reason in tunneled
mode.
Refactor some cleanup code.

Fixes #612915

14 years agosession: add support for prevent session timeouts
Wim Taymans [Tue, 6 Apr 2010 15:07:27 +0000 (17:07 +0200)]
session: add support for prevent session timeouts

Add an atomix counter to prevent session timeouts when we are, for example,
streaming over TCP.

14 years agoclient: fix unlink on session timeouts
Wim Taymans [Tue, 6 Apr 2010 13:45:56 +0000 (15:45 +0200)]
client: fix unlink on session timeouts

When our session times out, make sure we unlink all streams in this
session.
Remove the tunnelid when closing the connection.

14 years agosession: small cleanups
Wim Taymans [Tue, 6 Apr 2010 13:44:45 +0000 (15:44 +0200)]
session: small cleanups

14 years agoclient: handle lost_tunnel callbacks
Wim Taymans [Tue, 6 Apr 2010 09:13:51 +0000 (11:13 +0200)]
client: handle lost_tunnel callbacks

Handle lost_tunnel callbacks and use it to store the tunnelid back into the
hashtable so that we can reuse it for when the client reopens the POST
socket.
Close the connection after a TEARDOWN.
Make sure or watchid is cleared when the watch is removed.

Fixes #612915

14 years agortsp-server: add more support for multicast
Wim Taymans [Fri, 19 Mar 2010 17:03:40 +0000 (18:03 +0100)]
rtsp-server: add more support for multicast

14 years agomedia: allow configuration of allowed lower transport
Wim Taymans [Fri, 19 Mar 2010 14:15:29 +0000 (15:15 +0100)]
media: allow configuration of allowed lower transport

14 years agortsp: keep track of server ip and ipv6
Wim Taymans [Tue, 16 Mar 2010 17:37:18 +0000 (18:37 +0100)]
rtsp: keep track of server ip and ipv6

Keep track of how the client connected to the server and setup the udp ports
with the same protocol.
Copy the server ip address in the SDP so that clients can send RTCP back to
us.

14 years agosession: indent
Wim Taymans [Tue, 16 Mar 2010 17:34:43 +0000 (18:34 +0100)]
session: indent

14 years agoclient: use right size for malloc
Wim Taymans [Tue, 16 Mar 2010 17:33:23 +0000 (18:33 +0100)]
client: use right size for malloc

14 years agoserver: comment ipv6 server listening address
Wim Taymans [Wed, 10 Mar 2010 10:45:30 +0000 (11:45 +0100)]
server: comment ipv6 server listening address

14 years agomedia: allow for ipv6 sockets
Wim Taymans [Wed, 10 Mar 2010 10:45:06 +0000 (11:45 +0100)]
media: allow for ipv6 sockets

14 years agoserver: rework server part
Wim Taymans [Tue, 9 Mar 2010 12:49:00 +0000 (13:49 +0100)]
server: rework server part

Allow setting a bind address, make sure we can deal with ipv6.
Remove the port property and change with the service property.

14 years agomedia: update comments a little
Wim Taymans [Tue, 9 Mar 2010 12:44:20 +0000 (13:44 +0100)]
media: update comments a little

14 years agoclient: make content-base better
Wim Taymans [Tue, 9 Mar 2010 12:43:29 +0000 (13:43 +0100)]
client: make content-base better

Use the URI formatting functions to make a content-base. Also make sure that
there is a trailing / at the end.

14 years agoclient: guard against invalid paths
Wim Taymans [Tue, 9 Mar 2010 12:42:50 +0000 (13:42 +0100)]
client: guard against invalid paths

14 years agotest: catch server bind errors
Wim Taymans [Tue, 9 Mar 2010 12:41:33 +0000 (13:41 +0100)]
test: catch server bind errors

14 years agortspmedia: emit "unprepared" if _prepare fails.
Alessandro Decina [Tue, 9 Mar 2010 09:27:38 +0000 (10:27 +0100)]
rtspmedia: emit "unprepared" if _prepare fails.

Emit the unprepared signal if gst_rtsp_media_prepare fails so that the
media object is removed from its factory's cache.

14 years agomedia: collect media position when seek completes
Wim Taymans [Fri, 5 Mar 2010 18:08:08 +0000 (19:08 +0100)]
media: collect media position when seek completes

14 years agoclient: call unlink_streams in client finalize
Luca Ognibene [Fri, 5 Mar 2010 17:37:17 +0000 (18:37 +0100)]
client: call unlink_streams in client finalize

Fixes #599027

14 years agomedia: limit the time to wait to something huge
Wim Taymans [Fri, 5 Mar 2010 17:23:18 +0000 (18:23 +0100)]
media: limit the time to wait to something huge

Avoid waiting forever but limit the timeout to 20 seconds.

14 years agosdp: reindent and check for prepared status
Wim Taymans [Fri, 5 Mar 2010 16:57:08 +0000 (17:57 +0100)]
sdp: reindent and check for prepared status

14 years agomedia: avoid doing _get_state() for state changes
Wim Taymans [Fri, 5 Mar 2010 16:51:26 +0000 (17:51 +0100)]
media: avoid doing _get_state() for state changes

When preparing, use the ASYNC_DONE and ERROR messages in the bus handler to wait
until the media is prerolled or in error. This avoids doing a blocking call of
gst_element_get_state() that can cause lockups when there is an error.

Fixes #611899

14 years agomedia: reindent
Wim Taymans [Fri, 5 Mar 2010 15:20:08 +0000 (16:20 +0100)]
media: reindent

14 years agomedia-factory: better error handling
Wim Taymans [Fri, 5 Mar 2010 12:34:15 +0000 (13:34 +0100)]
media-factory: better error handling

Improve the error handling a bit.

14 years agoclient: rework transport parsing
Wim Taymans [Fri, 5 Mar 2010 12:31:37 +0000 (13:31 +0100)]
client: rework transport parsing

Rework the transport parsing code so that we can ignore transports we don't
support instead of just picking the first one we can parse.
Configure a (for now hardcoded) destination for multicast transports.

14 years agomedia: set multicast sink parameters
Wim Taymans [Fri, 5 Mar 2010 12:28:58 +0000 (13:28 +0100)]
media: set multicast sink parameters

Disable loop and automatic multicast join on the udpsink elements.
Add some more debug info.
Reset some state variables in the right place.
Use the right port numbers for multicast.

14 years agosession: handle transport setup correctly
Wim Taymans [Fri, 5 Mar 2010 12:27:18 +0000 (13:27 +0100)]
session: handle transport setup correctly

Handle UDP, MCAST and TCP transport negotiation more correctly.
Store the server session SSRC in the transport.

14 years agortsp-client: implement error_full
Wim Taymans [Wed, 27 Jan 2010 17:38:27 +0000 (18:38 +0100)]
rtsp-client: implement error_full

Implement error_full to avoid some segfaults when the rtspconnection calls it.

See #608245

14 years agodocs: update docs and comments
Wim Taymans [Fri, 25 Dec 2009 17:24:10 +0000 (18:24 +0100)]
docs: update docs and comments

14 years agosdp: make server work better when behind a proxy
Nikolay Ivanov [Fri, 25 Dec 2009 14:22:23 +0000 (15:22 +0100)]
sdp: make server work better when behind a proxy

14 years agoclient: dump rtsp message only if debug threshold is higher than GST_LEVEL_LOG
Sebastian Pölsterl [Sat, 21 Nov 2009 00:17:25 +0000 (01:17 +0100)]
client: dump rtsp message only if debug threshold is higher than GST_LEVEL_LOG

14 years agoUse GStreamer's debugging subsystem
Sebastian Pölsterl [Sat, 21 Nov 2009 18:20:23 +0000 (19:20 +0100)]
Use GStreamer's debugging subsystem

14 years agoserver: Set ghost pad active in gst_rtsp_media_factory_collect_streams
Sebastian Pölsterl [Sat, 21 Nov 2009 00:00:39 +0000 (01:00 +0100)]
server: Set ghost pad active in gst_rtsp_media_factory_collect_streams

15 years agoback to development
Wim Taymans [Thu, 5 Nov 2009 10:22:44 +0000 (11:22 +0100)]
back to development

15 years agorelease 0.10.5
Wim Taymans [Thu, 5 Nov 2009 10:20:45 +0000 (11:20 +0100)]
release 0.10.5

15 years agoconfigure: bump required versions
Wim Taymans [Wed, 14 Oct 2009 10:11:31 +0000 (12:11 +0200)]
configure: bump required versions

15 years agoclient: call weak-unref on client->sessions from finalize
Luca Ognibene [Sun, 11 Oct 2009 11:57:54 +0000 (13:57 +0200)]
client: call weak-unref on client->sessions from finalize

Fixes bug #596305

15 years agomedia: Fixed crasher where caps got unref'ed too often
Sebastian Pölsterl [Fri, 9 Oct 2009 21:08:18 +0000 (23:08 +0200)]
media: Fixed crasher where caps got unref'ed too often

15 years agoAdded pkg-config file to use gst-rtsp-server uninstalled
Sebastian Pölsterl [Fri, 9 Oct 2009 14:26:30 +0000 (16:26 +0200)]
Added pkg-config file to use gst-rtsp-server uninstalled

15 years agomedia: add some docs
Wim Taymans [Fri, 11 Sep 2009 11:52:27 +0000 (13:52 +0200)]
media: add some docs

15 years agortsp: Use gst_rtsp_watch_send_message().
Peter Kjellerstedt [Mon, 24 Aug 2009 11:27:00 +0000 (13:27 +0200)]
rtsp: Use gst_rtsp_watch_send_message().

Use gst_rtsp_watch_send_message() since the old API which used
gst_rtsp_watch_queue_message() has been deprecated.

15 years agoback to development
Wim Taymans [Wed, 5 Aug 2009 09:53:56 +0000 (11:53 +0200)]
back to development

15 years agoRelease 0.10.4
Wim Taymans [Wed, 5 Aug 2009 09:44:49 +0000 (11:44 +0200)]
Release 0.10.4