1
2#ifndef __LAUDIO_H__
3#define __LAUDIO_H__
4
5#define LAUDIO_F_STARTED  (1 << 15)
6
7enum laudio_state
8  {
9    LAUDIO_CLOSED    = 0,
10    LAUDIO_STOPPING  = 1,
11    LAUDIO_OPEN      = 2,
12    LAUDIO_STARTED   = LAUDIO_F_STARTED,
13    LAUDIO_RUNNING   = LAUDIO_F_STARTED | 0x01,
14
15    LAUDIO_FAILED    = -1,
16  };
17
18typedef void (*laudio_status_cb)(enum laudio_state status);
19
20void
21laudio_write(uint8_t *buf, uint64_t rtptime);
22
23uint64_t
24laudio_get_pos(void);
25
26void
27laudio_set_volume(int vol);
28
29int
30laudio_start(uint64_t cur_pos, uint64_t next_pkt);
31
32void
33laudio_stop(void);
34
35int
36laudio_open(void);
37
38void
39laudio_close(void);
40
41int
42laudio_init(laudio_status_cb cb);
43
44void
45laudio_deinit(void);
46
47#endif /* !__LAUDIO_H__ */
48