[asterisk-bugs] [JIRA] (ASTERISK-28420) In WebRTC video call scenario, packet loss lead to frozen video。

Benjamin Keith Ford (JIRA) noreply at issues.asterisk.org
Tue May 21 09:33:47 CDT 2019


     [ https://issues.asterisk.org/jira/browse/ASTERISK-28420?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Benjamin Keith Ford updated ASTERISK-28420:
-------------------------------------------

    Assignee: Aaron An  (was: Unassigned)
      Status: Waiting for Feedback  (was: Triage)

I'm not sure changing the policy count is a solution here. We do checks for the policy within the code as well. I'm guessing when the video experiences a freeze, it never recovers? It remains frozen? It would be worthwhile to look at some debug from Chrome too. You can look at "chrome://webrtc-internals" for graphs that will show packets being lost, received, and things of that nature, and if you start Chrome from the terminal with debug on [1], you can gather some other useful information as well. You may want to pipe the output to a file, it spits out a lot of information!

[1]: https://gist.github.com/ibc/3a10b27812d99c8abd1b

> In WebRTC video call scenario, packet loss lead to frozen  video。
> -----------------------------------------------------------------
>
>                 Key: ASTERISK-28420
>                 URL: https://issues.asterisk.org/jira/browse/ASTERISK-28420
>             Project: Asterisk
>          Issue Type: Bug
>      Security Level: None
>          Components: Resources/res_srtp
>    Affects Versions: 16.3.0
>         Environment: CentOS 7.5
>            Reporter: Aaron An
>            Assignee: Aaron An
>              Labels: webrtc
>
> In WebRTC video call scenario, calls from Chrome to asterisk. When network is pool, asterisk reports warnings like "SRTP unprotect failed" "SRTP try to re-create" and then the video is frozen, the same time asterisk console report "SRTCP unprotect failed on SSRC xxx" every 1-2 seconds until the call ended. I have investigated this issue for several days and find that there is something wrong with the srtp re-create process. The srtp->policy is store in the hash buckets which is initialized with 5.  This should change from 5 to 1 to avoid indeterminacy policy order when re-create the srtp session。
> in res_srtp.c function res_srtp_new()
> srtp->policies = ao2_t_container_alloc_hash(AO2_ALLOC_OPT_LOCK_MUTEX, 0, 5,
> 		policy_hash_fn, NULL, policy_cmp_fn, "SRTP policy container");



--
This message was sent by Atlassian JIRA
(v6.2#6252)



More information about the asterisk-bugs mailing list