Mathieu Duponchelle
030992d03a
meson: enable more warnings
2018-03-01 19:28:16 +01:00
Sebastian Dröge
0dc6170582
rtsp-client: Place netaddress meta on packets received via TCP
...
This allows us to later map signals from rtpbin/rtpsource back to the
corresponding stream transport, and allows to do keep-alive based on
RTCP packets in case of TCP media transport.
https://bugzilla.gnome.org/show_bug.cgi?id=789646
2018-02-28 21:12:43 +02:00
Mathieu Duponchelle
6f308daa5f
rtspclientsink: if OPEN failed, unqueue next command
...
As READY_TO_PAUSED can no longer return async, the RECORD
command will be queued before the OPEN command fails
(for example in case the server could not be connected),
and record then waits for ever.
https://bugzilla.gnome.org/show_bug.cgi?id=793896
2018-02-27 20:37:14 +01:00
Mathieu Duponchelle
ba9395c158
rtspclientsink: fix retrieval of custom payloader caps
...
If a bin is passed as the custom payloader, the caps of
its factory will be empty, the correct way to obtain the caps
is to query its sinkpad.
2018-02-26 22:59:17 +01:00
Mathieu Duponchelle
7f6367cc63
rtspclientsink: fix extra unref of custom payloader
2018-02-26 22:59:00 +01:00
Mathieu Duponchelle
fcf71d8efb
rspclientsink: fix recent code indentation
2018-02-26 22:57:39 +01:00
Mathieu Duponchelle
a41d0fb5c2
rtspclientsink: add missing get_type prototype
2018-02-26 20:27:57 +01:00
Mathieu Duponchelle
731c464007
rtspclientsink: allow setting payloader as pad property
...
This was a FIXME item, and can be quite useful, also
allowing to specify payloader properties from the command
line, which is always nice.
https://bugzilla.gnome.org/show_bug.cgi?id=793776
2018-02-26 19:33:01 +01:00
Carlos Rafael Giani
5f29712243
rtsp-media: Replace g_print() log line
...
https://bugzilla.gnome.org/show_bug.cgi?id=793838
2018-02-26 15:26:29 +02:00
Mathieu Duponchelle
ddb0d83844
rtsp-media: fix RECORD getting stuck
...
The test_record case was working because async=false had
been added in https://bugzilla.gnome.org/show_bug.cgi?id=757488
but that was incorrect, as it should not be needed.
Removing async=false made the test fail as expected, this is
fixed by not trying to preroll when preparing the media for
RECORD, as start_prepare is called upon receiving ANNOUNCE,
and our peer will not start sending media until it has received
a response to that request, and sent and received a response
to RECORD as well, thus obviously preventing preroll.
https://bugzilla.gnome.org/show_bug.cgi?id=793738
2018-02-23 16:13:56 +01:00
Mathieu Duponchelle
99edc9445a
rtsp-auth: fix set_tls_authentication_mode annotation
2018-02-23 03:26:21 +01:00
Víctor Manuel Jáquez Leal
b7e8198211
rtp-server: remove redefined variable
...
res is a boolean variable which is defined in the function scope and
redefined, with no reason, in the loop scope. This patch removes the
redefinition.
https://bugzilla.gnome.org/show_bug.cgi?id=793592
2018-02-19 12:00:58 +01:00
Ognyan Tonchev
14c511ae62
stream: Add functions for checking if stream is receiver or sender
...
...and replace all checks for RECORD in GstRTSPMedia which are really
for "sender-only". This way the code becomes more generic and introducing
support for onvif-backchannel later on will require no changes in
GstRTSPMedia.
2018-02-16 11:04:53 +02:00
Ognyan Tonchev
62aae8c7dc
onvif: Make requires_backchannel() public
...
...in order to let subclasses building the onvif part of the pipeline
check whether backchannel shall be included or not.
2018-02-16 11:04:53 +02:00
Sebastian Dröge
3d275b1345
rtsp-server: Switch around sendonly/recvonly attributes
...
They are wrong in the ONVIF streaming spec. The backchannel should be
recvonly and the normal media should be sendonly: direction is always
from the point of view of the SDP offerer (the server) according to
RFC 3264.
2018-02-16 11:04:53 +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
Sebastian Dröge
231700b2bb
rtsp-media: Add support for sending+receiving medias
...
We need to add an appsrc/appsink in that case because otherwise the
media bin will be a sink and a source for rtpbin, causing a pipeline
loop.
https://bugzilla.gnome.org/show_bug.cgi?id=788950
2018-02-16 11:04:53 +02:00
Tim-Philipp Müller
94e70b77aa
Back to development
2018-02-15 19:44:28 +00:00
Tim-Philipp Müller
f862676ec7
Release 1.13.1
2018-02-15 17:15:40 +00:00
Mathieu Duponchelle
9046b5d083
session-pool: remove nullable return annotation
...
create_watch can only return NULL from the API guards, no
need for nullable.
2018-02-14 17:11:19 +01:00
Mathieu Duponchelle
ee44f38051
set_clock functions: Add nullable annotations
2018-02-13 18:59:49 +01:00
Mathieu Duponchelle
c725ef01a4
All around: add annotations and API guards
2018-02-12 19:16:11 +01:00
Mathieu Duponchelle
2bb00ebfaa
test-cleanup: bind any port
...
The meson test suite runs tests in parallel, trying to bind
a single port made the test fail.
2018-02-12 19:12:35 +01:00
Tim-Philipp Müller
cd96202465
meson: make version numbers ints and fix int/string comparison
...
WARNING: Trying to compare values of different types (str, int).
The result of this is undefined and will become a hard error
in a future Meson release.
2018-02-08 19:15:10 +00:00
Mathieu Duponchelle
2613748730
gst_rtsp_context_get_current: add (skip) annotation
...
The return value type is defined with G_DEFINE_POINTER_TYPE,
and gi emits the following warning:
Invalid non-constant return of bare structure or union; register as
boxed type or (skip)
2018-02-06 18:06:14 +01:00
Mathieu Duponchelle
03a512e4e1
rtsp-client: add type annotations
...
gi doesn't seem to be able to figure out the type of the
signal parameters when defined with G_DEFINE_POINTER_TYPE
2018-02-06 18:06:14 +01:00
Tim-Philipp Müller
22e1bc7763
autotools: use -fno-strict-aliasing where supported
...
https://bugzilla.gnome.org/show_bug.cgi?id=769183
2018-02-05 08:43:46 +01:00
Tim-Philipp Müller
3a8bed19da
meson: use -fno-strict-aliasing where supported
...
https://bugzilla.gnome.org/show_bug.cgi?id=769183
2018-01-30 20:35:24 +00:00
Tim-Philipp Müller
5964247829
mount-points: bail out of loop again when matching mount points
...
Previous patch led to us iterating the entire sequence. Bail out
of the loop again if we have a match but are moving away from it.
https://bugzilla.gnome.org/show_bug.cgi?id=771555
2018-01-25 12:14:33 +00:00
Tim-Philipp Müller
f5b99d8fce
tests: mountpoints: add more checks for mount point path matching
...
https://bugzilla.gnome.org/show_bug.cgi?id=771555
2018-01-25 12:13:20 +00:00
Andrew Bott
c3e58dfdbe
mount-points: fix matching of paths where there's also an entry with a common prefix
...
e.g. with the following mount points
/raw
/raw/snapshot
/raw/video
_match() would not match /raw/video and /raw/snapshot correctly.
https://bugzilla.gnome.org/show_bug.cgi?id=771555
2018-01-25 12:12:57 +00:00
Tim-Philipp Müller
b1f515178a
permissions: add some new API to make this usable from bindings
...
https://bugzilla.gnome.org/show_bug.cgi?id=787073
2018-01-18 23:53:20 +00:00
Tim-Philipp Müller
8708262ebe
rtsp-token: annotate constructors for bindings
...
This maps _new_empty() to _new(), which also makes RTSPToken()
work properly now. Since this API wasn't usable from bindings
before, this should hopefully be fine.
https://bugzilla.gnome.org/show_bug.cgi?id=787073
2018-01-18 22:37:57 +00:00
Tim-Philipp Müller
54a8c6bddf
rtsp-token: add some API to set fields from bindings
...
The existing functions are all vararg-based and as such
not usable from bindings.
https://bugzilla.gnome.org/show_bug.cgi?id=787073
2018-01-18 22:37:57 +00:00
Tim-Philipp Müller
4e048f7b8a
tests: fix indentation
...
Fix and "fix".
2018-01-13 15:02:48 +00:00
Tim-Philipp Müller
d0a4ddc2bb
tests: rtspserver: fix another ref leak
...
Even if this didn't show up in valgrind.
2018-01-13 14:58:55 +00:00
Tim-Philipp Müller
9238b7e19a
tests: rtspclientsink: fix leak
2018-01-13 14:58:00 +00:00
Branko Subasic
3d860913c6
test: rtspserver: plug memory leak in test_no_session_timeout
...
In test_no_session_timeout, unref the rtsp session object when the
test is done.
https://bugzilla.gnome.org/show_bug.cgi?id=792127
2018-01-13 14:18:47 +00:00
Edward Hervey
587c1c4707
rtpsclientsink: Initialize and clear newly added mutex and cond
...
While it *did* work, glib would automatically create new mutex and cond
... which never got freed
2017-12-20 14:17:02 +01:00
Sebastian Dröge
4ec17b1975
rtsp-stream: Set multicast TTL on the multicast sockets
...
And not if we do unicast UDP.
https://bugzilla.gnome.org/show_bug.cgi?id=791743
2017-12-19 11:34:37 +02:00
Sebastian Dröge
4d86f99449
rtsp-stream: Decide based on the sockets, not the addresses if we already allocated a socket
...
In the multicast case (as in test-multicast, not test-multicast2), the
address could be allocated/reserved (and thus set) already without
allocating the actual socket. We need to allocate the socket here still
instead of just claiming that it was already allocated.
See https://bugzilla.gnome.org/show_bug.cgi?id=791743#c2
2017-12-19 11:16:51 +02:00
Patricia Muscalu
64f1a3ab85
rtspclientsink: Use the new rtsp-stream API
...
https://bugzilla.gnome.org/show_bug.cgi?id=790412
2017-12-18 11:34:48 +01:00
Patricia Muscalu
96cfed48bf
rtspclientsink: Wait until OPEN has been scheduled
...
Make sure that the sink thread has started opening connection
to the server before continuing.
https://bugzilla.gnome.org/show_bug.cgi?id=790412
2017-12-18 11:34:48 +01:00
Matthew Waters
b4ab386e87
Automatic update of common submodule
...
From e8c7a71 to 3fa2c9e
2017-12-14 14:53:35 +11:00
Edward Hervey
64a46d47ba
rtsp-server: Minor doc fixes
...
Mostly for g-i
2017-12-07 16:08:50 +01:00
Tim-Philipp Müller
f5b7f57a17
tests: disable all tests when --disable-tests is used
...
Move conditional subdir include into top level.
Based on patch by: Joel Holdsworth
https://bugzilla.gnome.org/show_bug.cgi?id=757703
2017-12-06 20:47:22 +00:00
Tim-Philipp Müller
0dae3a007d
meson: build more tests and add options to disable tests and examples
2017-12-06 20:43:04 +00:00
Thibault Saunier
1555143299
Fix build when -Werror=deprecated-declarations is on
...
As gst_rtsp_session_next_timeout is deprecated.
```
../subprojects/gst-rtsp-server/gst/rtsp-server/rtsp-session.c:760:3: error: ‘gst_rtsp_session_next_timeout’ is deprecated: Use 'gst_rtsp_session_next_timeout_usec' instead [-Werror=deprecated-declarations]
res = (gst_rtsp_session_next_timeout (session, now) == 0);
^~~
../subprojects/gst-rtsp-server/gst/rtsp-server/rtsp-session.c:685:1: note: declared here
gst_rtsp_session_next_timeout (GstRTSPSession * session, GTimeVal * now)
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
2017-11-30 23:58:16 -03:00
Matthew Waters
16d0d8c7c8
Automatic update of common submodule
...
From 3f4aa96 to e8c7a71
2017-11-27 20:18:24 +11:00
Patricia Muscalu
abeb896232
check/media: Add seekability test case: not all streams are active
...
Media contains two streams but only one is complete and prepared
for playing.
https://bugzilla.gnome.org/show_bug.cgi?id=790674
2017-11-27 07:58:42 +01:00