Commit graph

131 commits

Author SHA1 Message Date
Mathieu Duponchelle 1730940abd rtsp-media-factory: expose API to disable RTCP
This is supported by the RFC, and can be useful on systems where
allocating two consecutive ports is problematic, and RTCP is not
necessary.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-rtsp-server/-/merge_requests/159>
2020-10-10 02:06:18 +02:00
Seungha Yang 6a1e121a54 examples: Add an example for loop playback
This demo example shows a way of file loop playback of a given source.
Note that client seek request is not properly implemented yet.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-rtsp-server/-/merge_requests/154>
2020-09-30 19:47:18 +09:00
Lenny Jorissen ef408ee167 test-onvif-server: cast ntp-offset property value to 64 bit
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-rtsp-server/-/merge_requests/134>
2020-06-12 19:02:29 +02:00
Mathieu Duponchelle ec5aa720d7 onvif-media-factory: define autoptr cleanup function
And have the factory in the onvif-server example inherit from
GstRTSPOnvifMediaFactory.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-rtsp-server/-/merge_requests/133>
2020-06-10 11:51:31 +00:00
Tim-Philipp Müller f0928c5c1f examples: test-onvif-server: fix compiler warnings on raspbian
Fix printf format for 64-bit variables.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-rtsp-server/-/merge_requests/117>
2020-05-03 11:54:17 +01:00
Bastian Bouchardon c1ca88cd34 Add initialization for context and params (gchar *)
Insert define (DEFAULT_*) into help to have to modify only the constants
2020-02-07 17:55:09 +01:00
Tim-Philipp Müller 6b3bd23e40 Remove autotools build
Replaced by Meson.

Maybe we can now use the meson pkgconfig module
for .pc files? (Does it support uninstalled now?)
2019-10-13 13:52:37 +01:00
Mathieu Duponchelle 9cba1f7708 test-onvif-client: remove unused query 2019-09-05 14:25:34 +00:00
Mathieu Duponchelle 513c0fcb95 test-onvif-client: perform accurate seeks
See https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/merge_requests/336

Also, modify how we compute the position: position queries in
PAUSED mode fail to account for the newly-prerolled frame, leading
to frame skips when performing seeks in that state. Instead,
compute the current position from the last sample.
2019-08-29 22:48:10 +02:00
Matthew Waters 4319e17b0e examples/onvif-server: fix werror build with clang
../subprojects/gst-rtsp-server/examples/test-onvif-server.c:346:65: warning: implicit conversion from enumeration type 'const GstSegmentFlags' to different enumeration type 'GstSeekFlags' [-Wenum-conversion]
        self->incoming_segment->format, self->incoming_segment->flags,
                                        ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~
../subprojects/gst-rtsp-server/examples/test-onvif-server.c:53:1: warning: unused function 'REPLAY_IS_BIN' [-Wunused-function]
G_DECLARE_FINAL_TYPE (ReplayBin, replay_bin, REPLAY, BIN, GstBin);
^
/usr/include/glib-2.0/gobject/gtype.h:1407:26: note: expanded from macro 'G_DECLARE_FINAL_TYPE'
  static inline gboolean MODULE##_IS_##OBJ_NAME (gpointer ptr) {                                         \
                         ^
<scratch space>:77:1: note: expanded from here
REPLAY_IS_BIN
^
../subprojects/gst-rtsp-server/examples/test-onvif-server.c:525:1: warning: unused function 'ONVIF_FACTORY' [-Wunused-function]
G_DECLARE_FINAL_TYPE (OnvifFactory, onvif_factory, ONVIF, FACTORY,
^
/usr/include/glib-2.0/gobject/gtype.h:1405:33: note: expanded from macro 'G_DECLARE_FINAL_TYPE'
  static inline ModuleObjName * MODULE##_##OBJ_NAME (gpointer ptr) {                                     \
                                ^
<scratch space>:9:1: note: expanded from here
ONVIF_FACTORY
^
../subprojects/gst-rtsp-server/examples/test-onvif-server.c:525:1: warning: unused function 'ONVIF_IS_FACTORY' [-Wunused-function]
/usr/include/glib-2.0/gobject/gtype.h:1407:26: note: expanded from macro 'G_DECLARE_FINAL_TYPE'
  static inline gboolean MODULE##_IS_##OBJ_NAME (gpointer ptr) {                                         \
                         ^
<scratch space>:12:1: note: expanded from here
ONVIF_IS_FACTORY
^
2019-08-26 12:42:48 +00:00
Xavier Claessens c2deb7f64b test-onvif-client: stdin is not defined in MSVC 2019-08-16 13:38:01 -04:00
Mathieu Duponchelle 859e59b944 test-onvif-client: STDIN_FILENO is not portable
If not defined, define it to _fileno(stdin) on Windows, 0
everywhere else
2019-08-08 15:52:53 +02:00
Mathieu Duponchelle df1f9f38ce test-onvif-server: downgrade logging 2019-08-07 21:04:33 +02:00
Mathieu Duponchelle 0bdae677d3 examples: add ONVIF client / server example 2019-08-07 18:04:03 +02:00
Ingo Randolf ce2b418811 examples: test-appsrc: fix coding style error 2018-11-20 19:12:09 +01:00
Ingo Randolf be4635cf2f examples: test-appsrc: fix buffer leak 2018-11-20 11:56:38 +00:00
Sebastian Dröge 98b480fae9 examples: Fix indentation 2018-08-14 14:10:56 +03:00
Tim-Philipp Müller c2e3aa49f8 meson: add new test-appsrc2 example to meson build 2018-07-10 23:55:20 +01:00
Tim-Philipp Müller 35e284a946 examples: fix build of new test-appsrc2 example
Need to link against libgstapp-1.0.
2018-07-10 23:53:41 +01:00
Jan Schmidt b6c3960f11 examples: Add test-appsrc2
Add an example of feeding both audio and video into an RTSP
pipeline via appsrc.
2018-07-11 01:25:51 +10:00
Jan Schmidt e0f31b4ca4 examples: Add test-video-disconnect example
Simple example which cuts off all clients 10 seconds
after the first one connects.
2018-06-22 23:17:53 +10:00
Mathieu Duponchelle 5ede2a5c5c rtsp-auth: Add support for parsing .htdigest files
Passwords are usually not stored in clear text, but instead
stored already hashed in a .htdigest file.

Add support for parsing such files, add API to allow setting
a custom realm in RTSPAuth, and update the digest example.

https://bugzilla.gnome.org/show_bug.cgi?id=796637
2018-06-21 15:47:39 +02:00
Mathieu Duponchelle 36cc79c5e2 meson: build auth-digest example 2018-06-20 01:35:47 +02:00
Sebastian Dröge 72dc8acd86 rtsp: Add support for ONVIF backchannel
This adds a new RTSP server, client, media-factory and media subclass
for handling the specifics of the backchannel. Ideally this later can be
extended with other ONVIF specific features.
2018-02-16 11:04:53 +02:00
Tim-Philipp Müller 3dcd77a21c examples: make test-launch pipeline shared by default as well 2017-03-27 18:19:33 +01:00
Jan Schmidt 007f48f711 examples/test-record: Add extra line to initial printout
Add an example line of how to deliver a stream to the
RTSP RECORD example
2017-02-07 23:42:48 +11:00
Sebastian Dröge 927a44c55b rtsp-auth: Add support for Digest authentication
https://bugzilla.gnome.org/show_bug.cgi?id=774416
2016-11-19 11:59:34 +02:00
Tim-Philipp Müller a353e50747 Add support for Meson as alternative/parallel build system
https://github.com/mesonbuild/meson
2016-08-31 00:04:43 +01:00
Sebastian Dröge bfe08411a9 examples: Clean up CFLAGS/LDADD even more
The internal .la should come first and is part of LDADD, as is
GST_CFLAGS/LIBS.
2016-04-04 12:58:38 +03:00
Sebastian Dröge cf064134ee examples: Clean up CFLAGS/LDADD to link with the correct versions of all libraries 2016-04-04 12:39:39 +03:00
Sebastian Dröge 662d6b188f test-netclock: Use the new API to configure a clock directly 2015-12-30 18:40:47 +02:00
Jan Schmidt 52fb304ac9 examples: Actually use the provided port in the record examples 2015-11-17 01:12:28 +11:00
Jan Schmidt eaf7b1488c test-record-auth: Add the option to build in TLS support 2015-11-17 01:12:28 +11:00
Jan Schmidt a062b9c562 test-auth: Use an 'anonymous' user for unauthenticated default
There's a comment on one of the resources that 'user' and 'admin'
shouldn't even be able to see it, but they can if the default
token is 'admin2', since that gives them access anyway.
2015-11-17 01:12:28 +11:00
Jan Schmidt 75c3a3c095 Add test-record-auth example 2015-11-17 01:12:28 +11:00
Hyunjun Ko a51337974c stream: listen to sender ssrc signals
https://bugzilla.gnome.org/show_bug.cgi?id=746747
2015-10-02 16:40:31 +03:00
Vineeth TM 6d20a1c9d9 rtsp-server: Fix memory leaks when context parse fails
When g_option_context_parse fails, context and error variables are not getting free'd
which results in memory leaks. Free'ing the same.

And replacing g_error_free with g_clear_error, which checks if the error being passed
is not NULL and sets the variable to NULL on free'ing.

https://bugzilla.gnome.org/show_bug.cgi?id=753863
2015-09-26 09:35:17 +01:00
Jan Schmidt 22b618836e test-mp4: Support filenames with spaces in them. Error out on too few arguments 2015-09-03 22:20:11 +10:00
Jan Schmidt 2a41502cde test-record: Check parameter count and print out help
If no launch pipeline was supplied, print out some help
2015-09-03 22:20:11 +10:00
Sebastian Dröge fdfe97f447 test-netclock: Use gst_pipeline_set_latency() to set a high-enough, equal latency for all receivers 2015-06-13 17:14:43 +02:00
Sebastian Dröge a5044fa1f9 test-netclock: Use new ntp-time-source property on rtpbin
Select the clock time to be used as NTP time source. This allows proper
synchronization between receivers, independent of sharing base times, and just
requires them to use the same clock.
2015-06-12 23:35:32 +02:00
Sebastian Dröge 028a4666fa test-netclock: Setting the same base time on sender and receiver is not necessary
It's going to be fixed up by rtpbin when using ntp-sync=TRUE
2015-06-11 20:41:31 +02:00
Sebastian Dröge 5c5850b6b1 test-netclock-client: Use ntp-sync=TRUE and buffer-mode=SYNC for proper synchronization 2015-06-10 17:14:44 +02:00
Sebastian Dröge af2cb6445a test-netclock-client: Use new GstClock API to wait for clock synchronization 2015-06-09 13:53:47 +02:00
Sebastian Dröge 6219766555 test-netclock-client: Use a GMainLoop and playbin's source-setup signal
A mainloop is needed to get glimagesink to display something on OSX, and
the source-setup signal just makes things a little bit easier.
2015-06-09 13:52:05 +02:00
Sebastian Dröge e4264381a5 examples: Use AVPF profile for the RTX example 2015-05-04 16:33:08 +02:00
Alistair Buxton eb7705a48d Fix timeout function signatures across tests and examples 2015-04-23 20:12:18 +02:00
Hyunjun Ko fabde79bc3 test-video-rtx: set exact payload type to PCMA payloader
Setting wrong payload type causes failure to do retransmission through audio stream

https://bugzilla.gnome.org/show_bug.cgi?id=747839
2015-04-15 15:14:15 +02:00
Luis de Bethencourt d92ff17026 examples: test-uri: fix tainted variable
Insignificant but this keeps Coverity happy.

CID #1268404
2015-03-03 13:53:11 +00:00
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