1/****************************************************************************
2 ****************************************************************************
3 ***
4 ***   This header was automatically generated from a Linux kernel header
5 ***   of the same name, to make information necessary for userspace to
6 ***   call into the kernel available to libc.  It contains only constants,
7 ***   structures, and macros generated from the original header, and thus,
8 ***   contains no copyrightable information.
9 ***
10 ***   To edit the content of this header, modify the corresponding
11 ***   source file (e.g. under external/kernel-headers/original/) then
12 ***   run bionic/libc/kernel/tools/update_all.py
13 ***
14 ***   Any manual change here will be lost the next time this script will
15 ***   be run. You've been warned!
16 ***
17 ****************************************************************************
18 ****************************************************************************/
19#ifndef _DVBAUDIO_H_
20#define _DVBAUDIO_H_
21#include <linux/types.h>
22typedef enum {
23  AUDIO_SOURCE_DEMUX,
24  AUDIO_SOURCE_MEMORY
25} audio_stream_source_t;
26typedef enum {
27  AUDIO_STOPPED,
28  AUDIO_PLAYING,
29  AUDIO_PAUSED
30} audio_play_state_t;
31typedef enum {
32  AUDIO_STEREO,
33  AUDIO_MONO_LEFT,
34  AUDIO_MONO_RIGHT,
35  AUDIO_MONO,
36  AUDIO_STEREO_SWAPPED
37} audio_channel_select_t;
38typedef struct audio_mixer {
39  unsigned int volume_left;
40  unsigned int volume_right;
41} audio_mixer_t;
42typedef struct audio_status {
43  int AV_sync_state;
44  int mute_state;
45  audio_play_state_t play_state;
46  audio_stream_source_t stream_source;
47  audio_channel_select_t channel_select;
48  int bypass_mode;
49  audio_mixer_t mixer_state;
50} audio_status_t;
51typedef struct audio_karaoke {
52  int vocal1;
53  int vocal2;
54  int melody;
55} audio_karaoke_t;
56typedef __u16 audio_attributes_t;
57#define AUDIO_CAP_DTS 1
58#define AUDIO_CAP_LPCM 2
59#define AUDIO_CAP_MP1 4
60#define AUDIO_CAP_MP2 8
61#define AUDIO_CAP_MP3 16
62#define AUDIO_CAP_AAC 32
63#define AUDIO_CAP_OGG 64
64#define AUDIO_CAP_SDDS 128
65#define AUDIO_CAP_AC3 256
66#define AUDIO_STOP _IO('o', 1)
67#define AUDIO_PLAY _IO('o', 2)
68#define AUDIO_PAUSE _IO('o', 3)
69#define AUDIO_CONTINUE _IO('o', 4)
70#define AUDIO_SELECT_SOURCE _IO('o', 5)
71#define AUDIO_SET_MUTE _IO('o', 6)
72#define AUDIO_SET_AV_SYNC _IO('o', 7)
73#define AUDIO_SET_BYPASS_MODE _IO('o', 8)
74#define AUDIO_CHANNEL_SELECT _IO('o', 9)
75#define AUDIO_GET_STATUS _IOR('o', 10, audio_status_t)
76#define AUDIO_GET_CAPABILITIES _IOR('o', 11, unsigned int)
77#define AUDIO_CLEAR_BUFFER _IO('o', 12)
78#define AUDIO_SET_ID _IO('o', 13)
79#define AUDIO_SET_MIXER _IOW('o', 14, audio_mixer_t)
80#define AUDIO_SET_STREAMTYPE _IO('o', 15)
81#define AUDIO_SET_EXT_ID _IO('o', 16)
82#define AUDIO_SET_ATTRIBUTES _IOW('o', 17, audio_attributes_t)
83#define AUDIO_SET_KARAOKE _IOW('o', 18, audio_karaoke_t)
84#define AUDIO_GET_PTS _IOR('o', 19, __u64)
85#define AUDIO_BILINGUAL_CHANNEL_SELECT _IO('o', 20)
86#endif
87