Commit graph

1145 commits

Author SHA1 Message Date
Sebastian Dröge
8700468499 rtsp-server: Use single-include rtsp header to make sure we get all definitions 2015-05-20 17:05:47 +03:00
Sebastian Dröge
1c30c60e64 rtsp-media: Mark some more functions static 2015-05-05 16:46:57 +02:00
Sebastian Dröge
bbdf0a47d1 rtsp-media: Only unblock the media in suspend() when actually changing the state
Otherwise we're going to lose a few packets for live streams during DESCRIBE.
2015-05-05 16:46:19 +02:00
Sebastian Dröge
e4264381a5 examples: Use AVPF profile for the RTX example 2015-05-04 16:33:08 +02:00
Sebastian Dröge
ec2c500a9d rtsp-sdp: Only add RTX to the SDP when using a feedback profile 2015-05-04 16:31:20 +02:00
Hyunjun Ko
4ff22ef6d2 rtsp-stream: get valid clock-rate from last-sample
clock-rate in last-sample's caps is integer, not unsigned.
To get this value properly, variable needs to be type-casted to int.

https://bugzilla.gnome.org/show_bug.cgi?id=747614
2015-04-27 12:41:59 +02:00
Tim-Philipp Müller
f777de7d7f autogen.sh: only run autopoint if gettext requested in configure.ac
Not just because there happens to be a po directory.

https://bugzilla.gnome.org/show_bug.cgi?id=748058
2015-04-26 15:07:52 +01:00
Tim-Philipp Müller
226fbbc8f8 Revert "configure.ac: uncomment gettext version setup"
This reverts commit 1545d8fef7.

We don't need a gettext setup here and there's no po
directory either, so no reason why autopoint would be
run in the first place.

See https://bugzilla.gnome.org/show_bug.cgi?id=748058
2015-04-26 14:59:09 +01:00
Alistair Buxton
eb7705a48d Fix timeout function signatures across tests and examples 2015-04-23 20:12:18 +02:00
Tim-Philipp Müller
753f8a8ac9 tests: define GST_CHECK_TEST_ENVIRONMENT_BEACON
Make sure the test environment is set up.

https://bugzilla.gnome.org//show_bug.cgi?id=747624
2015-04-23 17:27:40 +01:00
Tim-Philipp Müller
bdbc6f24ce configure: bump automake requirement to 1.14 and autoconf to 2.69
This is only required for builds from git, people can still
build tarballs if they only have older autotools.

https://bugzilla.gnome.org//show_bug.cgi?id=747624
2015-04-23 17:22:59 +01:00
Vincent Penquerc'h
1545d8fef7 configure.ac: uncomment gettext version setup
Fixes autogen.sh. It would run autopoint, which would complain
that it could not find the gettext version in configure.ac.

https://bugzilla.gnome.org/show_bug.cgi?id=748058
2015-04-20 08:49:57 +01: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
Hyunjun Ko
de590b4b2a rtsp-stream: fix to get valid each stream data for request-aux-sender signal
Because of duplicated g_signal_connect for request-aux-sender signal,
wrong stream pointer is passed to the signal handler.
Instead of passing each stream, pass stream array and get the relevant stream.

https://bugzilla.gnome.org/show_bug.cgi?id=747839
2015-04-15 15:14:04 +02:00
Tim-Philipp Müller
bff66c0004 Update autogen.sh to latest version from common
Fixes build after aclocal_check etc. helpers have been removed.
2015-04-06 10:32:52 +01:00
Tim-Philipp Müller
a54d8733b2 Automatic update of common submodule
From bc76a8b to c8fb372
2015-04-03 18:58:26 +01:00
Sebastian Dröge
ef3bfd757b rtsp-stream: Limit the queues to 1 buffer
We only need them to be able to pre-roll, queueing up more data here
is only going to harm latency and memory usage.
2015-03-23 21:04:43 +01:00
Sebastian Dröge
357af7aea6 rtsp-stream: Update comment and ASCII art to the latest code
We have a queue in front of the udpsink too to prevent the pipeline from
locking up.
2015-03-23 20:59:52 +01:00
Nicolas Dufresne
dfb053add3 rtsp-media: Properly return first rtptime
Instead we where returning first GstBuffer timestamp. This would result
in clock skew and unwanted behaviour in RTSP playback.

https://bugzilla.gnome.org/show_bug.cgi?id=746479
2015-03-21 11:04:05 -04:00
Nicolas Dufresne
01562286ba rtsp-stream: Don't leave buffer mapped
If the seq is NULL, the RTP buffer was left mapped. We should always
unmap the buffer.
2015-03-18 16:44:19 -04:00
Sebastian Dröge
01ae7c01f3 Fix typo in README 2015-03-15 12:27:39 +00:00
Tim-Philipp Müller
896767b041 Fix double semicolons 2015-03-10 09:39:22 +00:00
Sebastian Dröge
852cc09f54 rtsp-stream: Get the seqnum-base and other information from the last buffer in the sink
This gives more accurate values than asking the payloader. There might be
queueing happening between the payloader and the sink.

https://bugzilla.gnome.org/show_bug.cgi?id=745704
2015-03-09 16:00:38 +01:00
Sebastian Dröge
b58af93d83 rtsp-media: Don't seek for PLAY if the position will not change
https://bugzilla.gnome.org/show_bug.cgi?id=745704
2015-03-09 13:00:25 +01:00
Sebastian Dröge
93bdbb6acd rtsp-media: Don't include payload type in the caps for framesize
When the sdp media attribute framesize are converted to caps
the <payload> should not be included.

Fixes https://bugzilla.gnome.org/show_bug.cgi?id=725335

Based on the patch for rtspsrc by Linus Svensson <linussn@axis.com>
2015-03-09 10:21:49 +01:00
Linus Svensson
9dadaed2fd rtsp-sdp: add payload type to the sdp framesize attribute
The sdp framesize attribute is desribed in RFC6064. It is specified
for payloading of H263 and has the following form
a=framesize:<payload type> <width>-<height>. The <width>-<height> part
should be added to the caps in a payloader and the <payload type> should
be added by the rtsp-server.

Fixes https://bugzilla.gnome.org/show_bug.cgi?id=725334
2015-03-09 09:26:38 +01: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
Jan Schmidt
db42945c2c rtsp-media-factory: Add functions to set/get the media gtype
Allow specifying the GType of a GstRtspMedia subclass to create
as a simpler way to get the factory to create a custom
GstRtspMedia sub-class, without subclassing GstRtspMediaFactory.
2015-03-03 11:53:16 +11:00
Gregor Boirie
bc7765eee7 rtsp-media: fix double unlock in _get_buffer_size()
Fixes an abort when calling gst_rtsp_media_get_buffer_size()
because of double g_mutex_unlock () usage.

https://bugzilla.gnome.org/show_bug.cgi?id=745434
2015-03-02 10:50:57 +00:00
Kent-Inge Ingesson
d2f1997c4b rtsp-session: Use monotonic time for RTSP session timeout
Changed RTSP session timeout handling to monotonic time
and deprecating the API for current system time.

This fixes timeouts when the system time changes.

https://bugzilla.gnome.org/show_bug.cgi?id=743346
2015-02-19 10:43:30 +02:00
Sebastian Dröge
51ed357597 rtsp-client: Only error out in PLAY if seeking actually failed
If the media was just not seekable, we continue from whatever position we are
and let the client decide if that is what is wanted or not.

Only if the actual seek failed, we can't really recover and should error out.
2015-02-13 12:21:16 +02:00
Andreas Frisch
bac59c52f1 rtsp-stream: Add necessary queues between tee and multiudpsink
https://bugzilla.gnome.org/show_bug.cgi?id=744379
2015-02-13 11:28:43 +02:00
Sebastian Dröge
98b162f54b rtsp-media: If seeking fails, don't wait forever for the media to preroll again
Instead error out properly the same way as if the SEEKING query already
failed.
2015-02-12 16:53:27 +02:00
Tim-Philipp Müller
dc43f427a9 rtsp-stream: minor code formatting fix 2015-02-11 17:25:35 +00:00
Luis de Bethencourt
ec7bf5379e rtsp-media: fix logic for collect_streams
Fix the logic of gst_rtsp_media_collect_streams() so after looping collecting
all streams it knows if it got any, and can check if the transport mode is OK.

CID #1268400
2015-02-10 16:45:23 +00:00
Sebastian Dröge
8405cfad3a rtsp-media: Don't set the transport mode based on what elements we find
Just print a warning if the one that was set before disagrees with what
elements we found. It must already be set to something before as this
function is called after we received the SDP from ANNOUNCE in RECORD mode,
and we would reject ANNOUNCE if the RECORD flag was not set.
2015-02-09 10:21:50 +01:00
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
Tim-Philipp Müller
57c21c8f9e rtsp-client: fix awkward if clause 2015-02-08 12:08:36 +00: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
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
Tim-Philipp Müller
e9ce91634c rtsp-client: fix a couple of leaks in handle_announce 2015-02-06 09:42:50 +01:00
Sebastian Dröge
35b2b10cf4 rtsp-media: Expose latency setting for setting the rtpbin latency 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
844add610d rtsp-stream: Put the timestamp of receival of the initial packet over TCP on the first buffer 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