Video encoder bitrate control in case frame rate is not provided
Nobody has claimed this yet.
- Dominant language
- HTML
- Stars
- 1.3k
- Forks
- 194
- Avg merge
- 1d 13h
- Merged PRs (30d)
- 3
Description
Experiment based on https://peaceful-genie-41c2b6.netlify.app/codec-compare.html and https://bugs.webkit.org/show_bug.cgi?id=274822.
Chrome and Safari behave roughly the same in terms of bitrate control when bitrate and frame rate are provided.
I haven't checked Firefox.
Chrome seems to make sure the bitrate is applied consistently whatever the actual frame rate is, be it 30fps or 100fps.
When frame rate is not provided, Safari uses a default frame rate (30 fps).
If the frame rate is above this default frame rate, Safari actual bitrate per second is above the given bitrate.
There is a note in the spec that Authors are encouraged to provide both bitrate and frame rate.
Given this has interop impact, I wonder what the intent of the specification is when frame rate is not provided, or if the actual frame rate is far from the configured frame rate (much lower or much higher).
Should we have more implementation guidelines in that area?
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
Start by reading the linked codec comparison and WebKit issue, then review the WebCodecs specification language about bitrate and frame rate. Compare the described Chrome and Safari behavior, including cases where frame rate is omitted or differs from the actual rate. Done means reaching agreement on the intended behavior and whether implementation guidance or a specification clarification is needed.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- html
- Domain
- api, web-dev
- Issue type
- Documentation
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100