Optimize camera resolution
Open
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
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- 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