blob: 30e4e0fc8988d892e0444c2afb12db7b70ed09d4 [file] [log] [blame]
Elliott Hughes180edef2023-11-02 00:08:05 +00001/*
2 * This file is auto-generated. Modifications will be lost.
3 *
4 * See https://android.googlesource.com/platform/bionic/+/master/libc/kernel/
5 * for more information.
6 */
Ben Cheng655a7c02013-10-16 16:09:24 -07007#ifndef _DVBAUDIO_H_
8#define _DVBAUDIO_H_
9#include <linux/types.h>
10typedef enum {
Tao Baod7db5942015-01-28 10:07:51 -080011 AUDIO_SOURCE_DEMUX,
12 AUDIO_SOURCE_MEMORY
Ben Cheng655a7c02013-10-16 16:09:24 -070013} audio_stream_source_t;
14typedef enum {
Tao Baod7db5942015-01-28 10:07:51 -080015 AUDIO_STOPPED,
16 AUDIO_PLAYING,
17 AUDIO_PAUSED
Ben Cheng655a7c02013-10-16 16:09:24 -070018} audio_play_state_t;
Ben Cheng655a7c02013-10-16 16:09:24 -070019typedef enum {
Tao Baod7db5942015-01-28 10:07:51 -080020 AUDIO_STEREO,
21 AUDIO_MONO_LEFT,
22 AUDIO_MONO_RIGHT,
Tao Baod7db5942015-01-28 10:07:51 -080023 AUDIO_MONO,
24 AUDIO_STEREO_SWAPPED
Ben Cheng655a7c02013-10-16 16:09:24 -070025} audio_channel_select_t;
26typedef struct audio_mixer {
Tao Baod7db5942015-01-28 10:07:51 -080027 unsigned int volume_left;
28 unsigned int volume_right;
Ben Cheng655a7c02013-10-16 16:09:24 -070029} audio_mixer_t;
30typedef struct audio_status {
Tao Baod7db5942015-01-28 10:07:51 -080031 int AV_sync_state;
32 int mute_state;
33 audio_play_state_t play_state;
34 audio_stream_source_t stream_source;
Tao Baod7db5942015-01-28 10:07:51 -080035 audio_channel_select_t channel_select;
36 int bypass_mode;
37 audio_mixer_t mixer_state;
Ben Cheng655a7c02013-10-16 16:09:24 -070038} audio_status_t;
Ben Cheng655a7c02013-10-16 16:09:24 -070039#define AUDIO_CAP_DTS 1
Ben Cheng655a7c02013-10-16 16:09:24 -070040#define AUDIO_CAP_LPCM 2
41#define AUDIO_CAP_MP1 4
42#define AUDIO_CAP_MP2 8
43#define AUDIO_CAP_MP3 16
Ben Cheng655a7c02013-10-16 16:09:24 -070044#define AUDIO_CAP_AAC 32
45#define AUDIO_CAP_OGG 64
46#define AUDIO_CAP_SDDS 128
47#define AUDIO_CAP_AC3 256
Ben Cheng655a7c02013-10-16 16:09:24 -070048#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)
Ben Cheng655a7c02013-10-16 16:09:24 -070052#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)
Ben Cheng655a7c02013-10-16 16:09:24 -070056#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)
Ben Cheng655a7c02013-10-16 16:09:24 -070060#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)
Ben Cheng655a7c02013-10-16 16:09:24 -070063#define AUDIO_BILINGUAL_CHANNEL_SELECT _IO('o', 20)
Ben Cheng655a7c02013-10-16 16:09:24 -070064#endif