1 /* 2 * This header was generated from the Linux kernel headers by update_headers.py, 3 * to provide necessary information from kernel to userspace, such as constants, 4 * structures, and macros, and thus, contains no copyrightable information. 5 */ 6 #ifndef _DVBAUDIO_H_ 7 #define _DVBAUDIO_H_ 8 #include <linux/types.h> 9 typedef enum { 10 AUDIO_SOURCE_DEMUX, 11 AUDIO_SOURCE_MEMORY 12 } audio_stream_source_t; 13 typedef enum { 14 AUDIO_STOPPED, 15 AUDIO_PLAYING, 16 AUDIO_PAUSED 17 } audio_play_state_t; 18 typedef enum { 19 AUDIO_STEREO, 20 AUDIO_MONO_LEFT, 21 AUDIO_MONO_RIGHT, 22 AUDIO_MONO, 23 AUDIO_STEREO_SWAPPED 24 } audio_channel_select_t; 25 typedef struct audio_mixer { 26 unsigned int volume_left; 27 unsigned int volume_right; 28 29 } audio_mixer_t; 30 typedef struct audio_status { 31 int AV_sync_state; 32 int mute_state; 33 audio_play_state_t play_state; 34 audio_stream_source_t stream_source; 35 audio_channel_select_t channel_select; 36 int bypass_mode; 37 audio_mixer_t mixer_state; 38 } audio_status_t; 39 #define AUDIO_CAP_DTS 1 40 #define AUDIO_CAP_LPCM 2 41 #define AUDIO_CAP_MP1 4 42 #define AUDIO_CAP_MP2 8 43 #define AUDIO_CAP_MP3 16 44 #define AUDIO_CAP_AAC 32 45 #define AUDIO_CAP_OGG 64 46 #define AUDIO_CAP_SDDS 128 47 #define AUDIO_CAP_AC3 256 48 #define AUDIO_STOP _IO('o', 1) 49 #define AUDIO_PLAY _IO('o', 2) 50 #define AUDIO_PAUSE _IO('o', 3) 51 #define AUDIO_CONTINUE _IO('o', 4) 52 #define AUDIO_SELECT_SOURCE _IO('o', 5) 53 #define AUDIO_SET_MUTE _IO('o', 6) 54 #define AUDIO_SET_AV_SYNC _IO('o', 7) 55 #define AUDIO_SET_BYPASS_MODE _IO('o', 8) 56 #define AUDIO_CHANNEL_SELECT _IO('o', 9) 57 #define AUDIO_GET_STATUS _IOR('o', 10, audio_status_t) 58 #define AUDIO_GET_CAPABILITIES _IOR('o', 11, unsigned int) 59 #define AUDIO_CLEAR_BUFFER _IO('o', 12) 60 #define AUDIO_SET_ID _IO('o', 13) 61 #define AUDIO_SET_MIXER _IOW('o', 14, audio_mixer_t) 62 #define AUDIO_SET_STREAMTYPE _IO('o', 15) 63 #define AUDIO_BILINGUAL_CHANNEL_SELECT _IO('o', 20) 64 #endif 65