platform/upstream/gstreamer.git
11 years agothread-pool: Fix thread leak when reusing threads
Ognyan Tonchev [Wed, 9 Oct 2013 13:25:10 +0000 (15:25 +0200)]
thread-pool: Fix thread leak when reusing threads

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

11 years agotests: fixed racy behavior in rtspserver tests
Patricia Muscalu [Mon, 14 Oct 2013 06:30:33 +0000 (08:30 +0200)]
tests: fixed racy behavior in rtspserver tests

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

11 years agotests: Improve address pool unit tests
Sebastian Rasmussen [Mon, 14 Oct 2013 17:36:24 +0000 (19:36 +0200)]
tests: Improve address pool unit tests

Add a range with mixed IPV4 and IPV6 addresses to pool.
Get an IPV4 address from an IPV6-only pool.
Get an IPV6 address from an IPV4-only pool.
Reserve a IPV6 address from an IPV4-only pool.
Check for unicast addresses in multicast-only pool.
Check for unicast addresses in uni-/multicast-mixed pool.

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

11 years agoclient: append query string in PAUSE/PLAY/TEARDOWN as well
Wim Taymans [Fri, 4 Oct 2013 04:29:30 +0000 (06:29 +0200)]
client: append query string in PAUSE/PLAY/TEARDOWN as well

11 years agoclient: Add query to control path
Jonas Holmberg [Tue, 1 Oct 2013 12:04:17 +0000 (14:04 +0200)]
client: Add query to control path

If the SETUP url contains a query it must be appended to the control
path so that it matches any already created stream in the media. The
query will also be appended to the session media path.

11 years agortsp-media: remove old line
Wim Taymans [Fri, 4 Oct 2013 03:48:52 +0000 (05:48 +0200)]
rtsp-media: remove old line

11 years agostream: Correct control comparison
Jonas Holmberg [Tue, 1 Oct 2013 11:15:19 +0000 (13:15 +0200)]
stream: Correct control comparison

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

11 years agomedia: Check dynamically if the pipeline supports seeking
Youness Alaoui [Tue, 10 Sep 2013 01:51:44 +0000 (21:51 -0400)]
media: Check dynamically if the pipeline supports seeking

We should not depend on whether or not the pipeline state change
returned NO_PREROLL or not. A media could dynamically change its
element and switch from seekable to non seekable so it's best to test
the seekable nature of the pipeline dynamically when we try to do a seek.

11 years agomedia: Return FALSE if seeking is not supported
Youness Alaoui [Tue, 10 Sep 2013 01:51:23 +0000 (21:51 -0400)]
media: Return FALSE if seeking is not supported

11 years agortsp-media: don't seek accurate by default
Wim Taymans [Tue, 1 Oct 2013 15:16:11 +0000 (17:16 +0200)]
rtsp-media: don't seek accurate by default

Accurate seeking is perhaps a little overkill in the most common situation and
causes some formats (mp3) over slow media to seek extremely slowly.

11 years agotests: fix unit test
Ognyan Tonchev [Thu, 26 Sep 2013 12:36:58 +0000 (14:36 +0200)]
tests: fix unit test

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

11 years agoclient: Reply 400 if media cannot be constructed
Jonas Holmberg [Thu, 26 Sep 2013 09:20:05 +0000 (11:20 +0200)]
client: Reply 400 if media cannot be constructed

Reply 400 Bad Request instead of 503 Service Unavailable if media
cannot be constructed in SETUP.

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

11 years agoclient: Send setup reply once only
Jonas Holmberg [Thu, 26 Sep 2013 07:41:10 +0000 (09:41 +0200)]
client: Send setup reply once only

If find_media() failed in handle_setup_request() two replies was sent.

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

11 years agoAutomatic update of common submodule
Tim-Philipp Müller [Tue, 24 Sep 2013 17:35:36 +0000 (18:35 +0100)]
Automatic update of common submodule

From 6b03ba7 to 865aa20

11 years agoserver: Emit client-connected signal earlier
Jonas Holmberg [Mon, 23 Sep 2013 12:28:04 +0000 (14:28 +0200)]
server: Emit client-connected signal earlier

Emit client-connected before the client ref is given to a GSource,
otherwise client-connected can be emitted after the client object has
been freed.

11 years agoaddresspool: return reason of failure
Patrick Radizi [Tue, 24 Sep 2013 15:30:18 +0000 (17:30 +0200)]
addresspool: return reason of failure

Let gst_rtsp_address_pool_reserve_address() return the reason why
the address could not be reserved.

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

11 years agoautogen.sh: Sync behaviour with other GStreamer modules
Edward Hervey [Fri, 20 Sep 2013 14:47:56 +0000 (16:47 +0200)]
autogen.sh: Sync behaviour with other GStreamer modules

Allows building from outside of tree amongst other things

11 years agoAutomatic update of common submodule
Edward Hervey [Fri, 20 Sep 2013 14:18:54 +0000 (16:18 +0200)]
Automatic update of common submodule

From b613661 to 6b03ba7

11 years agoAutomatic update of common submodule
Tim-Philipp Müller [Thu, 19 Sep 2013 17:46:14 +0000 (18:46 +0100)]
Automatic update of common submodule

From 74a6857 to b613661

11 years agoAutomatic update of common submodule
Tim-Philipp Müller [Thu, 19 Sep 2013 16:39:24 +0000 (17:39 +0100)]
Automatic update of common submodule

From 01a7a46 to 74a6857

11 years agoclient: Do not read beyond end of path string
Jonas Holmberg [Thu, 19 Sep 2013 13:44:26 +0000 (15:44 +0200)]
client: Do not read beyond end of path string

If the setup was done without a control url, make sure we don't try to read the
non-existing control string and crash.

11 years agoclient: Fix RTPInfo header
Wim Taymans [Tue, 17 Sep 2013 12:39:44 +0000 (14:39 +0200)]
client: Fix RTPInfo header

Refactor the method to make the content_base.
Use the content-base and the control url to construct the RTPInfo
url.

11 years agoclient: map url to path only in describe
Wim Taymans [Tue, 17 Sep 2013 10:21:02 +0000 (12:21 +0200)]
client: map url to path only in describe

Only map the request url to a path in the DESCRIBE method. The SDP then
contains the base and control urls that should be used to SETUP/PAUSE/
PLAY/TEARDOWN the media.

11 years agoRevert "client: map URL to path in requests"
Wim Taymans [Tue, 17 Sep 2013 09:41:57 +0000 (11:41 +0200)]
Revert "client: map URL to path in requests"

This reverts commit e3fded2cec897a2ec003450607b916cc1601fd2d.

This is not correct, we only remap the URL to a path in DESCRIBE, the SDP then
contains the base and control urls which are used in the SETUP, PLAY,
PAUSE and TEARDOWN requests.

11 years agoclient: map URL to path in requests
Wim Taymans [Mon, 16 Sep 2013 15:16:49 +0000 (17:16 +0200)]
client: map URL to path in requests

11 years agomount-points: make vmethod to make path from uri
Wim Taymans [Mon, 16 Sep 2013 14:47:40 +0000 (16:47 +0200)]
mount-points: make vmethod to make path from uri

Make a vmethod to transform an url into a path. The path is then used to lookup
the factory. This makes it possible to also use other bits of the url, such as
the query parameters, to locate the factory.

11 years agothread-pool: Add cleanup to wait for the threadpool to finish
Ognyan Tonchev [Mon, 9 Sep 2013 09:05:26 +0000 (11:05 +0200)]
thread-pool: Add cleanup to wait for the threadpool to finish

Also fix race condition if two threads are asking for the first
thread from the thread pool at once. This would case two internal
GThreadPools to be created.

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

11 years agoclient: free threadpool
Jonas Holmberg [Thu, 5 Sep 2013 06:56:02 +0000 (08:56 +0200)]
client: free threadpool

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

11 years agomountpoints tests: unref matched factories
Jonas Holmberg [Fri, 6 Sep 2013 15:23:20 +0000 (17:23 +0200)]
mountpoints tests: unref matched factories

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

11 years agomedia tests: unref thread pool and caps
Jonas Holmberg [Thu, 5 Sep 2013 16:01:18 +0000 (18:01 +0200)]
media tests: unref thread pool and caps

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

11 years agoauth, media, media-factory: unref permissions
Jonas Holmberg [Thu, 5 Sep 2013 06:53:55 +0000 (08:53 +0200)]
auth, media, media-factory: unref permissions

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

11 years agoMakefile: add rule for appsrc example
Wim Taymans [Fri, 23 Aug 2013 13:15:12 +0000 (15:15 +0200)]
Makefile: add rule for appsrc example

11 years agotests: add appsrc example
Wim Taymans [Fri, 23 Aug 2013 13:14:29 +0000 (15:14 +0200)]
tests: add appsrc example

Add an example on how to use appsrc to feed the server pipeline with data.

11 years agortsp-client: remove query part from content-base string
Patricia Muscalu [Thu, 22 Aug 2013 10:10:39 +0000 (12:10 +0200)]
rtsp-client: remove query part from content-base string

Make sure that after the control url has been resolved, it's
not a part of the query-string.

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

11 years agoclient: don't check url in response
Wim Taymans [Fri, 23 Aug 2013 08:38:43 +0000 (10:38 +0200)]
client: don't check url in response

There is no url or method in the response to check

11 years agoAdd handle-response signal for when we receive a GET_PARAMETER response
Youness Alaoui [Thu, 8 Aug 2013 14:57:42 +0000 (10:57 -0400)]
Add handle-response signal for when we receive a GET_PARAMETER response

11 years agoFix gst_rtsp_server_client_filter, using wrong variable type
Youness Alaoui [Fri, 16 Aug 2013 16:42:22 +0000 (12:42 -0400)]
Fix gst_rtsp_server_client_filter, using wrong variable type

11 years agortsp-media-factory-uri: check AAC properly for whether it's parsed or not
Tim-Philipp Müller [Thu, 22 Aug 2013 17:39:59 +0000 (18:39 +0100)]
rtsp-media-factory-uri: check AAC properly for whether it's parsed or not

For AAC we need to check for framed=true instead of parsed=true.

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

11 years agostream: optimize pipeline for protocols
Wim Taymans [Fri, 16 Aug 2013 15:05:24 +0000 (17:05 +0200)]
stream: optimize pipeline for protocols

When TCP is not an allowed protocol for the stream, avoid creating the
appsrc/appsink/queue and tee elements.

11 years agomedia: set protocols on streams
Wim Taymans [Fri, 16 Aug 2013 14:34:56 +0000 (16:34 +0200)]
media: set protocols on streams

11 years agoclient: use protocols supported by stream
Wim Taymans [Fri, 16 Aug 2013 14:16:31 +0000 (16:16 +0200)]
client: use protocols supported by stream

11 years agomedia-factory: allow all protocols
Wim Taymans [Fri, 16 Aug 2013 14:16:00 +0000 (16:16 +0200)]
media-factory: allow all protocols

11 years agomedia: configure protocols in new streams
Wim Taymans [Fri, 16 Aug 2013 14:10:43 +0000 (16:10 +0200)]
media: configure protocols in new streams

11 years agostream: add protocols property
Wim Taymans [Fri, 16 Aug 2013 14:08:43 +0000 (16:08 +0200)]
stream: add protocols property

11 years agortsp-media: send state in "new-state" signal
Youness Alaoui [Mon, 5 Aug 2013 14:46:33 +0000 (10:46 -0400)]
rtsp-media: send state in "new-state" signal

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

11 years agobuild: add subdir-objects to AM_INIT_AUTOMAKE
Lubosz Sarnecki [Fri, 2 Aug 2013 12:11:01 +0000 (14:11 +0200)]
build: add subdir-objects to AM_INIT_AUTOMAKE

Fixes warnings with automake 1.14

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

11 years agoserver: add method to iterate clients of server
Wim Taymans [Fri, 2 Aug 2013 15:15:09 +0000 (17:15 +0200)]
server: add method to iterate clients of server

11 years agoAdd vmethod for rtsp-media subclass to access rtpbin
Youness Alaoui [Tue, 11 Jun 2013 23:10:01 +0000 (19:10 -0400)]
Add vmethod for rtsp-media subclass to access rtpbin

11 years agosmall documentation fix
Youness Alaoui [Thu, 11 Jul 2013 20:12:04 +0000 (16:12 -0400)]
small documentation fix

11 years agoDo not take range header if range is invalid
Youness Alaoui [Thu, 11 Jul 2013 20:11:55 +0000 (16:11 -0400)]
Do not take range header if range is invalid

11 years agomedia: add docs for new method
Wim Taymans [Fri, 2 Aug 2013 14:57:26 +0000 (16:57 +0200)]
media: add docs for new method

11 years agoAdd API to rtsp-media set the pipeline's state
Youness Alaoui [Tue, 2 Jul 2013 22:55:28 +0000 (18:55 -0400)]
Add API to rtsp-media set the pipeline's state

11 years agoUpdate current position/duration when gst_rtsp_media_get_range_string is called
Youness Alaoui [Tue, 11 Jun 2013 23:09:42 +0000 (19:09 -0400)]
Update current position/duration when gst_rtsp_media_get_range_string is called

11 years agotests: add some more docs
Wim Taymans [Mon, 22 Jul 2013 15:27:27 +0000 (17:27 +0200)]
tests: add some more docs

11 years agoClientState -> Context
Wim Taymans [Mon, 22 Jul 2013 12:25:04 +0000 (14:25 +0200)]
ClientState -> Context

Rename the clientstate to context and put the code in a separate file.

11 years agoauth: add support for default token
Wim Taymans [Thu, 18 Jul 2013 10:19:25 +0000 (12:19 +0200)]
auth: add support for default token

The default token is used when the user is not authenticated and can be used to
give minimal permissions.

11 years agoauth: use defines when possible
Wim Taymans [Thu, 18 Jul 2013 09:44:50 +0000 (11:44 +0200)]
auth: use defines when possible

11 years agoaddress-pool: improve docs
Wim Taymans [Thu, 18 Jul 2013 09:44:21 +0000 (11:44 +0200)]
address-pool: improve docs

11 years agopermissions: add the role to the copy
Wim Taymans [Thu, 18 Jul 2013 10:26:45 +0000 (12:26 +0200)]
permissions: add the role to the copy

11 years agopermissions: Also copy the roles
Olivier Crête [Wed, 17 Jul 2013 23:35:33 +0000 (19:35 -0400)]
permissions: Also copy the roles

11 years agopermissions: Make it build
Olivier Crête [Wed, 17 Jul 2013 23:32:09 +0000 (19:32 -0400)]
permissions: Make it build

11 years agodocs: small fixes
Wim Taymans [Tue, 16 Jul 2013 10:36:56 +0000 (12:36 +0200)]
docs: small fixes

11 years agodocs: improve docs
Wim Taymans [Tue, 16 Jul 2013 10:32:51 +0000 (12:32 +0200)]
docs: improve docs

11 years agoaddress-pool: cleanups
Wim Taymans [Tue, 16 Jul 2013 10:32:00 +0000 (12:32 +0200)]
address-pool: cleanups

Remove redundant method, improve docs.

11 years agodocs: improve docs
Wim Taymans [Mon, 15 Jul 2013 15:31:35 +0000 (17:31 +0200)]
docs: improve docs

11 years agopermissions: implement _remove_role
Wim Taymans [Mon, 15 Jul 2013 15:12:57 +0000 (17:12 +0200)]
permissions: implement _remove_role

11 years agopermissions: update docs
Wim Taymans [Mon, 15 Jul 2013 15:12:43 +0000 (17:12 +0200)]
permissions: update docs

11 years agotests: simplify tests
Wim Taymans [Mon, 15 Jul 2013 14:48:37 +0000 (16:48 +0200)]
tests: simplify tests

Client settings are now disabled by default so we don't need an auth
module to disable them.

11 years agoauth: add default authorizations
Wim Taymans [Mon, 15 Jul 2013 14:47:07 +0000 (16:47 +0200)]
auth: add default authorizations

When no auth module is specified, use our table of defaults to look up the
default value of the check instead of always allowing everything. This was
we can disallow client settings by default.

11 years agoREADME: update readme
Wim Taymans [Mon, 15 Jul 2013 14:05:02 +0000 (16:05 +0200)]
README: update readme

11 years agothread-pool: add more docs
Wim Taymans [Mon, 15 Jul 2013 13:25:00 +0000 (15:25 +0200)]
thread-pool: add more docs

11 years agothread-pool: fix race in thread reuse
Wim Taymans [Mon, 15 Jul 2013 12:50:38 +0000 (14:50 +0200)]
thread-pool: fix race in thread reuse

If we try to reuse a thread right after we made it stop, we end up using a
stopped thread. Catch this case and only reuse threads that are not stopping.

11 years agoserver: add small debug
Wim Taymans [Mon, 15 Jul 2013 12:50:26 +0000 (14:50 +0200)]
server: add small debug

11 years agoclient: fix test
Wim Taymans [Mon, 15 Jul 2013 09:58:58 +0000 (11:58 +0200)]
client: fix test

Add some permissions to media so we can use the auth and enable
client settings.

11 years agoclient: support pushed context in handle_request
Wim Taymans [Mon, 15 Jul 2013 09:57:49 +0000 (11:57 +0200)]
client: support pushed context in handle_request

If we already have a pushed state, reuse it and add our own things. This makes
it easier to write tests.

11 years agoauth: don't auth on methods
Wim Taymans [Mon, 15 Jul 2013 09:56:06 +0000 (11:56 +0200)]
auth: don't auth on methods

Don't authorize on methods anymore but on the resources that we
try to access, this is more flexible.
Move the authorization checks to where they are needed and let the
check return the response on error.

11 years agomount-points: add some debug
Wim Taymans [Mon, 15 Jul 2013 09:51:34 +0000 (11:51 +0200)]
mount-points: add some debug

11 years agotests: almost fix test
Wim Taymans [Fri, 12 Jul 2013 15:26:55 +0000 (17:26 +0200)]
tests: almost fix test

11 years agoauth: let the auth module check client_settings
Wim Taymans [Fri, 12 Jul 2013 15:07:53 +0000 (17:07 +0200)]
auth: let the auth module check client_settings

Let the auth module decide if client settings are allowed for the
current client.

11 years agotoken: add method to check boolean permission
Wim Taymans [Fri, 12 Jul 2013 15:06:37 +0000 (17:06 +0200)]
token: add method to check boolean permission

11 years agotoken: simplify token constructor
Wim Taymans [Fri, 12 Jul 2013 14:36:05 +0000 (16:36 +0200)]
token: simplify token constructor

Use variable arguments to make easier API.

11 years agomedia-factory: add convenience API for factory
Wim Taymans [Fri, 12 Jul 2013 14:17:57 +0000 (16:17 +0200)]
media-factory: add convenience API for factory

11 years agopermissions: simplify API a little
Wim Taymans [Fri, 12 Jul 2013 14:03:07 +0000 (16:03 +0200)]
permissions: simplify API a little

Avoid passing GstStructure in the add_role method, use varargs instead
to construct the structure behind the scenes. We can then also use the
structure name as the role and simplify some more logic.

11 years agoauth: fix typo
Wim Taymans [Fri, 12 Jul 2013 14:01:14 +0000 (16:01 +0200)]
auth: fix typo

11 years agoauth: handle unauthorized response
Wim Taymans [Fri, 12 Jul 2013 13:19:29 +0000 (15:19 +0200)]
auth: handle unauthorized response

Move handling of the unauthorized response to the auth module, it can add
the appropriate headers to request authorization for the required method
much better than the client.

11 years agoclient: allow for sending any message, not only requests
Wim Taymans [Fri, 12 Jul 2013 13:13:48 +0000 (15:13 +0200)]
client: allow for sending any message, not only requests

Change the _send_request() method to _send_message() so that we
can both send requests and replies.

11 years agodocs: fix docs
Wim Taymans [Fri, 12 Jul 2013 12:10:13 +0000 (14:10 +0200)]
docs: fix docs

11 years agoauth: move TLS handling to auth module
Wim Taymans [Fri, 12 Jul 2013 10:41:52 +0000 (12:41 +0200)]
auth: move TLS handling to auth module

Remove the TLS settings on the server and move it to the auth module because
that is where security related bits go.

11 years agoclient: add state push/pop
Wim Taymans [Fri, 12 Jul 2013 10:38:54 +0000 (12:38 +0200)]
client: add state push/pop

11 years agoclient: add connection to state
Wim Taymans [Fri, 12 Jul 2013 10:36:40 +0000 (12:36 +0200)]
client: add connection to state

11 years agomount-points: fix debug
Wim Taymans [Thu, 11 Jul 2013 18:45:11 +0000 (20:45 +0200)]
mount-points: fix debug

11 years agotests: fix media test
Wim Taymans [Thu, 11 Jul 2013 15:28:17 +0000 (17:28 +0200)]
tests: fix media test

11 years agothread-pool: we don't require a state
Wim Taymans [Thu, 11 Jul 2013 15:28:04 +0000 (17:28 +0200)]
thread-pool: we don't require a state

11 years agoserver: let context ref the server
Wim Taymans [Thu, 11 Jul 2013 15:18:58 +0000 (17:18 +0200)]
server: let context ref the server

So that we don't risk losing the server object early anc crash.

11 years agotests: fix client test
Wim Taymans [Thu, 11 Jul 2013 15:05:00 +0000 (17:05 +0200)]
tests: fix client test

11 years agodocs: improve docs
Wim Taymans [Thu, 11 Jul 2013 14:57:14 +0000 (16:57 +0200)]
docs: improve docs

11 years agosession-pool: make vmethod to create a session
Wim Taymans [Thu, 11 Jul 2013 14:28:09 +0000 (16:28 +0200)]
session-pool: make vmethod to create a session

Make a vmethod to create a sessions so that subclasses can create
custom session objects

11 years agodocs: more updates
Wim Taymans [Thu, 11 Jul 2013 10:24:33 +0000 (12:24 +0200)]
docs: more updates

11 years agodocs: update docs
Wim Taymans [Thu, 11 Jul 2013 10:18:26 +0000 (12:18 +0200)]
docs: update docs

11 years agoconfigure: compile cgroup example conditionally
Wim Taymans [Thu, 11 Jul 2013 08:28:06 +0000 (10:28 +0200)]
configure: compile cgroup example conditionally

Only compile the cgroup example when we have libcgroup