ref: 3a212b9809cb2cd513027a4ef0cffa641285c811
parent: e8f5e0909f4a7c7ae2c4e85f563e6b4da88aa98f
author: cinap_lenrek <cinap_lenrek@localhost>
date: Mon May 16 12:29:27 EDT 2011
audio.h
--- /dev/null
+++ b/sys/src/9/port/audio.h
@@ -1,0 +1,22 @@
+
+typedef struct Audio Audio;
+struct Audio {+ Audio *next;
+ char *name;
+ void *ctlr;
+ void *mixer;
+ void (*attach)(Audio *);
+ long (*read)(Audio *, void *, long, vlong);
+ long (*write)(Audio *, void *, long, vlong);
+ long (*volread)(Audio *, void *, long, vlong);
+ long (*volwrite)(Audio *, void *, long, vlong);
+ void (*close)(Audio *);
+ long (*ctl)(Audio *, void *, long, vlong);
+ long (*status)(Audio *, void *, long, vlong);
+ long (*buffered)(Audio *);
+ int ctlrno;
+};
+
+void addaudiocard(char *name, int (*probefn)(Audio *));
+void ac97mixreset(Audio *, void (*wr)(Audio*,int,ushort), ushort (*rr)(Audio*,int));
+int ac97hardrate(Audio *adev, int rate);
--
⑨