Can audio encoders target quality w/o caring about bit rate/file size?, [OP = softrunner / split from “IETF Opus codec now ready for testing”] |
Can audio encoders target quality w/o caring about bit rate/file size?, [OP = softrunner / split from “IETF Opus codec now ready for testing”] |
Feb 14 2013, 02:33
Post
#1
|
|
|
Group: Members Posts: 48 Joined: 19-July 12 Member No.: 101579 |
I don't know weather it is possible for encoder to do such an analysis of a source audio, but it would be great it yes. It's only a matter of finding the right formula/algorithm.x264 video encoder has encoding mode called Constant Rate Factor. In this mode number (16, 17, etc) is used to define desired quality (lower - better quality and higher bitrate), and encoder does not care about bitrate, only about keeping rate factor constant. It is a question, why nobody has invented something similar for audio encoding (except lossyWAV, which needs too much bitrate for acceptable quality)? ---------------- Opus 1.1 Alpha has some bugs, which can be found using samples from thread High Frequency Listening Test Samples. For example, at 16-24 kbps Opus gives this: ![]() and for 32-40 kbps it gives this: ![]() For samples 1_12kHz, 1_20kHz, 2_8kHz, 2_12kHz and 2_20kHz Opus sounds wrongly even at 512 kbps. Full set of files is here (problematic sampes are marked with exclamation mark). Hope, developers will use this samples in their work. This post has been edited by softrunner: Feb 14 2013, 02:34 |
|
|
|
![]() |
Feb 14 2013, 12:11
Post
#2
|
|
![]() Group: Members Posts: 239 Joined: 9-February 03 Member No.: 4921 |
x264 video encoder has encoding mode called Constant Rate Factor. In this mode number (16, 17, etc) is used to define desired quality (lower - better quality and higher bitrate), and encoder does not care about bitrate, only about keeping rate factor constant. It is a question, why nobody has invented something similar for audio encoding (except lossyWAV, which needs too much bitrate for acceptable quality)? I think every encoder with real vbr (not abr) does that? Lame has V(0-9), QT AAC has --tvbr (0-127), Vorbis has -q((-2)-10). The bitrate may vary a lot with these settings between different songs/genres. |
|
|
|
Feb 14 2013, 21:22
Post
#3
|
|
|
Group: Members Posts: 4129 Joined: 2-September 02 Member No.: 3264 |
VBR gives you constant quality.
Having a file with two different quality levels is not what VBR is meant to do. I think to have that work you'd have to have some kind of filter or processing that attempted to classify the signal as audio or music and then adjusted the encoder's parameters from frame to frame. Its probably not too hard to do, but its also a very strange thing to want to implement so maybe no one has done so. |
|
|
|
Feb 16 2013, 02:28
Post
#4
|
|
|
Group: Members Posts: 48 Joined: 19-July 12 Member No.: 101579 |
I think to have that work you'd have to have some kind of filter or processing that attempted to classify the signal as audio or music and then adjusted the encoder's parameters from frame to frame. Its probably not too hard to do, but its also a very strange thing to want to implement so maybe no one has done so. Yes, something like this, and it is the most desired thing to have, because it frees user from checking every separate file (set of files) in affort to define which bitrate to use. Like for x264 video encoder, he says "I want rate factor 21.00" and he gets it - the same quality for every input file, independently on what content is there - just a voice, simple piano music, rock/pop music, electronic music or something else. |
|
|
|
![]() ![]() |
|
Lo-Fi Version | Time is now: 19th May 2013 - 18:39 |