Skip to main content

Notice

Please note that most of the software linked on this forum is likely to be safe to use. If you are unsure, feel free to ask in the relevant topics, or send a private message to an administrator or moderator. To help curb the problems of false positives, or in the event that you do find actual malware, you can contribute through the article linked here.
Topic: Bounty for Ogg Vorbis bitrate peeling posted (Read 11608 times) previous topic - next topic
0 Members and 2 Guests are viewing this topic.

Bounty for Ogg Vorbis bitrate peeling posted

Hi, a bounty for Ogg Vorbis bitrate peeling has been posted on Launchpad.net:
Ogg Vorbis Bitrate Peeling Bounty

The bounty says:

Ogg Vorbis bitrate peeling has been a topic brought up time and again to combat MP3 enthusiasts. But this feature does not actually exist, only the mere possibility abounds. This bounty is set to change that. Any (optionally transcoded) Vorbis stream can be losslessly re-encoded to a lower quality setting and resulting streams would be identical or nearly identical to a stream generated by encoding the original source to the selected quality.

The peeler must meet the following criteria:
* Any (optionally transcoded) Vorbis stream can be losslessly re-encoded to a lower quality setting.
* Resulting streams would be identical or nearly identical to a stream generated by encoding the original source to the selected quality.
* This process is reasonably fast (that is, significantly faster than re-encoding from source).
The following must also be accomplished to claim this bounty:
* The encoding libraries must be updated to create peelable Vorbis streams natively.
* Old Vorbis streams must be peelable already, or convertible with a utility in order to be made peelable.
* If older streams are not natively peelable, old unpeelable Vorbis streams must be identifiable and discernible from peelable streams in such a way as to facilitate transcoding streams from the old format.
All work submitted must be reintegrated into the standard reference encoder from Xiph and released under their license (or any license nominated by them).

Anyone is free to contribute!!!

Bounty for Ogg Vorbis bitrate peeling posted

Reply #1
Quote
The peeler must meet the following criteria:
* Any (optionally transcoded) Vorbis stream can be losslessly re-encoded to a lower quality setting

What does that mean? Something like Wavpack hybrid, where you can keep a difference file?
"We cannot win against obsession. They care, we don't. They win."

Bounty for Ogg Vorbis bitrate peeling posted

Reply #2
"losslessly re-encoding to a lower quality level"

WTF?! -- That doesn't make any sense!

edit:
btw: the bounty (or a similar one) does exist for a long time.


Sebi

Bounty for Ogg Vorbis bitrate peeling posted

Reply #3
I do understand what bit rate peeling is, I was just wondering what was meant with the term losslessly. But maybe I'm just reading too much in it.
"We cannot win against obsession. They care, we don't. They win."

Bounty for Ogg Vorbis bitrate peeling posted

Reply #4
Isn't it just pertaining to the requirement that the conversion cannot include (much) further error introduction?  I.e.: that the converted file must be (almost) equivalent to an encode at that quality from a lossless file?

Edit:  I guess the above statement is a bit obvious.

I suppose lossless is used in the context:

Lossy transcoded to lossy is "lossy".  Lossy bit peeled to lossy is "lossless".

I.e.: the conversion is lossless, not the format. 

[span style='font-size:8pt;line-height:100%']I think I got there in the end... didn't I?[/span]
I'm on a horse.

Bounty for Ogg Vorbis bitrate peeling posted

Reply #5
Quote
I do understand what bit rate peeling is, I was just wondering what was meant with the term losslessly. But maybe I'm just reading too much in it.
[a href="index.php?act=findpost&pid=337133"][{POST_SNAPBACK}][/a]

I understand it this way: A stream encoded with 256kbps and then peeled to 128kbps has to sound the same/comparable to a stream encoded with 128kbps right away. Then the quality of both 128kbps streams is ~equal and nothing is lost. But probably they even mean that both resulting encodings have to be bitwise identical, which is more like what the concept of losslessness is about.

Bounty for Ogg Vorbis bitrate peeling posted

Reply #6
Quote
I do understand what bit rate peeling is, I was just wondering what was meant with the term losslessly. But maybe I'm just reading too much in it.
[a href="index.php?act=findpost&pid=337133"][{POST_SNAPBACK}][/a]

I think they meant "without re-encoding", really. Basically it's just a sort of dense way of describing bitrate peeling.

Bounty for Ogg Vorbis bitrate peeling posted

Reply #7
Aoyumi (if you are reding this thread) what do you think about it? Dou you think that it is theoretically possible to develop a peeler (which will produce better files than transcoded files) without breaking Ogg Vorbis compatability? I believe all of us are interested in your opinion.
Ogg Vorbis for music and speech [q-2.0 - q6.0]
FLAC for recordings to be edited
Speex for speech

Bounty for Ogg Vorbis bitrate peeling posted

Reply #8
I wonder if quality similar to a re-encode from original is even technically possible. What about things like block length, stereo, etc? If they can't be changed during the peeling process, it may be impossible to reach this goal.
Veni Vidi Vorbis.

Bounty for Ogg Vorbis bitrate peeling posted

Reply #9
Quote
Aoyumi (if you are reding this thread) what do you think about it? Dou you think that it is theoretically possible to develop a peeler (which will produce better files than transcoded files) without breaking Ogg Vorbis compatability? I believe all of us are interested in your opinion.
[a href="index.php?act=findpost&pid=337176"][{POST_SNAPBACK}][/a]

I think that it is necessary to arrange previously between an encoder and peeling software, in order to maintain realistic tone quality.
And especially maintaining quality by the low bit rate looks really difficult...

Bounty for Ogg Vorbis bitrate peeling posted

Reply #10
Quote
...I think that it is necessary to arrange previously between an encoder and peeling software, in order to maintain realistic tone quality...
[a href="index.php?act=findpost&pid=337399"][{POST_SNAPBACK}][/a]


And this arrangment wasn't done in Ogg Vorbis I standard? Do I understand you right way?
Ogg Vorbis for music and speech [q-2.0 - q6.0]
FLAC for recordings to be edited
Speex for speech

Bounty for Ogg Vorbis bitrate peeling posted

Reply #11
Quote
Quote
...I think that it is necessary to arrange previously between an encoder and peeling software, in order to maintain realistic tone quality...
[a href="index.php?act=findpost&pid=337399"][{POST_SNAPBACK}][/a]


And this arrangment wasn't done in Ogg Vorbis I standard? Do I understand you right way?
[a href="index.php?act=findpost&pid=338374"][{POST_SNAPBACK}][/a]

There is nothing which guarantees the quality of peeling to the specification of Ogg Vorbis.
Supplement: In the present encoder, different setup parameters and tuning parameters for every quality mode are used. So, I cannot think that quality is maintainable by simple peeling.

Bounty for Ogg Vorbis bitrate peeling posted

Reply #12
My memory may be failing me, but I seem to remember that some time ago Monty stated that the current encoder would require a rewrite for bitrate peeling to function in the manner that people would like.

 

Bounty for Ogg Vorbis bitrate peeling posted

Reply #13
First of all, thanks to fpi for posting the notification on here. I came here to do so myself and was pleased to see that it had been done already.

I am a little surprised that there was so much debate over the word 'losslessly'. As I say in the bounty:
"I see the 'losslessly' as being connected to the next star, which reads: "Resulting streams would be identical or nearly identical to a stream generated by encoding the original source to the selected quality". I agree that the word doesn't add an awful lot on that reading but it was probably to distinguish this from a method where the Vorbis was decoded to Wav and then re-encoded or other method which would result in quality loss."

As to whether it is possible, I think that the answer must be yes. The Ogg-Vorbis spec, as I understand it, was designed specifically to allow dramatic variation in the encoder methods while still producing files which comply with the original spec. It also seems the opinion of the developers on the Vorbis mailing list that this can be done.

My final comment is a request to those who are reading this without the technical ability to attempt it (like myself); it seems that there have been over 1400 views of this topic and I assume that that that indicates an interest in the idea. If half of those people had pledged an additional $2 to the bounty, it would now be worth over a thousand dollars and people would be clambering over one another to attempt it. So I ask you to get yourself a launchpad account, add your $10 or so and help us add one more feature to wave in the faces of other music formats.

Bounty for Ogg Vorbis bitrate peeling posted

Reply #14
Quote
the current encoder would require a rewrite for bitrate peeling to function in the manner that people would like.
[a href="index.php?act=findpost&pid=338492"][{POST_SNAPBACK}][/a]

And if it has to be rewriten, it should be retuned again  .  Right?
Ogg Vorbis for music and speech [q-2.0 - q6.0]
FLAC for recordings to be edited
Speex for speech

Bounty for Ogg Vorbis bitrate peeling posted

Reply #15
Quote
If half of those people had pledged an additional $2 to the bounty, it would now be worth over a thousand dollars and people would be clambering over one another to attempt it.

But... maybe you are asking a lot more than you are bargaining for. If I'm reading Aoyumi correctly, to make bit rate peeling work (quality wise) you must not start with creating a peeler, but with creating an encoder that produces files so that they are suitable for peeling without compromising too much on quality.

Quote
So I ask you to get yourself a launchpad account, add your $10 or so and help us add one more feature to wave in the faces of other music formats.

I doubt its a good idea to give money for a feature, just so you can have more flame-wars.
"We cannot win against obsession. They care, we don't. They win."

Bounty for Ogg Vorbis bitrate peeling posted

Reply #16
My dreamresult of this would be a layered stream.

Say you have 4 layers on a high-qualitystream 16, 48, 96, 160 ABR/VBR.

By default your player makes use of maximum transmittable stream but lagging occurs that would normally yield in a bufferstate. In this case the player would ignore the one or two top layer (s) to maintain a stead flow to prevent a full-halt situation by making use of the bitrate-peeling technology.

I would love to see such an implementation in both audio and video formats since digital broadcast with faulty/insufficient BW gives the magic effect of completely ceasing to transmit for x seconds.

Bounty for Ogg Vorbis bitrate peeling posted

Reply #17
Hmm, that does give me a (poorly thought-out) idea though.  A vorbis stream, conceptually, consists of a floor and a residue which are encoded separately, right?  Well how about a peelable stream where the floor of the higher-bitrate stream is assumed to be the floor+residue of the lower-bitrate stream, nestedly?  While this doesn't conform to the vague idea of a peelable stream simply consisting of a stream whose packets you truncate at an arbitrary point (where did this idea come from?), it does conform to the higher-level idea of packets of varying, incremental compexity, and frankly whatever peelable Vorbis streams look like (without having seen the Vorbis spec concessions to peelability), the complexity has to be hidden somewhere, be it at the 'server' (most likely) or the decoder - someone has to make the decisions about how 'complex' to make a packet and what the mechanism for complexity-stripping is, which really isn't covered by vorbisfile.

Bounty for Ogg Vorbis bitrate peeling posted

Reply #18
David, this pretty much resembles something i had in mind (Though, I consider 4 layers to be far too complicated ... Adding one layer is hard enough). Since Vorbis uses multistage vector quantizing this could be done via a (very) smart encoder you could use like this:

oggenc -q3.5,6 something.wav

which generates a quality 6 stream which can be easily peeled to a quality 3.5 stream. To get it *easily peelable* the encoder would add some meta informations about the VQ coding passes lilke "up to 3 passes are needed for quality level 3.5 and all 5 passes are needed for quality level 6".

Then, a peeler just has to chop off unwanted VQ coding stages.

But I really don't think this is going to happen (although I consider this approach to be one of the most realistic ones). If someone manages to get it working don't expect the peeled 3.5-quality stream (in this example) to be at a similar bitrate compared to the nativly encoded q3.5 version.

Sebi

edit:

I guess, the first incarnation of this would be also pretty limited in terms of quality levels. You probably have to choose a strategy with fixed quality levels like I gave in the example if you want oggenc to produce such a thing.

Anyhow, it seems that the amount of work that needs to be done here can NOT be justified. The more you know about the internals of Vorbis the more desillusionising it is.

Bounty for Ogg Vorbis bitrate peeling posted

Reply #19
Actually a similar project was once started with an idea of creating a two-layered format with the applicable layer put as arbitrary data.
This project was meant to work with MP3 base + MPC-based anc . data.
Players that did not support this format would simply make use of the standard MP3 data whereas players with support would make use of the fullrange data and simply be of greater quality.



The outcome of early experiments made it very interesting but development stopped due to lack of time and involvement from the party maintaining this project.

Perhaps in the end Vorbis is indeed not the format in which this could be implemented but the idea surely is possible on a format with greater structure.

Bounty for Ogg Vorbis bitrate peeling posted

Reply #20
I noticed that someone quoted this part on the vorbis mailing list:
Quote
Anyhow, it seems that the amount of work that needs to be done here can NOT be justified. The more you know about the internals of Vorbis the more desillusionising it is.
[a href="index.php?act=findpost&pid=338981"][{POST_SNAPBACK}][/a]

To clarify:
I don't consider the work that needs to be done justifiable because it'll be a tough job and most likely won't meet most people's high expectations -- thus resulting in something hardly anyone will use.

Of course this is just my opinion and the way how I see it.
I'd be happy to be proven wrong.

Sebi

Bounty for Ogg Vorbis bitrate peeling posted

Reply #21
Quote
a peeler just has to chop off unwanted VQ coding stages.


This is how I always understood the process after rereading the documentation about x times. You would need to write a algorithm that can iterate through the VQ partition and remove certain residue data to peel down to the desired level. Wouldn't this require an arbitrarily large codebook though? Essentially that means going from -q 6 to -q 2 would not be possible, but something like -q 4 to -q 2 would be.  Some sort of secondary noise shaping algorithm might be needed to (maybe that's why Noise Normalization is there?).  I could see this working in real-time streaming application with a media server (decoder drops packets in real-time), but it would be tough standalone (seeing that the Vorbis I spec is frozen). Don't forget that the channels are coupled strictly be residue data too. It can be done  . Vorbis 2.0 spec would greatly benefit from this though, especially if the packets need to be reordered in the codebook header's, etc.

Quote
I don't consider the work that needs to be done justifiable because it'll be a tough job and most likely won't meet most people's high expectations -- thus resulting in something hardly anyone will use.


You could say that again. 


Quote
And this arrangment wasn't done in Ogg Vorbis I standard? Do I understand you right way?


There is a lot of stuff that could greatly be accomplished that wasn't done in the Vorbis I spec.
budding I.T professional