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