nextcloud / nextcloud/spreed

Optimize camera resolution

Open
#16,266 2 comments 5 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

feature: call 📹 feature: frontend 🖌️ feature: WebRTC 🚡 papercut
Dominant language
JavaScript
Stars
2.2k
Forks
586
Avg merge
18h 27m
Merged PRs (30d)
333

Description

Known issue

  • Some servers are set to 256kb/s for video streams
  • That does not fit Low+Medium quality of a simulcast
  • So only Low gets send which is very bad perception-wise
  • We should therefore:
    • Check that the default resolution we ask from the browsers fits into the default maxstreambits of the HPB and if needed increase that to be at least of some quality
    • Optimize the resolution based on known maxstreambits when received from the HPB: https://github.com/strukturag/nextcloud-spreed-signaling/pull/1099
    • Work together with the HPB to allow more maxstreambits in 1-1 cc @fancycode
    • Work together with the HPB to allow a "optimal streambits per conversation", so that a room could e.g. get 10mbps, if one person is only streaming video, everyone sees them in full hd, if 8 people have the video on, everyone gets ~1.25mbps, if 40 people have video on, the math would be 0.25 mbps, but a minimum should be retained to at least fit the Low quality

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

No files or tests are named. Start by tracing where browser camera resolution and HPB maxstreambits are handled, then review nextcloud-spreed-signaling PR 1099; completion requires an agreed resolution strategy and coordination with the HPB for the listed simulcast and conversation bandwidth cases.

Written by the indexing model from the issue text.

Assessment

Tech stack
javascript
Domain
audio-video-rtc, performance
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Quiet
Clarity
Needs clarification
Newbie friendliness
32/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.