Bounties: Difference between revisions

From XiphWiki
Jump to navigation Jump to search
Line 32: Line 32:


=== Ogg Vorbis Bitrate Peeling ===
=== Ogg Vorbis Bitrate Peeling ===
It has been mentioned that implementing bitrate peeling requires a lot of work and most likely changes in the encoder. This bounty would include changes to the encoder necessary to implement bitrate peeling, as well as the bitrate peeler itself. The peeler must meet the following criteria:
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.<br />
1. any (optionally "prepared") Vorbis stream can be losslessly re-encoded to a lower quality setting
The peeler must meet the following criteria:<br />
2. resulting streams would be identical or nearly identical to a stream generated by encoding the original source to the selected quality
<ol><li>Any (optionally "prepared") Vorbis stream can be losslessly re-encoded to a lower quality setting</li>
3. this process is reasonably fast (that is, signifigantly faster than re-encoding from source)
<li>resulting streams would be identical or nearly identical to a stream generated by encoding the original source to the selected quality</li>
<li>This process is reasonably fast (that is, signifigantly faster than re-encoding from source)</li></ol>
The following must also be accomplished to claim this bounty:
<ol><li>The encoding libraries must be updated to create "peelable" Vorbis streams natively</li>
<li>Old Vorbis streams must be "peelable" already, or convertable with a utility</li>
<li>Old "unpeelable" Vorbis streams must be identifiable and discernable from "peelable" streams in such a way as to facilitate "transcoding" streams from the old format</li>
<li>All work submitted must be licenced under the GPL or compatable licence (excepting circumstances where other licences conflict)</li></ol>

Revision as of 19:37, 30 September 2004

These are proposed bounty projects, similar to http://gnome.org/bounties/ or the Ghostscript bug bounty program. We don't have the same level of funding but could start a pot with $10-$100 and let people contribute to specific bounties through paypal.


OggVorbis 5.1

5.1 Sound encoding in Ogg Vorbis.

There are two steps here. Simple coupling and lowpass for the .1 channel, and a full set of tuned modes. They should be separate bounties.

Xiph Quicktime Plugin

You have to write a Quicktime Plugin for the Ogg container and the Xiph Codec Family. qtcomponents provides support for Ogg Vorbis and MNG. This could be used as start. Xiph Quicktime Plugin has to support endocding/decoding for:

  • Ogg Media container
  • Support for Chained Ogg Streams
  • Support for Icecast Streams (sending is optional)
  • Support for Xiph Codec Family: Vorbis, Theora, FLAC, Speex, Writ

iTunes encoding support

Encoding support in Apple's iTunes program for Vorbis and FLAC. Speex optional.

iPod playback support

The Linux on iPod project has vorbis decode working (with alternate firmware) at a good fraction of realtime. It should be a small matter of optimization to get it working for useful playback.

FLAC support in libfishsound

libfishsound currently only supports Ogg Vorbis and Ogg Speex to make it support all Xiph audio codecs you have to add FLAC support.

Ogg Vorbis Bitrate Peeling

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.
The peeler must meet the following criteria:

  1. Any (optionally "prepared") Vorbis stream can be losslessly re-encoded to a lower quality setting
  2. resulting streams would be identical or nearly identical to a stream generated by encoding the original source to the selected quality
  3. This process is reasonably fast (that is, signifigantly faster than re-encoding from source)

The following must also be accomplished to claim this bounty:

  1. The encoding libraries must be updated to create "peelable" Vorbis streams natively
  2. Old Vorbis streams must be "peelable" already, or convertable with a utility
  3. Old "unpeelable" Vorbis streams must be identifiable and discernable from "peelable" streams in such a way as to facilitate "transcoding" streams from the old format
  4. All work submitted must be licenced under the GPL or compatable licence (excepting circumstances where other licences conflict)