Commit graph

156 commits

Author SHA1 Message Date
Tim-Philipp Müller
a56404a45a tests: rtspserver: rename shadowed variable
We have two different 'sink' variables here,
rename one of them for clarity.
2015-02-08 18:05:50 +00:00
Sebastian Dröge
a93ed7e5d4 rtsp-media: Use flags to distinguish between PLAY and RECORD media 2015-02-06 09:42:50 +01:00
Tim-Philipp Müller
6e5b156b0d tests: add some unit tests for ANNOUNCE and RECORD
https://bugzilla.gnome.org/show_bug.cgi?id=743175
2015-02-06 09:42:50 +01:00
Linus Svensson
1a004c5d46 tests: Remove FIXME
The session leak is now fixed, lets remove those FIXME comments.
2014-11-07 12:42:48 +01:00
Linus Svensson
d1ea01d4c6 tests: Test to setup two sessions on one connection
https://bugzilla.gnome.org/show_bug.cgi?id=739112
2014-11-07 12:42:48 +01:00
Linus Svensson
df5850f966 tests: Test setup with tcp transport
https://bugzilla.gnome.org/show_bug.cgi?id=739112
2014-11-07 12:42:48 +01:00
Branko Subasic
2745e6f654 tests: Extend unit test timeout to accomodate for valgrind
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=736647
2014-09-24 10:38:08 +03:00
Ognyan Tonchev
bfd498585a client tests: send teardown to cleanup session 2014-07-09 16:17:00 +02:00
Ognyan Tonchev
f78886e7cb server tests: send teardown to cleanup session 2014-07-09 16:17:00 +02:00
Wim Taymans
5aec4af1b9 client: manage media in session as a last step
Once we manage a media in a session, we can't unmanage it anymore
without destroying it. Therefore, first check everything before we
manage the media, otherwise if something is wrong we have no way to
unmanage the media.
If we created a new session and something went wrong, remove the session
again. Fixes a leak in the unit test.
2014-07-08 14:46:13 +02:00
Ognyan Tonchev
fc06329e87 stream tests: Make sure we get right multicast address from stream
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=731577
2014-06-18 15:26:27 +02:00
Wim Taymans
b8165dbd60 tests: add and remove pads only once
In this test we simulate a dynamic pad by watching the caps event.
Because of renegotiation in the base payloader now, this caps is sent
multiple times but we can only deal with 1 invocation, use a variable to
only 'add and remove' the pad once.
2014-05-09 15:13:54 +02:00
Tim-Philipp Müller
aec1b42c4e tests: add unit test for correct handling of Require headers
https://bugzilla.gnome.org/show_bug.cgi?id=729426
2014-05-09 13:55:27 +01:00
Tim-Philipp Müller
8b8c3630b4 tests: fix memory leak in sessionmedia unit test 2014-05-02 19:58:40 +01:00
Linus Svensson
9219509bcf rtsp-session-pool: Fixes annotation
Fixes annotation for gst_rtsp_session_pool_create() and memory leaks
in the sessionpool test.

Fixes https://bugzilla.gnome.org/show_bug.cgi?id=728060
2014-04-12 06:15:03 +02:00
Ognyan Tonchev
da19a3c21a media: stop the thread in more error cases 2014-04-12 05:57:00 +02:00
Ognyan Tonchev
de2a70bb10 media: allow NULL as the thread
Use the default context whan passing a NULL thread.
2014-04-12 05:55:02 +02:00
Ognyan Tonchev
9c0ef4d9f8 media: Make media_prepare() fail if port allocation fails
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=727376
2014-04-08 15:11:25 +02:00
Linus Svensson
6916875a0b media test: cleanup the thread pool in tests 2014-04-08 15:00:42 +02:00
Linus Svensson
a3e6b11f11 rtsp-media: Unblock blocked streams in unprepare
The streams will be blocked when a live media is prepared.
The streams should be unblocked in gst_rtsp_media_unprepare.

Fixes https://bugzilla.gnome.org/show_bug.cgi?id=727231
2014-04-08 14:58:23 +02:00
Wim Taymans
3d6175c745 stream: add SRTP support
Install srtp encoder and decoder elements in rtpbin
Add MIKEY in SDP
2014-03-25 10:31:21 +01:00
Sebastian Rasmussen
bfbf393925 tests: Add unit tests for sessionpool
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=726470
2014-03-24 12:16:47 +01:00
Sebastian Rasmussen
d9cfa3677b tests: Improve code coverage of rtsp-threadpool tests
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=726873
2014-03-24 00:44:55 +00:00
Sebastian Rasmussen
1cb66a0e6d tests: Improve code coverage for rtsp-session-media
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=726940
2014-03-24 00:42:19 +00:00
Sebastian Dröge
04c386b727 tests: Fix another compiler warning with gcc 2014-02-09 10:47:09 +01:00
Sebastian Dröge
957a4a65c6 rtsp-server: Fix lots of compiler warnings with clang 2014-02-09 10:45:28 +01:00
Sebastian Dröge
1ab8b9d486 configure: Synchronise with the configure scripts of the other modules 2014-02-09 10:41:14 +01:00
Ognyan Tonchev
274d4b017f thread-pool: Unref reused threads in gst_rtsp_thread_stop()
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=723519
2014-02-04 14:47:49 +01:00
Sebastian Rasmussen
26f215ac36 tests: fix memory leak, free test's thread pool
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=719733
2013-12-03 00:05:17 +00:00
Branko Subasic
b16b47f68d check: add test for uri in setup
Added unit tests for the new functionality in GstRTSPStreamTransport.

Fixes https://bugzilla.gnome.org/show_bug.cgi?id=715168
2013-11-28 18:01:55 +01:00
Wim Taymans
2f17369e9d media: add suspend modes
Add support for different suspend modes. The stream is suspended right after
producing the SDP and after PAUSE. Different suspend modes are available that
affect the state of the pipeline. NONE leaves the pipeline state unchanged and
is the current and old behaviour, PAUSE will set the pipeline to the PAUSED
state and RESET will bring the pipeline to the NULL state.
A stream is also unsuspended when it goes back to PLAYING, for RESET streams,
this means that the pipeline needs to be prerolled again.

Base on patches by Ognyan Tonchev <ognyan@axis.com>

See https://bugzilla.gnome.org/show_bug.cgi?id=711257
2013-11-28 16:18:39 +01:00
Wim Taymans
b2bc84cdbf address-pool: fix address increment
Use a guint instead of guint8 to increment the address. It's still not
completely correct because a guint might not be able to hold the complete
address range, but that's an enhacement for later.
Add unit test to test improved behaviour.

https://bugzilla.gnome.org/show_bug.cgi?id=708237
2013-11-12 16:54:59 +01:00
Patricia Muscalu
adc02db975 client: allow absolute path in requests
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=711689
2013-11-12 12:21:50 +01:00
Wim Taymans
8d5ce0d4ee stream: Add functions to get rtp and rtcp sockets
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=710100
2013-11-12 12:04:55 +01:00
Sebastian Rasmussen
0e1665b7c6 tests: Add unit tests for token
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=710520
2013-11-12 10:44:43 +01:00
Sebastian Rasmussen
a2eb48a27c tests: Add unit tests for permissions
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=710202
2013-11-12 09:54:46 +01:00
Sebastian Rasmussen
c0828a5d53 tests: Test mediafactory permissions
See https://bugzilla.gnome.org/show_bug.cgi?id=710202
2013-11-12 09:54:04 +01:00
Sebastian Rasmussen
eee8b0db88 tests: Check gst_rtsp_url_parse return value
See https://bugzilla.gnome.org/show_bug.cgi?id=710202
2013-11-12 09:54:03 +01:00
Ognyan Tonchev
fa7898b0a6 thread-pool: Add unit test for the thread pools
https://bugzilla.gnome.org/show_bug.cgi?id=710228
2013-10-30 19:02:24 +01:00
Patricia Muscalu
de7be1c9b2 tests: fixed racy behavior in rtspserver tests
https://bugzilla.gnome.org/show_bug.cgi?id=710078
2013-10-15 11:28:27 +02:00
Sebastian Rasmussen
cf82d90452 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
2013-10-14 20:20:05 +02:00
Ognyan Tonchev
39dceb77ff tests: fix unit test
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=708742
2013-09-26 14:36:58 +02:00
Patrick Radizi
7b0ad7c25f 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
2013-09-24 17:30:18 +02:00
Jonas Holmberg
23b3f21595 client: free threadpool
https://bugzilla.gnome.org/show_bug.cgi?id=707638
2013-09-06 20:44:10 +01:00
Jonas Holmberg
cafdba8445 mountpoints tests: unref matched factories
https://bugzilla.gnome.org/show_bug.cgi?id=707638
2013-09-06 19:03:22 +01:00
Jonas Holmberg
c15c659b40 media tests: unref thread pool and caps
https://bugzilla.gnome.org/show_bug.cgi?id=707638
2013-09-06 19:03:19 +01:00
Wim Taymans
f78a65379c ClientState -> Context
Rename the clientstate to context and put the code in a separate file.
2013-07-22 14:25:04 +02:00
Wim Taymans
041b1b79a1 docs: improve docs 2013-07-16 12:32:51 +02:00
Wim Taymans
d3d7df5a1e address-pool: cleanups
Remove redundant method, improve docs.
2013-07-16 12:32:00 +02:00
Wim Taymans
95b3bd4e0c tests: simplify tests
Client settings are now disabled by default so we don't need an auth
module to disable them.
2013-07-15 16:48:37 +02:00
Wim Taymans
15db094d85 client: fix test
Add some permissions to media so we can use the auth and enable
client settings.
2013-07-15 11:58:58 +02:00
Wim Taymans
5ce4dd7925 tests: almost fix test 2013-07-12 17:26:55 +02:00
Wim Taymans
8200efbbd0 tests: fix media test 2013-07-11 17:28:17 +02:00
Wim Taymans
868a7a5a93 tests: fix client test 2013-07-11 17:05:00 +02:00
Wim Taymans
e788a9ca60 tests: fix compilation 2013-07-10 20:55:03 +02:00
Wim Taymans
12583e819c media: add optional context for bus messages
Add an optional mainloop to _prepare that will handle the bus messages instead
of always using the shared mainloop.
2013-07-08 11:10:20 +02:00
Wim Taymans
8f79daef5e mount-points: remove useless vmethod
Making lookups in the mount points should not be done with a URL, if there is a
mapping to be done from URL to mount points, we'll need to do it somewhere
else.
2013-07-03 11:10:27 +02:00
Wim Taymans
df08a2dd9e mount-points: improve mount point searching
Use a GSequence to keep track of the mount points.
Match a URL to the longest matching registered mount point. This should be the
URL to perform aggreagate control and the remainder is the stream specific
control part.
Add some unit tests for this.
2013-07-03 10:45:51 +02:00
Wim Taymans
b2f44fd4db tests: fix compilation 2013-07-02 15:59:16 +02:00
Patricia Muscalu
ffefd9e80b tests: fix tests
gst_rtsp_client_get_uri() has been removed

Fixes https://bugzilla.gnome.org/show_bug.cgi?id=703173
2013-06-27 12:22:46 +02:00
Wim Taymans
cd8a81b3b1 tests: fix test
Actually do what the comment says. Also keep the old code around, not sure what
should happen when you get a 454 from a TEARDOWN, does it close the connection?
it currently doesn't.
2013-06-20 17:30:49 +02:00
Patricia Muscalu
a8a051f780 tests: add unit test for new-session
See https://bugzilla.gnome.org/show_bug.cgi?id=701587
2013-06-20 12:18:36 +02:00
Ognyan Tonchev
d9e245e62e rtsp-media: Do not leak the element in take_pipeline
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=702470
2013-06-17 17:18:40 +02:00
Patricia Muscalu
0951aa37e1 rtsp-sdp: add bandwidth line
https://bugzilla.gnome.org/show_bug.cgi?id=699220
2013-05-15 12:36:32 +02:00
Ognyan Tonchev
6065400a62 tests: add dynamic payloader prepare/unprepare check 2013-04-23 11:28:39 +02:00
Ognyan Tonchev
f15288259e check: add media prepare/unprepare test
See https://bugzilla.gnome.org/show_bug.cgi?id=698376
2013-04-22 16:49:39 +02:00
David Svensson Fors
d728d59a00 tests: remove extra unref in test_setup_non_existing_stream
The unref is not needed anymore, teardown runs without it.

https://bugzilla.gnome.org/show_bug.cgi?id=696542
2013-03-28 12:54:10 +00:00
David Svensson Fors
75221ac8e3 tests: GSocketService cleanup in test_bind_already_in_use
Use g_socket_service_stop so the rtspserver test stops listening for
incoming connections in test_bind_already_in_use.

https://bugzilla.gnome.org/show_bug.cgi?id=696541
2013-03-28 12:48:46 +00:00
Olivier Crête
c18eafbb24 rtsp-media/client: Reply to PLAY request with same type of Range
Remember the type of Range from the PLAY request and use the same type for
the reply.
2013-03-22 15:53:06 +01:00
Patricia Muscalu
8a08fddb41 rtsp-client: expose uri 2013-03-18 23:44:38 +00:00
Olivier Crête
4a99e1cf56 tests: Hold ref while creating second media
To test if the media aren't shared, make sure we keep the first one while creating a second
otherwise the same memory address may be reused.
2013-03-13 17:47:44 -04:00
Tim-Philipp Müller
fba09126a8 tests: use right _LIBS variable for gst-plugins-base libs 2013-03-12 00:03:36 +00:00
Wim Taymans
4a2276c0e6 check: add librtp to libs 2013-03-11 11:35:14 +01:00
Olivier Crête
6a2238b2fb tests: Add test to check selecting a port the server will send from 2013-03-11 11:07:20 +01:00
Olivier Crête
d3c70d4d51 tests: Make sure packets are actually received 2013-03-11 11:07:20 +01:00
Olivier Crête
444c5892f7 tests: Add tests for unicast addresses in pool 2013-03-11 11:07:20 +01:00
Olivier Crête
27a057962c address-pool: Verify that multicast addresses are used for multicast and vice-versa 2013-03-11 11:07:20 +01:00
Olivier Crête
d06e68abd1 address-pool: Add unicast addresses 2013-03-11 11:07:20 +01:00
Olivier Crête
4c61c6d308 rtsp-server: Limit the number of threads per server instance
If we exceed the maximum, just round robin the clients over the existing
threads.
2013-03-11 11:07:20 +01:00
Olivier Crête
dcc92cbde1 tests: Add test for client disconnection 2013-03-11 11:07:20 +01:00
Olivier Crête
2e11184171 tests: Test client and session timeouts with multiple threads 2013-03-11 11:07:19 +01:00
Olivier Crête
176f5dd0be tests: Test that slow DESCRIBE don't block other clients 2013-03-11 11:07:19 +01:00
Olivier Crête
29d9878536 tests: Add tests for client-requested multicast address 2013-03-11 11:07:19 +01:00
Olivier Crête
cda75709bb address-pool: Add API to request a specific address from the pool
Also add relevant unit tests.
2013-03-11 11:07:19 +01:00
Olivier Crête
bb7a8af077 tests: Check the passing around of a RTSPAddressPool
Make sure the RTSPAddressPool is propagated from the MediaFactory all the
way down to the stream.
2013-03-11 11:07:19 +01:00
Olivier Crête
2581cc103c tests: Add more tests for the address pool 2013-03-11 11:07:19 +01:00
Tim-Philipp Müller
114442bdb8 tests: use GST_*_1_0 environment variables everywhere
The _1_0 suffixed environment variables override the
non-suffixed ones, so if we're in an environment that
sets the _1_0 suffixed ones, such as jhbuild, we need
to set those to make sure ours actually always get
used.
2013-01-16 12:16:32 +00:00
Wim Taymans
28fd887547 media: avoid element leak 2012-11-29 17:20:56 +01:00
Wim Taymans
ad00c5e792 rtsp: make object details private
Make all object details private
Add methods to access private bits
2012-11-29 11:11:05 +01:00
Wim Taymans
8665c3b494 tests: add media tests 2012-11-28 14:50:47 +01:00
Wim Taymans
b5fe0c29f1 tests: add mediafactory test 2012-11-28 12:40:46 +01:00
Wim Taymans
89974f2db1 tests: add test for mountpoints 2012-11-28 11:07:57 +01:00
Wim Taymans
46f8692087 tests: add more tests 2012-11-27 12:51:55 +01:00
Wim Taymans
faa0c446f7 test: add test for session in options request 2012-11-27 12:13:59 +01:00
Wim Taymans
3baaf0b0df tests: add unit test for the client object 2012-11-27 11:17:31 +01:00
Wim Taymans
1d53c46d23 MediaMapping -> MountPoints
Describes better what the object manages.
2012-11-26 12:37:55 +01:00
Wim Taymans
a0c2dca4dd test: add test for server reuse
See https://bugzilla.gnome.org/show_bug.cgi?id=688395
2012-11-20 11:30:49 +01:00
Wim Taymans
45b6693b39 rtsp: make address-pool return an address object
Return a boxed GstRTSPAddress from the GstRTSPAddressPool. This allows us to
store more info in the structure and allows us to more easily return the address
to the right pool when no longer needed.
Pass the address to the StreamTransport so that we can return it to the pool
when the stream transport is freed or changed.
2012-11-15 13:25:14 +01:00
Wim Taymans
d6fcf92601 tests: add addresspool unit test 2012-11-14 15:50:42 +01:00
Tim-Philipp Müller
4dba434f16 Fix FSF address 2012-11-04 00:14:25 +00:00