Commit graph

132 commits

Author SHA1 Message Date
Jan Schmidt
b04856f0cf examples: Add a simple example of network synch for live streams.
An example server and client that works for synchronising live streams
only - as it can't support pause/play.
2015-03-03 11:53:16 +11:00
Tim-Philipp Müller
6dbffce319 examples: test-uri: improve uri argument handling and accept file names
Print an error if the argument passed is not a URI and can't
be converted into one, or no arguments have been provided.
2015-02-06 19:34:17 +00:00
Tim-Philipp Müller
a862d632b7 examples: test-uri: don't remove mount point after 10 seconds
It's very irritating when trying to test stuff repeatedly
and serves no real purpose other than showing that it can
be done.
2015-02-06 19:16:32 +00:00
Tim-Philipp Müller
5377dd2b78 examples: add new test-record to .gitignore 2015-02-06 10:02:32 +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
Sebastian Dröge
aa1feab874 test-record: Set latency for playback-style example to 2s instead of 200ms 2015-02-06 09:42:50 +01:00
Sebastian Dröge
18d3244fd0 test-record: Use GOptionContext to parse the server port and take the pipeline from the commandline 2015-02-06 09:42:50 +01:00
Sebastian Dröge
ccf6c6eb53 Add initial support for RECORD
We currently only support media that is RECORD or PLAY only, not both at once.

https://bugzilla.gnome.org/show_bug.cgi?id=743175
2015-02-06 09:42:42 +01:00
Sebastian Dröge
634abb9906 examples: Don't call gst_init() and gst_get_option_group()
The latter calls the former at the appropriate time.
2015-01-17 10:30:21 +01:00
Nirbheek Chauhan
e0d3807cbb examples: Add command-line parsing and take a 'port' argument
This allows users to run multiple servers on different ports for testing.

Only done for examples that actually take arguments and hence are capable of
outputting different streams for each instance on each port.

https://bugzilla.gnome.org/show_bug.cgi?id=742115
2014-12-30 16:04:14 +00:00
Matthew Waters
fa4d8db7ea examples: add a retransmisison example implementing RFC4588
Currently only SSRC-multiplexed rtx streams are supported
2014-12-16 16:46:34 +01:00
Wim Taymans
4056897111 test: add example of dumping RTCP reports 2014-09-15 16:54:36 +02:00
Tim-Philipp Müller
04e69cf83b examples: fix another reference leak
gst_rtsp_media_get_element() returns a new ref.
2014-08-09 14:41:35 +01:00
Sebastian Rasmussen
486f30558a examples: unref element after usage
gst_bin_get_by_name_recurse_up() returns an element
reference that must be unreffed after usage.

https://bugzilla.gnome.org/show_bug.cgi?id=734546
2014-08-09 14:18:09 +01:00
Tim-Philipp Müller
fc6fa3f16a examples: print 'stream ready at url' for mp4 and ogg example 2014-07-03 19:52:42 +01:00
Wim Taymans
96f7c61a15 test: enable SRTP only on RTSPS
We only want to enable SRTP when doing rtsp over TLS so that we can
exchange the keys in a secure way.
2014-03-25 12:42:39 +01:00
Wim Taymans
131e1d6c77 test: print an error on failure 2014-03-25 12:41:33 +01: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
Wim Taymans
2bd90b539c sdp: pass multicast connection for multicast-only stream
Pass the multicast address of the stream in the connection info in the
SDP so that clients try a multicast connection first.
Only allow multicast connections in the test-multicast example. Also
increase the TTL a little.
2014-03-03 15:12:55 +01:00
Tim-Philipp Müller
c3896849b2 examples: use LDADD for libs instead of LDFLAGS 2014-02-25 15:13:40 +00:00
Tim-Philipp Müller
2234b4a503 examples: test-cgroups: don't put code with side effects into g_assert()
The g_assert() might get compiled out with the right
compiler/preprocessor flags.
2014-02-25 14:11:00 +00:00
Tim-Philipp Müller
035d951591 examples: add cgroup test binary to .gitignore 2014-02-25 14:07:50 +00:00
Tim-Philipp Müller
f68db78a1d examples: fix cgroup test build
Fixes build failure caused by compiler warning:
test-cgroups.c:82:35: error: no previous prototype for ‘gst_rtsp_cgroup_pool_get_type’ [-Werror=missing-prototypes]
2014-02-25 14:06:47 +00:00
Aleix Conchillo Flaque
fcad523dd7 examples: fix compilation when WITH_AUTH is defined
https://bugzilla.gnome.org/show_bug.cgi?id=710228
2013-10-30 19:12:10 +01:00
Wim Taymans
d3776cc80b Makefile: add rule for appsrc example 2013-08-23 15:15:12 +02:00
Wim Taymans
94ed18008a tests: add appsrc example
Add an example on how to use appsrc to feed the server pipeline with data.
2013-08-23 15:14:29 +02:00
Wim Taymans
d423c25a3f tests: add some more docs 2013-07-22 17:27:27 +02: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
25547176be 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.
2013-07-18 12:27:33 +02:00
Wim Taymans
1a307c707d auth: use defines when possible 2013-07-18 12:27:33 +02:00
Wim Taymans
b8c5aa3a6b token: simplify token constructor
Use variable arguments to make easier API.
2013-07-12 16:36:05 +02:00
Wim Taymans
67d0fbc048 media-factory: add convenience API for factory 2013-07-12 16:17:57 +02:00
Wim Taymans
facc91a942 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.
2013-07-12 16:17:15 +02:00
Wim Taymans
4b2e6d88b3 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.
2013-07-12 12:41:52 +02:00
Wim Taymans
2fdc6ef88a configure: compile cgroup example conditionally
Only compile the cgroup example when we have libcgroup
2013-07-11 10:28:06 +02:00
Wim Taymans
5c6bb3052f examples: add cgroups example 2013-07-10 20:57:12 +02:00
Wim Taymans
16cfb7b8c0 test: add permissions to auth test
Ass some permissions to the media factory in the test.
2013-07-09 16:09:07 +02:00
Wim Taymans
a63f4a2a4c auth: add auth checks
Add an enum with auth checks and implement the checks in the auth object.
Perform the checks from the client.
2013-07-08 16:29:01 +02:00
Wim Taymans
fb7c9b8122 auth: use the token after authentication
After we authenticated a user, keep the Token around in the state.
2013-07-08 11:10:20 +02:00
Wim Taymans
19cffc7999 auth: remove auth from media and factory
Remove the auth object from media and factory. We want to have the RTSPClient
authenticate and authorize resources, there is no need to place another auth
manager on the media/factory.
2013-07-05 20:53:19 +02:00
Wim Taymans
78bc979690 auth: add support for multiple basic auth tokens
Make it possible to add multiple basic authorisation tokens to one authorization
object. Associate with each token an authorization group that will define what
capabilities are allowed.
2013-07-04 14:33:59 +02:00
Wim Taymans
d1339f60f4 example: add TLS example 2013-05-31 12:11:12 +02:00
Wim Taymans
b614319622 tests: add example of reusable pipelines 2013-04-22 17:33:30 +02: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
922a786519 examples: fix include 2012-11-28 11:40:33 +01:00
Wim Taymans
1d53c46d23 MediaMapping -> MountPoints
Describes better what the object manages.
2012-11-26 12:37:55 +01:00
Wim Taymans
9387c4b451 examples: fix whitespace 2012-11-21 16:41:37 +01:00
Wim Taymans
ca11abd193 test-auth: add example of how to remove sessions
Add an example of the session filter api.
2012-11-20 13:34:46 +01:00
Wim Taymans
1023b60959 test-uri: remove mapping example 2012-11-20 12:47:49 +01:00
Wim Taymans
f494eec5e7 test-uri: fix callback signature 2012-11-20 12:47:20 +01:00
Wim Taymans
18d6152af2 examples: add another multicast example
Add an example for how to configure separate multicast ranges for each media
stream.
2012-11-15 16:52:42 +01:00
Wim Taymans
a75d83e26d test: set shared 2012-11-15 16:21:51 +01:00
Wim Taymans
fde8c01a85 examples: add multicast example
Show how to set up the multicast address pool so that media can be
server with multicast.
2012-11-15 13:22:54 +01:00
Tim-Philipp Müller
4dba434f16 Fix FSF address 2012-11-04 00:14:25 +00:00
Wim Taymans
0bb0e3733c small fixes to docs and debug 2012-10-27 11:53:51 +02:00
Tim-Philipp Müller
449bc0dffb First rule of gst-rtsp-server club: don't talk about gst-phonon 2012-02-13 11:42:51 +00:00
Wim Taymans
57775e0999 example: update for new caps 2011-12-09 11:00:46 +01:00
Wim Taymans
fde25cd9c3 rtsp-server: port some more to 0.11
Fix caps.
Remove bufferlist stuff
Update for new API.
Add queue before appsink now that preroll-queue-len is gone.
Update for request pad changes.
2011-12-09 10:53:30 +01:00
Stefan Sauer
40c7bb6386 examples: tell rtsp uri when ready 2011-07-19 16:13:16 +02:00
Wim Taymans
459bc46e31 example: improve example docs a little 2011-01-12 18:33:49 +01:00
Wim Taymans
7797023fda media: enable per factory authorisations
Allow for adding a GstRTSPAuth on the factory and media level and check
permissions when accessing the factory.
Add hints to the auth methods for future more fine grained authorisation.
Add example application for per factory authentication.
2011-01-12 13:57:09 +01:00
Wim Taymans
5fb5f75020 auth: add authentication object
Add an object that can check the authorization of requests.
Implement basic authentication.
Add example authentication to test-video
2011-01-12 00:22:27 +01:00
Edward Hervey
2cc9eee3e6 gitignore: updates 2011-01-11 13:04:31 +01:00
Wim Taymans
5227832132 examples: add some more options and comments 2011-01-07 11:27:57 +01:00
Wim Taymans
8585dda467 example: add example of the uri factory 2010-12-11 18:06:26 +01:00
Edward Hervey
150f64892f examples: Run gst-indent 2010-12-11 10:49:30 +01:00
Wim Taymans
6b2c868b97 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.
2010-10-04 17:16:40 +02:00
Wim Taymans
68804ff984 test: catch server bind errors 2010-03-09 13:41:33 +01:00
Wim Taymans
b0beb1c8d1 example: add SDP relay example 2009-05-24 20:00:19 +02:00
Wim Taymans
8d20ec3574 add some .gitignore files 2009-05-11 10:38:44 +02:00
Wim Taymans
5a074c81dd tests: set the payload type correctly 2009-04-14 23:38:15 +02:00
Wim Taymans
660006b04f examples: mark the example as shared for testing 2009-04-03 19:47:38 +02:00
Wim Taymans
da6f337745 Add example server that takes launch lines
Add an example server that streams any -launch line.
2009-03-11 16:39:20 +01:00
Wim Taymans
de1ebbc21b Add support for live streams
Add support for live streams and ranges
Start on handling TCP data transfer.
2009-03-06 19:34:14 +01:00
Wim Taymans
da0ef4a014 Time out sessions
Add support for session timeouts in the example.
2009-02-13 20:00:34 +01:00
Wim Taymans
031791ddd2 Add a README and more example code
Add a README file that contains a small introduction on how to use the server
along with the example code explained in the readme.
2009-01-30 13:24:04 +01:00
Wim Taymans
41dd6399a6 Reorganize things, prepare for media sharing
Added various other test server examples
Move the SDP message generation to a separate helper.
Refactor common code for finding the session.
Add content-base for realplayer compatibility
Clean up request uris before processing for better vlc compatibility.
Move prerolling and pipeline construction to the RTSPMedia object.
Use multiudpsink for future pipeline reuse.
2009-01-30 12:17:28 +01:00
Wim Taymans
83cf4d8ee0 Update example
Add some more docs and remove some old code from the example.
2009-01-22 16:54:07 +01:00
Wim Taymans
4b1c190a5f Make the server handle arbitrary pipelines
Make GstMediaFactory an object that can instantiate GstMediaBin objects.
The GstMediaBin object has a handle to a bin with elements and to a list of
GstMediaStream objects that this bin produces.

Add GstMediaMapper that can map url mountpoints to GstMediaFactory objects along
with methods to register and remove those mappings.

Add methods and a property to GstRTSPServer to manage the GstMediaMapper object
used by the server instance.

Modify the example application so that it shows how to create custom pipelines
attached to a specific mount point.

Various misc cleanps.
2009-01-22 15:33:29 +01:00
Sebastian Pölsterl
a8400faeab Put GStreamer version in library name 2009-01-08 13:52:10 +01:00
Wim Taymans
36fb0de01c Fix some issues to pass distcheck 2009-01-08 13:51:26 +01:00
Wim Taymans
7889395787 Split in library and example program 2009-01-08 13:18:55 +01:00