rtspsrc: make all srtp encoder properties explicit

The Session Data Protocol doesn't allow specifying a cipher for the
SRTCP, so it will use the SRTP one. In the "srtpenc" element the cipher
"aes-128-icm" is the default for SRTP and SRTCP, but if we want to have
an SRTCP with the "aes-256-icm" cipher then we also need to set the SRTP
cipher to "aes-256-icm", otherwise "aes-128-icm" will be used instead.

https://bugzilla.gnome.org/show_bug.cgi?id=767799
This commit is contained in:
Aleix Conchillo Flaqué 2016-06-17 12:16:32 -07:00 committed by Josep Torra
parent 33fb50b308
commit 12eb5d6912

View file

@ -2843,6 +2843,10 @@ request_rtcp_encoder (GstElement * rtpbin, guint session,
gst_value_deserialize (&rtcp_auth, str);
gst_structure_get (s, "srtp-key", GST_TYPE_BUFFER, &buf, NULL);
g_object_set_property (G_OBJECT (stream->srtpenc), "rtp-cipher",
&rtcp_cipher);
g_object_set_property (G_OBJECT (stream->srtpenc), "rtp-auth",
&rtcp_auth);
g_object_set_property (G_OBJECT (stream->srtpenc), "rtcp-cipher",
&rtcp_cipher);
g_object_set_property (G_OBJECT (stream->srtpenc), "rtcp-auth",
@ -5971,8 +5975,10 @@ default_srtcp_params (void)
buf = gst_buffer_new_wrapped (key_data, KEY_SIZE);
caps = gst_caps_new_simple ("application/x-srtp",
caps = gst_caps_new_simple ("application/x-srtcp",
"srtp-key", GST_TYPE_BUFFER, buf,
"srtp-cipher", G_TYPE_STRING, "aes-128-icm",
"srtp-auth", G_TYPE_STRING, "hmac-sha1-80",
"srtcp-cipher", G_TYPE_STRING, "aes-128-icm",
"srtcp-auth", G_TYPE_STRING, "hmac-sha1-80", NULL);