audio.h
001:
002:
003:
004: <ralph@convergence.de>
005: <marcus@convergence.de>
006:
007:
008:
009:
010:
011:
012:
013:
014:
015:
016:
017:
018:
019:
020:
021:
022:
023:
024: #ifndef _DVBAUDIO_H_
025: #define _DVBAUDIO_H_
026:
027: #include <linux/types.h>
028:
029: typedef enum {
030: AUDIO_SOURCE_DEMUX,
031: AUDIO_SOURCE_MEMORY
032: } audio_stream_source_t;
033:
034:
035: typedef enum {
036: AUDIO_STOPPED,
037: AUDIO_PLAYING,
038: AUDIO_PAUSED
039: } audio_play_state_t;
040:
041:
042: typedef enum {
043: AUDIO_STEREO,
044: AUDIO_MONO_LEFT,
045: AUDIO_MONO_RIGHT,
046: AUDIO_MONO,
047: AUDIO_STEREO_SWAPPED
048: } audio_channel_select_t;
049:
050:
051: typedef struct audio_mixer {
052: unsigned int volume_left;
053: unsigned int volume_right;
054:
055: } audio_mixer_t;
056:
057:
058: typedef struct audio_status {
059: int AV_sync_state;
060: int mute_state;
061: audio_play_state_t play_state;
062: audio_stream_source_t stream_source;
063: audio_channel_select_t channel_select;
064: int bypass_mode;
065: audio_mixer_t mixer_state;
066: } audio_status_t;
067:
068:
069: typedef
070: struct audio_karaoke {
071: int vocal1;
072: int vocal2;
073: int melody;
074:
075:
076: } audio_karaoke_t;
077:
078:
079: typedef __u16 audio_attributes_t;
080:
081:
082:
083:
084:
085:
086:
087:
088:
089:
090:
091: #define AUDIO_CAP_DTS 1
092: #define AUDIO_CAP_LPCM 2
093: #define AUDIO_CAP_MP1 4
094: #define AUDIO_CAP_MP2 8
095: #define AUDIO_CAP_MP3 16
096: #define AUDIO_CAP_AAC 32
097: #define AUDIO_CAP_OGG 64
098: #define AUDIO_CAP_SDDS 128
099: #define AUDIO_CAP_AC3 256
100:
101: #define AUDIO_STOP _IO('o', 1)
102: #define AUDIO_PLAY _IO('o', 2)
103: #define AUDIO_PAUSE _IO('o', 3)
104: #define AUDIO_CONTINUE _IO('o', 4)
105: #define AUDIO_SELECT_SOURCE _IO('o', 5)
106: #define AUDIO_SET_MUTE _IO('o', 6)
107: #define AUDIO_SET_AV_SYNC _IO('o', 7)
108: #define AUDIO_SET_BYPASS_MODE _IO('o', 8)
109: #define AUDIO_CHANNEL_SELECT _IO('o', 9)
110: #define AUDIO_GET_STATUS _IOR('o', 10, audio_status_t)
111:
112: #define AUDIO_GET_CAPABILITIES _IOR('o', 11, unsigned int)
113: #define AUDIO_CLEAR_BUFFER _IO('o', 12)
114: #define AUDIO_SET_ID _IO('o', 13)
115: #define AUDIO_SET_MIXER _IOW('o', 14, audio_mixer_t)
116: #define AUDIO_SET_STREAMTYPE _IO('o', 15)
117: #define AUDIO_SET_EXT_ID _IO('o', 16)
118: #define AUDIO_SET_ATTRIBUTES _IOW('o', 17, audio_attributes_t)
119: #define AUDIO_SET_KARAOKE _IOW('o', 18, audio_karaoke_t)
120:
121:
122:
123:
124:
125:
126:
127:
128:
129:
130:
131:
132: #define AUDIO_GET_PTS _IOR('o', 19, __u64)
133: #define AUDIO_BILINGUAL_CHANNEL_SELECT _IO('o', 20)
134:
135: #endif
136:
© Andrew Scott 2006 -
2025,
All Rights Reserved