Constant bitrate == constant file size?
Nobody has claimed this yet.
- Dominant language
- C
- Stars
- 3.3k
- Forks
- 808
- PR merge metrics
- No merged PRs in 30d
Description
Hi, thanks for contribution!
For a long time I assumed that constant bitrate for opus means constant file size, and using some third party libraries I can achieve this, but for some reason I can't manage to figure out which combination of parameters is needed to maintain same file size while using constant bitrate and different samplerate. For example, I'm trying to encode 16kHz and 48kHz audio on the same 16k bitrate. I've set OPUS_SET_VBR to 0, OPUS_SET_SIGNAL to OPUS_SIGNAL_MUSIC (to use CELT encoder), but resulting files are still different in size (about 25kB for 16kHz audio and about 35kB for 48kHz audio, both files approx. 10 sec long). Which parameters should I also take into account to achieve constant filesize and is it achievable at all?
Contributor guide
No contributing guide indexed for this repository
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 reproducing the reported 10-second encodes at 16 kHz and 48 kHz with the stated 16 kbit/s bitrate, OPUS_SET_VBR set to 0, and OPUS_SET_SIGNAL set to OPUS_SIGNAL_MUSIC. Read the encoder parameter documentation and relevant Opus implementation entry points to determine which settings affect output size. Done means explaining whether equal file sizes are achievable and identifying the required parameters, if any.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- c
- Domain
- audio-video-rtc
- Issue type
- Bug
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 20/100