Hyunjun Ko
f560a3d223
rtspsrc: Add new ntp-time-source property and deprecate use-pipeline-clock property
...
Enable to use new ntp-time-source property of rtpbin
https://bugzilla.gnome.org/show_bug.cgi?id=751496
2015-06-25 17:16:49 +02:00
Xavier Claessens
b0b3e8e2cc
rtspsrc: Add a GTlsInteraction property
...
It can be used for TLS client authentication.
https://bugzilla.gnome.org/show_bug.cgi?id=750471
2015-06-09 20:03:18 -04:00
Sebastian Dröge
0a7823b30f
rtspsrc: Set RTP profile on the rtpsession objects
...
https://bugzilla.gnome.org/show_bug.cgi?id=746543
2015-06-02 11:38:15 +02:00
Sebastian Dröge
9b14170355
rtspsrc: Use single-include header for the RTSP library
2015-05-20 16:37:55 +03:00
Sebastian Dröge
9865730cfa
rtspsrc: Fix up last commit
2015-05-04 16:50:38 +02:00
Sebastian Dröge
d08f488598
rtspsrc: Only do RTX when using a feedback profile
2015-05-04 16:47:30 +02:00
Sebastian Dröge
33693525b9
rtspsrc: Only enable retransmissions if there is retransmission info in the SDP
...
Otherwise we're going to send early RTCP and NACKs in non-feedback sessions
too, which will confuse servers.
https://bugzilla.gnome.org/show_bug.cgi?id=748627
2015-04-29 15:53:09 +02:00
Tim-Philipp Müller
d753a3eeb1
Remove obsolete Android build cruft
...
This is not needed any longer.
2015-04-26 17:55:07 +01:00
Luis de Bethencourt
671b4d25cd
remove unused enum items PROP_LAST
...
This were probably added to the enums due to cargo cult programming and are
unused. Removing them.
2015-04-24 17:01:12 +01:00
Jesper Larsen
3528046773
rtspsrc: Fix RTCP caps leak
...
https://bugzilla.gnome.org//show_bug.cgi?id=748353
2015-04-23 14:56:27 +01:00
Nicolas Dufresne
84725d62b5
rtspsrc: Fix segment in TCP mode
...
It is expected that buffers are time-stamped with running time. Set
a segment accordingly. In this case we pick 0,-1 as this is what udpsrc
would do. Depayloaders will update the segment to reflect the playback
position.
https://bugzilla.gnome.org/show_bug.cgi?id=635701
2015-03-26 17:54:08 -04:00
Nicolas Dufresne
32aed67144
rtspsrc: Remove useless function
...
This function didn't do anything special, let's not use a function for
that.
2015-03-25 15:28:24 -04:00
Nicolas Dufresne
8afc8c8f3b
rtspsrc: Fix seeking query
...
The segment start/stop in the query is meant to represent the seekable
portion of the stream. It does not match the segment start/stop. Instead
export 0 to duration.
2015-03-24 16:51:12 -04:00
Nicolas Dufresne
1c27002ebd
rtspsrc: Improve trace readability
...
Change the command number into strings.
2015-03-18 17:32:36 -04:00
Ramiro Polla
90be7b4e1e
rtspsrc: properly escape percent sign in documentation
2015-03-14 14:22:39 +00:00
Linus Svensson
398296d978
rtspsrc: 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
2015-03-09 10:18:35 +01:00
Sebastian Dröge
c34a7cb90d
rtspsrc: Fix handling of interleaved (TCP) streams
...
We need to set up the transport in any case, not just if we have a container
stream or a non-interleaved stream. Only if we have an interleaved stream and
are retrying, we should not set up the stream again.
https://bugzilla.gnome.org/show_bug.cgi?id=745599
2015-03-05 12:15:04 +01:00
Sebastian Dröge
b4aaa11f97
rtspsrc: Don't unref caps we don't own
2015-03-05 09:56:37 +01:00
Sebastian Dröge
297d808acc
rtspsrc: Push RTCP caps on the RTCP pads
...
Otherwise we will get not-negotiated later from rtpbin, and will never be able
to send RTCP packets back to the server. Note that error flow returns from the
RTCP pads are ignored, that's why it didn't fail more visible before.
2015-03-05 09:47:29 +01:00
Sebastian Dröge
788074733c
rtspsrc: Make sure to send SEGMENT events on all pads
2015-03-05 09:47:29 +01:00
Krzysztof Kotlenga
e3ca4d1c86
rtspsrc: improve error message when unauthorized
...
Make use of NOT_AUTHORIZED error code instead of falling back to generic
READ error.
https://bugzilla.gnome.org/show_bug.cgi?id=601733
2015-02-24 11:08:27 +02:00
Sebastian Dröge
f4b5107796
Improve and fix LATENCY query handling
...
This now follows the design docs everywhere, especially the maximum latency
handling.
https://bugzilla.gnome.org/show_bug.cgi?id=744106
2015-02-11 13:53:02 +01:00
Tim-Philipp Müller
603c1d71a1
rtspsrc: fix awkward if clause
2015-02-08 12:03:10 +00:00
Wim Taymans
852c040c89
rtspsrc: fix container handling
...
We detect a container correctly now so we need to revert the weird
check there was before.
Use gst_rtspsrc_stream_push_event() to push the caps event on the
right pad.
See https://bugzilla.gnome.org/show_bug.cgi?id=739391
2015-02-03 17:39:10 +01:00
Sebastian Dröge
d5aab81a77
Constify some static arrays everywhere
2015-01-21 09:55:53 +01:00
Aleix Conchillo Flaqué
07c5d1820a
rtspsrc: set PLAYING state after configuring caps
...
We set to PLAYING after we have configured the caps, otherwise we
might end up calling request_key (with SRTP) while caps are still
being configured, ending in a crash.
https://bugzilla.gnome.org/show_bug.cgi?id=740505
2014-12-31 12:49:11 +00:00
Sebastian Dröge
d18b893d28
rtspsrc: Don't dereference NULL if a suitable stream for the AUX element can't be found
...
CID 1258717
2014-12-18 11:51:12 +01:00
Sebastian Dröge
6b2fc2de8d
rtspsrc: Add something to the debug logs if an RTX AUX element can't be added
...
... because the application already has a signal handler set up here.
2014-12-16 16:40:08 +01:00
Matthew Waters
bf0a19bf02
rtspsrc: add retransmission support according to RFC4588
...
Based on the client-rtpaux example
2014-12-16 16:40:08 +01:00
Aleix Conchillo Flaqué
00ca83629b
rtspsrc: fix leak for mikey base64 decoded key-mgmt
...
https://bugzilla.gnome.org/show_bug.cgi?id=740392
2014-11-20 09:15:56 +01:00
Josep Torra
038cc7b004
rtsp: fix build in gst-uninstalled setup
2014-11-06 21:38:43 +01:00
Aleix Conchillo Flaqué
d15ebcbf62
rtspsrc: mikey related memory leaks
...
https://bugzilla.gnome.org/show_bug.cgi?id=739430
2014-10-31 10:03:47 +00:00
Aleix Conchillo Flaqué
bd392d72ee
rtspsrc: set full stream caps on internal src TCP pads
...
Set the complete stream caps on the TCP internal src pads. Otherwise,
ptdemux will not properly detect the caps change.
https://bugzilla.gnome.org/show_bug.cgi?id=737868
2014-10-21 11:33:01 +02:00
Sebastian Dröge
d1c7f2e4d1
rtspsrc: Fix compiler warnings
...
gstrtspsrc.c:7939:11: error: implicit conversion from enumeration type 'GstSDPResult' to different enumeration type
'GstRTSPResult' [-Werror,-Wenum-conversion]
res = gst_sdp_message_new (&sdp);
~ ^~~~~~~~~~~~~~~~~~~~~~~~~~
gstrtspsrc.c:7944:11: error: implicit conversion from enumeration type 'GstSDPResult' to different enumeration type
'GstRTSPResult' [-Werror,-Wenum-conversion]
res = gst_sdp_message_parse_uri (uri, sdp);
~ ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2014-09-26 13:46:16 +03:00
Sanjay NM
f62076e49c
rtsp: clarify expression so operator precedence is clear
...
https://bugzilla.gnome.org/show_bug.cgi?id=736903
2014-09-24 00:48:09 +01:00
Sebastian Dröge
add40de469
rtspsrc: Push the correct segment in TCP mode when seeking
2014-08-05 16:28:04 +02:00
Tim-Philipp Müller
c2614e5253
rtspsrc: fix query leak
...
https://bugzilla.gnome.org/show_bug.cgi?id=733003
2014-07-10 17:19:42 +01:00
Wim Taymans
db1d9444d6
rtspsrc: fix for mikey api change
2014-07-02 16:01:47 +02:00
Wim Taymans
98a4ee0f92
rtspsrc: pass the stream id when asking for crypto params
...
This way the app can choose different parameters for each stream.
2014-06-19 16:17:23 +02:00
Aleix Conchillo Flaqué
7ce0ea3946
rtspsrc: add support for key length parameters
...
This patch adds supports for the incoming key management parameters for
encryption and authentication key lengths.
It also adds a new signal request-rtcp-key that allows the user to
provide the crypto parameters and key for the RTCP stream.
https://bugzilla.gnome.org/show_bug.cgi?id=730473
2014-06-19 16:11:19 +02:00
Aleix Conchillo Flaqué
782d65cab1
rtspsrc: always use a random ssrc for the internal session
...
Use a random SSRC different than 0 for the internal session SSRC.
https://bugzilla.gnome.org/show_bug.cgi?id=730212
2014-05-16 16:58:44 +02:00
Vincent Penquerc'h
a846e84349
rtspsrc: remove duplicate test
...
item was dereference previously.
While there, reorder some test for faster early out.
Coverity 1139844
2014-05-02 14:06:25 +01:00
Tim-Philipp Müller
c9597298f9
docs: remove outdated and pointless 'Last reviewed' lines from docs
...
They are very confusing for people, and more often than not
also just not very accurate. Seeing 'last reviewed: 2005' in
your docs is not very confidence-inspiring. Let's just remove
those comments.
2014-04-26 23:35:17 +01:00
Wim Taymans
5b9945e0a6
rtspsrc: update for new MIKEY API
2014-04-04 17:38:14 +02:00
Wim Taymans
6210cbe1e2
rtspsrc: send sender SSRC in the MIKEY message
...
Allocate a new SSRC for our RTCP messages back to the server and set
this in the MIKEY message.
2014-04-03 17:40:01 +02:00
Wim Taymans
4f641ef18b
rtspsrc: make random number for the CSB
...
As recommended in the RFC
2014-04-03 17:39:30 +02:00
Wim Taymans
f932da3be6
rtspsrc: don't put spaces in keymgmt header
2014-04-03 12:21:27 +02:00
Wim Taymans
2edd450369
rtspsrc: create and send the RTCP encryption key
...
Create and make a key for encrypting the RTCP packets back to the server
and wrap this in a MIKEY message that we send as a header in the SETUP
request.
2014-04-03 12:21:27 +02:00
Wim Taymans
a52b7eadfd
rtspsrc: free the srtpdec element
2014-04-03 12:18:39 +02:00
Wim Taymans
f0f9451523
rtspsrc: cleanup stream_free function
...
There is no reason to NULL all fields, we will free the stream anyway.
2014-04-03 12:16:25 +02:00
Wim Taymans
e7c8fa1127
rtspsrc: only expose streams on dataflow
...
Only probe on buffers, we don't want to expose the streams on events.
2014-03-25 11:44:27 +01:00
Wim Taymans
3b497bf7d5
rtspsrc: copy sticky events to ghostpad
...
When we expose internal pads as ghostpads, first copy the sticky events
so that we have the caps and segment etc.
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=724712
2014-03-25 11:36:40 +01:00
Wim Taymans
67f3113759
rtspsrc: srtp handling
2014-03-25 10:23:24 +01:00
Wim Taymans
4846be1491
rtspsrc: set SSRC on caps if known
2014-03-25 10:23:00 +01:00
Wim Taymans
5ec8c96966
rtspsrc: put caps on udpsrc instead of using the signals
...
Try to avoid using the request-pt-map to get caps but set them directly
on the udpsrc element. That way, the caps get nicely transformed as they
pass through the different elements in the rtpbin, including the AUX and
decoder/encoder elements.
2014-03-24 17:07:06 +01:00
Wim Taymans
2b59828e0b
rtspsrc: use profile to set rtcp caps
...
Use the negotiated profile to set x-rtcp or x-srtcp caps
2014-03-24 15:35:09 +01:00
Wim Taymans
a7b55d7687
rtspsrc: set udpsrc to READY
...
READY is enough to allocate ports now
2014-03-24 15:34:26 +01:00
Wim Taymans
a4f6f963ec
rtspsrc: free caps in ptmap array
...
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=726696
2014-03-24 14:35:01 +01:00
Wim Taymans
d6c5fbc87c
rtspsrc: handle NULL rtpmap and parse error better
2014-03-20 11:12:51 +01:00
Wim Taymans
224239096d
rtspsrc: skip streams with same control url
...
Keep track of what streams we did the SETUP for. We only need to
configure caps, wait for pads and push events on setup streams. We can
remove the disabled state of the stream and simplify some checks.
After we setup a stream, skip the other streams that have the same
control url. Use a skipped flag to mark streams that should be skipped.
2014-03-06 12:30:54 +01:00
Wim Taymans
3b27fc2f0f
rtspsrc: remove obsolete code
2014-03-06 12:30:54 +01:00
Wim Taymans
27d883fe64
rtspsrc: just use the SDP index as the stream id
...
Use the index of the media stream in the SDP as the stream id instead of
keeping a separate counter.
2014-03-06 12:30:54 +01:00
Wim Taymans
99a9d2873c
rtspsrc: handle NULL control urls better
2014-03-05 15:44:25 +01:00
Alessandro Decina
c4bf6e8b7e
rtspsrc: fix seeking
...
Call gst_rtspsrc_connection_flush (src, FALSE) to reset connections as
non-flushing before sending PAUSE and PLAY with the new npt range. Without this
patch, those commands would fail with EINTR as the connections were still
flushing.
2014-03-05 11:39:09 +01:00
Wim Taymans
70de0e4e99
rtspsrc: Add support for multiple payload types
...
A media stream can have multiple payload types. Parse all the payload
types and collect the caps information. We then have to store the
pt<->caps mapping instead of 1 pt and 1 caps.
Parse the profile from the SDP and use that to negotiate the transport
instead of always using AVP.
Rework how we do some tweaks for ASF and Realmedia.
2014-03-04 16:40:34 +01:00
Wim Taymans
dbe92c9147
rtspsrc: refactor payload handling
2014-03-04 11:34:39 +01:00
Santiago Carot-Nemesio
b9a953161f
rtspsrc: Fix deadlock when task creation is no successful
...
https://bugzilla.gnome.org/show_bug.cgi?id=725124
2014-02-25 10:10:31 +01:00
Aleix Conchillo Flaqué
62f5a27416
rtspsrc: add tls-database property
...
Add support for a new property: tls-database. If the property is set,
the certificate database will be given to the rtsp connection if TLS
protocol is being used. If the server certificate can't be verified with
the default database, this additional database will be used.
https://bugzilla.gnome.org/show_bug.cgi?id=724396
2014-02-20 20:03:40 +01:00
Sebastian Dröge
8054cd5df3
Revert "rtspsrc: Proxy rtpjitterbuffer do-retransmission property"
...
This reverts commit 9f7b1128b1
.
This should be handled automatically be rtspsrc if the AVPF profile
is used, and manual enabling of it can be done with the new-manager
signal.
2014-01-24 12:37:39 +01:00
Wim Taymans
43feb82feb
rtspsrc: add signal to notify of new manager
...
So that you can configure and connect to signals on the rtpbin.
See https://bugzilla.gnome.org/show_bug.cgi?id=722866
2014-01-24 10:22:59 +01:00
Aleix Conchillo Flaqué
9f7b1128b1
rtspsrc: Proxy rtpjitterbuffer do-retransmission property
...
https://bugzilla.gnome.org/show_bug.cgi?id=722866
2014-01-24 09:14:59 +01:00
Wim Taymans
2e9e80badf
rtspsrc: use new method to get media-type
...
Use the new method to get the media type of a transport.
2014-01-07 15:04:02 +01:00
Wim Taymans
bf878d75d1
rtspsrc: use aggregate control for PLAY/PAUSE/TEARDOWN
...
Use the aggregate control instead of the original request url to perform
PAUSE/PLAY and TEARDOWN.
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=721003
2013-12-26 11:27:30 +01:00
Tim-Philipp Müller
28f524a551
rtspsrc: fix 'make check'
...
Fix generic/states check. Also, g_return_if_fail() is
not for internal state checking.
2013-11-18 17:13:49 +00:00
Tim-Philipp Müller
d506409af5
docs: get rid of 'Since: 0.10.x' markers
...
And some gtk-doc markup fixes.
2013-11-18 14:47:35 +00:00
Sebastian Dröge
9ae6981578
rtspsrc: Use the synced buffer mode in auto mode if a clock provider is in the SDP
2013-11-13 10:54:19 +01:00
Rico Tzschichholz
b137f79581
rtsp: Add missing gio-2.0 deps and includes
2013-11-02 23:12:13 +01:00
Aleix Conchillo Flaque
82b8374af8
rtspsrc: allow setting tls certificate validation flags
...
Added a new property "tls-validation-flags". If the url transport is
TLS, the validation flags will be set to the rtsp connection.
https://bugzilla.gnome.org/show_bug.cgi?id=711230
2013-11-01 16:47:36 +01:00
Wim Taymans
e96f8f519c
rtspsrc: proxy new buffer mode
2013-10-31 10:38:35 +01:00
Wim Taymans
8c5ce0dbdc
rtspsrc: also go into the loop function after connect
...
When we have opened the stream, go into the loop function so that we can
receive messages from the server.
2013-09-27 15:08:31 +02:00
Wim Taymans
6095e2e859
rtspsrc: disable checks when linking pads
...
We know the pad links will work (and we don't check the return value
anyway).
2013-09-25 17:42:02 +02:00
Wim Taymans
9f9bcbc405
rtspsrc: only wait if we flushed
...
Only wait for the STREAM_LOCK when we flushed something when sending
a command for PAUSED or PLAYING.
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=707611
2013-09-09 15:13:46 +02:00
Wim Taymans
7b2e002879
rtspsrc: return when a flush was issued
...
Make gst_rtspsrc_loop_send_cmd() return TRUE when the current
action has been flushed
2013-09-09 15:13:46 +02:00
Tim-Philipp Müller
1dfc1f2686
Don't use setlocale in plugins()
...
Only apps should call setlocale(), not libraries.
2013-09-01 21:18:38 +01:00
Youness Alaoui
e22f7e91c4
rtspsrc: Fix response argument in handle-request signal
2013-08-21 09:06:02 +02:00
Youness Alaoui
6636efd31a
rtspsrc: Add sdes property and proxy it to rtpbin
2013-08-21 09:06:02 +02:00
Sebastian Dröge
282afae244
rtspsrc: Only free GCheckSum after its last usage
...
https://bugzilla.gnome.org/show_bug.cgi?id=705760
2013-08-13 12:44:11 +02:00
Tim-Philipp Müller
7272dec5fe
rtpdec: use generic marshaller
2013-08-04 11:20:41 +01:00
Sebastian Dröge
169b490664
rtspsrc: Add support for group-id in the stream-start event
2013-07-22 15:30:13 +02:00
Wim Taymans
ab24598443
rtspsrc: avoid some strdup
2013-07-02 11:13:25 +02:00
Wim Taymans
7c950ef3f2
rtspsrc: add select-stream signal
...
Add a signal to let the app select what streams will be selected.
See https://bugzilla.gnome.org/show_bug.cgi?id=634419
2013-07-02 10:40:35 +02:00
Wim Taymans
2d276e1bcb
rtspsrc: avoid strdup
2013-07-02 10:40:35 +02:00
Wim Taymans
1db7e62060
rtspsrc: add signal to notify of the SDP
...
This way, the app can look and modify the SDP.
2013-07-01 17:31:30 +02:00
Wim Taymans
3289a2963b
rtspsrc: reset-sync before play
...
Call reset-sync on the rtpbin before we go to playing. This makes us require SR
packets for all streams again before we attempt to sync them. If we don't reset,
it might be that we combine SR packets from before and after the PAUSE/PLAYING
state change and end up with huge bogus offsets.
2013-06-27 17:02:14 +02:00
Wim Taymans
bb9d42b976
rtspsrc: avoid some flushes
2013-06-26 14:58:53 +02:00
Wim Taymans
f39ef2ab68
rtspsrc: handle data message when waiting for reply
...
When we are waiting for a server reply, handle data messages instead of
ignoring them.
2013-06-26 14:41:36 +02:00
Wim Taymans
61219dc6ed
rtspsrc: handle data messages in separate method
...
Refactor and make a method to handle a data message.
2013-06-26 14:41:36 +02:00
Wim Taymans
a4be0c6de3
rtspsrc: add some more docs to handle-request signal
...
See https://bugzilla.gnome.org/show_bug.cgi?id=702705
2013-06-25 20:36:18 +02:00
Youness Alaoui
52e440c91b
Send a clock_provide message on the bus when we get a netclock
2013-06-25 14:50:47 +02:00
Youness Alaoui
547df8e14f
rtspsrc: Expose use-pipeline-clock property
2013-06-25 14:50:33 +02:00