mirror of
https://github.com/WinampDesktop/winamp.git
synced 2025-06-14 08:55:46 -04:00
dep: Add cubeb
This commit is contained in:
41
dep/cubeb/TODO
Normal file
41
dep/cubeb/TODO
Normal file
@ -0,0 +1,41 @@
|
||||
TODO:
|
||||
- directsound: incomplete and somewhat broken
|
||||
- osx: understand why AudioQueueGetCurrentTime can return negative mSampleTime
|
||||
- test (and fix) sub-prefill size data playback
|
||||
- report stream delay instead of position; leave position calculation to user
|
||||
- capture support
|
||||
- capture and output enumeration and configuration
|
||||
- also expose default hardware config to allow decisions on speaker layout
|
||||
- prefill occurs at different times in each backend:
|
||||
- pulse prefills async off worker thread after init
|
||||
- coreaudio prefills during init
|
||||
- alsa prefills async after start
|
||||
- expose configured prefill size; may differ from requested latency
|
||||
- solved by exposing stream delay
|
||||
- xruns may occur in user callback but also in audio hardware
|
||||
may need to expose details of hardware xruns to user api
|
||||
- document thread safety
|
||||
- document which calls may block, and when effects take effect
|
||||
- document what's permissible inside callbacks
|
||||
- implement basic channel mapping for surround
|
||||
- vorbis has documented mapping based on channel count (if mapping type ==
|
||||
0) -- http://xiph.org/vorbis/doc/Vorbis_I_spec.html#x1-800004.3.9
|
||||
1 -> M
|
||||
2 -> L, R
|
||||
3 -> L, C, R
|
||||
4 -> L, R, RL, RR
|
||||
5 -> L, C, R, RL, RR
|
||||
6 -> L, C, R, RL, RR, LFE
|
||||
7 -> L, C, R, SL, SR, RC, LFE
|
||||
8 -> L, C, R, SL, SR, RL, RR, LFE
|
||||
>8 -> application defined
|
||||
- wave files with channel count only
|
||||
3 -> L, R, C
|
||||
4 -> L, R, RL, RR
|
||||
5 -> L, R, C, RL, RR
|
||||
6 -> L, R, C, LFE, RL, RR
|
||||
7 -> L, R, C, LFE, RC, SL, SR
|
||||
8 -> L, R, C, LFE, RL, RR, SL, SR
|
||||
- wave files with WAVE_FORMAT_EXTENSIBLE have explicitly mappings, can
|
||||
extract these
|
||||
- implement configurable channel mapping
|
Reference in New Issue
Block a user