annotate src/alsa-ng/TODO @ 3179:0c4359baee34

alsa-ng: Update TODO.
author William Pitcock <nenolod@atheme.org>
date Thu, 11 Jun 2009 05:22:22 -0500
parents cb93b500a364
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
3179
0c4359baee34 alsa-ng: Update TODO.
William Pitcock <nenolod@atheme.org>
parents: 3171
diff changeset
1 The following things are not implemented yet:
3169
62bc6d9b6de0 alsa-ng: Add a TODO.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
2
62bc6d9b6de0 alsa-ng: Add a TODO.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
3 - prerolling: this means that it is possible for buffer underruns occasionally.
62bc6d9b6de0 alsa-ng: Add a TODO.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
4 we want to preroll at least 50% of buffer_size before actually writing anything
62bc6d9b6de0 alsa-ng: Add a TODO.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
5 to the soundcard.
3170
5166d34025cc alsa-ng: Add some niceties to the TODO.
William Pitcock <nenolod@atheme.org>
parents: 3169
diff changeset
6
5166d34025cc alsa-ng: Add some niceties to the TODO.
William Pitcock <nenolod@atheme.org>
parents: 3169
diff changeset
7 The following things would be nice:
5166d34025cc alsa-ng: Add some niceties to the TODO.
William Pitcock <nenolod@atheme.org>
parents: 3169
diff changeset
8
5166d34025cc alsa-ng: Add some niceties to the TODO.
William Pitcock <nenolod@atheme.org>
parents: 3169
diff changeset
9 - use HAL (or DeviceKit) to match up devices and mixer settings. The old way sucks
5166d34025cc alsa-ng: Add some niceties to the TODO.
William Pitcock <nenolod@atheme.org>
parents: 3169
diff changeset
10 majorly, I want to be able to just choose a soundcard and have it set up the mixer
5166d34025cc alsa-ng: Add some niceties to the TODO.
William Pitcock <nenolod@atheme.org>
parents: 3169
diff changeset
11 the right way on it's own. This is 2009, and this should be possible.
5166d34025cc alsa-ng: Add some niceties to the TODO.
William Pitcock <nenolod@atheme.org>
parents: 3169
diff changeset
12
3179
0c4359baee34 alsa-ng: Update TODO.
William Pitcock <nenolod@atheme.org>
parents: 3171
diff changeset
13 (right now we don't use HAL/DeviceKit, but have a trivial function to determine what
0c4359baee34 alsa-ng: Update TODO.
William Pitcock <nenolod@atheme.org>
parents: 3171
diff changeset
14 mixer settings we use. pcm:default seems like a good choice for finding the system
0c4359baee34 alsa-ng: Update TODO.
William Pitcock <nenolod@atheme.org>
parents: 3171
diff changeset
15 default soundcard/mixer, which we use already...)
0c4359baee34 alsa-ng: Update TODO.
William Pitcock <nenolod@atheme.org>
parents: 3171
diff changeset
16
3171
cb93b500a364 alsa-ng: Add more notes on this.
William Pitcock <nenolod@atheme.org>
parents: 3170
diff changeset
17 Things that won't be reimplemented:
cb93b500a364 alsa-ng: Add more notes on this.
William Pitcock <nenolod@atheme.org>
parents: 3170
diff changeset
18
cb93b500a364 alsa-ng: Add more notes on this.
William Pitcock <nenolod@atheme.org>
parents: 3170
diff changeset
19 - support for custom period sizes and buffer sizes. we want to use the ALSA defaults
cb93b500a364 alsa-ng: Add more notes on this.
William Pitcock <nenolod@atheme.org>
parents: 3170
diff changeset
20 since they provide the optimal values for each card. this means that specifying
cb93b500a364 alsa-ng: Add more notes on this.
William Pitcock <nenolod@atheme.org>
parents: 3170
diff changeset
21 period/buffer sizes is retarded.
cb93b500a364 alsa-ng: Add more notes on this.
William Pitcock <nenolod@atheme.org>
parents: 3170
diff changeset
22
cb93b500a364 alsa-ng: Add more notes on this.
William Pitcock <nenolod@atheme.org>
parents: 3170
diff changeset
23 Notable differences between the old ALSA plugin and the new one:
cb93b500a364 alsa-ng: Add more notes on this.
William Pitcock <nenolod@atheme.org>
parents: 3170
diff changeset
24
cb93b500a364 alsa-ng: Add more notes on this.
William Pitcock <nenolod@atheme.org>
parents: 3170
diff changeset
25 - tickless design:
cb93b500a364 alsa-ng: Add more notes on this.
William Pitcock <nenolod@atheme.org>
parents: 3170
diff changeset
26 The old ALSA plugin basically did a lot of polling. This does not, instead using
cb93b500a364 alsa-ng: Add more notes on this.
William Pitcock <nenolod@atheme.org>
parents: 3170
diff changeset
27 an event-driven tickless design using conditionals.
cb93b500a364 alsa-ng: Add more notes on this.
William Pitcock <nenolod@atheme.org>
parents: 3170
diff changeset
28
cb93b500a364 alsa-ng: Add more notes on this.
William Pitcock <nenolod@atheme.org>
parents: 3170
diff changeset
29 - uses ALSA "safe" API subset:
cb93b500a364 alsa-ng: Add more notes on this.
William Pitcock <nenolod@atheme.org>
parents: 3170
diff changeset
30 Plugin should work correctly with all userspace plugins.