GNOME Bugzilla – Bug 720094
srtpdec: "Unable to unprotect buffer" when there are 2 SRTP streams
Last modified: 2013-12-20 15:52:14 UTC
Hello, I am trying to use srtpdec to unprotect 2 SRTP multiplexed streams, that arrived from the same connection, and I get the next problem: <pre> 0:00:05.694461116 30428 0x273e780 DEBUG srtpdec gstsrtpdec.c:606:gst_srtp_dec_clear_streams:<srtpdec0> Cleared 0 streams 0:00:05.694530466 30428 0x2958050 WARN srtpdec gstsrtpdec.c:522:validate_buffer:<srtpdec0> Invalid SRTP packet 0:00:05.694551212 30428 0x2958050 WARN srtpdec gstsrtpdec.c:856:gst_srtp_dec_chain:<srtpdec0> Invalid buffer, dropping 0:00:05.694614731 30428 0x2958050 DEBUG srtpdec gstsrtpdec.c:451:signal_get_srtp_params:<srtpdec0> Caps received 0:00:05.694624854 30428 0x2958050 DEBUG srtpdec gstsrtpdec.c:428:get_stream_from_caps: Got key [0x7f11540093d0] 0:00:05.694631727 30428 0x2958050 INFO srtpdec gstsrtpdec.c:472:init_session_stream:<srtpdec0> Setting RTP policy... 0:00:05.694637044 30428 0x2958050 INFO srtpdec gstsrtpdec.c:475:init_session_stream:<srtpdec0> Setting RTCP policy... 0:00:05.694657790 30428 0x2958050 DEBUG srtpdec gstsrtpdec.c:622:request_key_with_signal:<srtpdec0> New stream set with SSRC 1469956917 0:00:05.694667244 30428 0x2958050 LOG srtpdec gstsrtpdec.c:867:gst_srtp_dec_chain:<srtpdec0:rtp_sink> Received RTP buffer of size 1027 with SSRC = 1469956917 0:00:05.694684773 30428 0x2958050 WARN srtpdec gstsrtpdec.c:890:gst_srtp_dec_chain:<srtpdec0:rtp_sink> Unable to unprotect buffer (unprotect failed code 7) 0:00:05.694691701 30428 0x2958050 WARN srtpdec gstsrtpdec.c:913:gst_srtp_dec_chain:<srtpdec0> Error authentication packet, dropping 0:00:05.694702211 30428 0x2958050 LOG srtpdec gstsrtpdec.c:867:gst_srtp_dec_chain:<srtpdec0:rtp_sink> Received RTP buffer of size 1027 with SSRC = 1469956917 0:00:05.694716489 30428 0x2958050 WARN srtpdec gstsrtpdec.c:890:gst_srtp_dec_chain:<srtpdec0:rtp_sink> Unable to unprotect buffer (unprotect failed code 7) 0:00:05.694723138 30428 0x2958050 WARN srtpdec gstsrtpdec.c:913:gst_srtp_dec_chain:<srtpdec0> Error authentication packet, dropping 0:00:05.694732128 30428 0x2958050 LOG srtpdec gstsrtpdec.c:867:gst_srtp_dec_chain:<srtpdec0:rtp_sink> Received RTP buffer of size 1028 with SSRC = 1469956917 0:00:05.694746171 30428 0x2958050 WARN srtpdec gstsrtpdec.c:890:gst_srtp_dec_chain:<srtpdec0:rtp_sink> Unable to unprotect buffer (unprotect failed code 7) 0:00:05.694752730 30428 0x2958050 WARN srtpdec gstsrtpdec.c:913:gst_srtp_dec_chain:<srtpdec0> Error authentication packet, dropping 0:00:05.694761648 30428 0x2958050 LOG srtpdec gstsrtpdec.c:867:gst_srtp_dec_chain:<srtpdec0:rtp_sink> Received RTP buffer of size 1027 with SSRC = 1469956917 0:00:05.694775539 30428 0x2958050 WARN srtpdec gstsrtpdec.c:890:gst_srtp_dec_chain:<srtpdec0:rtp_sink> Unable to unprotect buffer (unprotect failed code 7) 0:00:05.694782081 30428 0x2958050 WARN srtpdec gstsrtpdec.c:913:gst_srtp_dec_chain:<srtpdec0> Error authentication packet, dropping 0:00:05.694791127 30428 0x2958050 LOG srtpdec gstsrtpdec.c:867:gst_srtp_dec_chain:<srtpdec0:rtp_sink> Received RTP buffer of size 1028 with SSRC = 1469956917 0:00:05.694804424 30428 0x2958050 WARN srtpdec gstsrtpdec.c:890:gst_srtp_dec_chain:<srtpdec0:rtp_sink> Unable to unprotect buffer (unprotect failed code 7) 0:00:05.694810986 30428 0x2958050 WARN srtpdec gstsrtpdec.c:913:gst_srtp_dec_chain:<srtpdec0> Error authentication packet, dropping 0:00:05.694819846 30428 0x2958050 LOG srtpdec gstsrtpdec.c:867:gst_srtp_dec_chain:<srtpdec0:rtp_sink> Received RTP buffer of size 1027 with SSRC = 1469956917 0:00:05.694833061 30428 0x2958050 WARN srtpdec gstsrtpdec.c:890:gst_srtp_dec_chain:<srtpdec0:rtp_sink> Unable to unprotect buffer (unprotect failed code 7) 0:00:05.694839744 30428 0x2958050 WARN srtpdec gstsrtpdec.c:913:gst_srtp_dec_chain:<srtpdec0> Error authentication packet, dropping 0:00:05.694876889 30428 0x2958050 DEBUG srtpdec gstsrtpdec.c:451:signal_get_srtp_params:<srtpdec0> Caps received 0:00:05.694884969 30428 0x2958050 DEBUG srtpdec gstsrtpdec.c:428:get_stream_from_caps: Got key [0x7f11540093d0] 0:00:05.694901980 30428 0x2958050 INFO srtpdec gstsrtpdec.c:472:init_session_stream:<srtpdec0> Setting RTP policy... 0:00:05.694907791 30428 0x2958050 INFO srtpdec gstsrtpdec.c:475:init_session_stream:<srtpdec0> Setting RTCP policy... 0:00:05.694921675 30428 0x2958050 DEBUG srtpdec gstsrtpdec.c:622:request_key_with_signal:<srtpdec0> New stream set with SSRC -1481626588 0:00:05.694930695 30428 0x2958050 LOG srtpdec gstsrtpdec.c:867:gst_srtp_dec_chain:<srtpdec0:rtp_sink> Received RTP buffer of size 182 with SSRC = 2813340708 0:00:05.694941347 30428 0x2958050 WARN srtpdec gstsrtpdec.c:890:gst_srtp_dec_chain:<srtpdec0:rtp_sink> Unable to unprotect buffer (unprotect failed code 7) 0:00:05.694948031 30428 0x2958050 WARN srtpdec gstsrtpdec.c:913:gst_srtp_dec_chain:<srtpdec0> Error authentication packet, dropping 0:00:05.694957664 30428 0x2958050 LOG srtpdec gstsrtpdec.c:867:gst_srtp_dec_chain:<srtpdec0:rtp_sink> Received RTP buffer of size 182 with SSRC = 2813340708 0:00:05.694967889 30428 0x2958050 WARN srtpdec gstsrtpdec.c:890:gst_srtp_dec_chain:<srtpdec0:rtp_sink> Unable to unprotect buffer (unprotect failed code 7) 0:00:05.694974246 30428 0x2958050 WARN srtpdec gstsrtpdec.c:913:gst_srtp_dec_chain:<srtpdec0> Error authentication packet, dropping 0:00:05.694982788 30428 0x2958050 LOG srtpdec gstsrtpdec.c:867:gst_srtp_dec_chain:<srtpdec0:rtp_sink> Received RTP buffer of size 182 with SSRC = 2813340708 0:00:05.694992524 30428 0x2958050 WARN srtpdec gstsrtpdec.c:890:gst_srtp_dec_chain:<srtpdec0:rtp_sink> Unable to unprotect buffer (unprotect failed code 7) 0:00:05.697709122 30428 0x2958050 WARN srtpdec gstsrtpdec.c:913:gst_srtp_dec_chain:<srtpdec0> Error authentication packet, dropping 0:00:05.697733215 30428 0x2958050 LOG srtpdec gstsrtpdec.c:867:gst_srtp_dec_chain:<srtpdec0:rtp_sink> Received RTP buffer of size 62 with SSRC = 1469956917 0:00:05.697753347 30428 0x2958050 WARN srtpdec gstsrtpdec.c:890:gst_srtp_dec_chain:<srtpdec0:rtp_sink> Unable to unprotect buffer (unprotect failed code 7) 0:00:05.697763659 30428 0x2958050 WARN srtpdec gstsrtpdec.c:913:gst_srtp_dec_chain:<srtpdec0> Error authentication packet, dropping 0:00:05.697779944 30428 0x2958050 LOG srtpdec gstsrtpdec.c:867:gst_srtp_dec_chain:<srtpdec0:rtp_sink> Received RTP buffer of size 182 with SSRC = 2813340708 0:00:05.697797307 30428 0x2958050 WARN srtpdec gstsrtpdec.c:890:gst_srtp_dec_chain:<srtpdec0:rtp_sink> Unable to unprotect buffer (unprotect failed code 7) 0:00:05.697807558 30428 0x2958050 WARN srtpdec gstsrtpdec.c:913:gst_srtp_dec_chain:<srtpdec0> Error authentication packet, dropping </pre>
I have been working about this issue and it looks that was caused by Chrome. I was receiving BUNDLE RSTP streams from Chrome and with version 31 the issue does not appear.
So problem solved and was just a broken producer? Otherwise I would guess that MAC state is combined for both streams, but should instead be kept separately.
Yes, I think that the element is OK. If I come across another issue, I will report it. Thanks!!!