Opus-tools: Difference between revisions
Jump to navigation
Jump to search
No edit summary |
|||
Line 19: | Line 19: | ||
** Replay gain (but it's important as we want players to actually heed it) | ** Replay gain (but it's important as we want players to actually heed it) | ||
** LPC padding (code for this is very simple, see postfish) | ** LPC padding (code for this is very simple, see postfish) | ||
** In CELT_ONLY Switch the last frame size to the smallest size that will fit the remaining samples (reduces padding overhead, makes sure mixed sizes get tested) | |||
** crop and/or track split arguments (if data outside of the encoded area is available, use that instead of the LPC padding) | ** crop and/or track split arguments (if data outside of the encoded area is available, use that instead of the LPC padding) | ||
** Exposes all sanely exposable parts of the Opus API (important for testing, even if things are hidden) | ** Exposes all sanely exposable parts of the Opus API (important for testing, even if things are hidden) | ||
** Flac input (?; code for this is in oggenc) | ** Flac input (?; code for this is in oggenc) | ||
===Decoder=== | ===Decoder=== |
Revision as of 12:35, 17 August 2011
Opus-tools is a collection of tools for working with opus files currently under development.
Features
- working build system
Encoder
- Robust wav input (steal battle tested code from oggenc, e.g. float and multichannel works)
- Resampling
- bitrate selection
- VBR/CBR/CVBR
- Application selection (audio/voip)
- Mode forcing
- Metadata (emulate oggenc feature set)
- Multichannel
- Muxing delay control (naive usage of libogg will result in 5 second mux delay on silence)
- Not needed in initial release:
- Replay gain (but it's important as we want players to actually heed it)
- LPC padding (code for this is very simple, see postfish)
- In CELT_ONLY Switch the last frame size to the smallest size that will fit the remaining samples (reduces padding overhead, makes sure mixed sizes get tested)
- crop and/or track split arguments (if data outside of the encoded area is available, use that instead of the LPC padding)
- Exposes all sanely exposable parts of the Opus API (important for testing, even if things are hidden)
- Flac input (?; code for this is in oggenc)
Decoder
- Resampling
- Multichannel
- metadata display
- Wav output
- audio playback (libao?) or omit and leave for ogg123
- decodes chained files
- Not needed for the initial release:
- Lookahead limiter (copy from postfish)
- Dither for 16 bit output