Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Rework scheduling in socket loop #1698

Merged
merged 2 commits into from
Jun 2, 2024
Merged

Rework scheduling in socket loop #1698

merged 2 commits into from
Jun 2, 2024

Conversation

huitema
Copy link
Collaborator

@huitema huitema commented Jun 1, 2024

Issue #1697 describes a failure mode of real time communication, with series of apparently "suspended" intervals. These effects may have multiple cause. One of these events happens when both ends are attempting to send high definition video. It seems that the code can become locked into either sending a large number of packets without spending time receiving, or receiving a large number of packets without spending time sending. This PR adds limits to how many packets can be received without sending something, or sent without attempting to receive the latest packet.

The PR also includes updates to the "mediatest" test code, to better simulate the effects of Wi-Fi suspension. That code was instrumental in pointing out that something else than WI-Fi might be creating the problem.

@huitema
Copy link
Collaborator Author

huitema commented Jun 2, 2024

@suhasHere I rewrote the comments in the code for clarity.

@huitema huitema merged commit 17919db into master Jun 2, 2024
11 checks passed
@huitema huitema deleted the reproduce-20-suspend-bug branch June 2, 2024 18:17
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants