audio_input.h

来自「AMLOGIC DPF source code」· C头文件 代码 · 共 106 行

H
106
字号
/*******************************************************************
 * 
 *  Copyright C 2005 by Amlogic, Inc. All Rights Reserved.
 *
 *  Description: 
 *
 *  Author: Amlogic Software
 *  Created: Thu Nov 10 23:53:39 2005
 *
 *******************************************************************/
#ifndef _AUDIO_INPUT_H
#define _AUDIO_INPUT_H

#include "ioapi.h"

DECLARE_DEVICE_DRIVER_INIT(audio_input);
DECLARE_DEVICE_DRIVER_OPEN(audio_input);
DECLARE_DEVICE_DRIVER_CLOSE(audio_input);
DECLARE_DEVICE_DRIVER_READ(audio_input);
DECLARE_DEVICE_DRIVER_WRITE(audio_input);
DECLARE_DEVICE_DRIVER_IOCTL(audio_input);

#define DEVICE_TABLE_AUDIO_INPUT \
    { \
        audio_device_audio_input_init, \
        audio_device_audio_input_open, \
        audio_device_audio_input_close, \
        audio_device_audio_input_read, \
        audio_device_audio_input_write, \
        audio_device_audio_input_ioctl, \
    }

#define AUDIO_INPUT_SOURCE_AB           0x01
#define AUDIO_INPUT_SOURCE_ANALOG       0x02
#define AUDIO_INPUT_SOURCE_DIGITAL      0x04

#define AUDIO_INPUT_FORMAT_DETECT       0xFF
#define AUDIO_INPUT_FORMAT_DVDV_AC3     0x01
#define AUDIO_INPUT_FORMAT_DVDV_DTS     0x02
#define AUDIO_INPUT_FORMAT_DVDV_MPEG    0x03
#define AUDIO_INPUT_FORMAT_DVDV_LPCM    0x04
#define AUDIO_INPUT_FORMAT_ABUF_PCM		0x05

#define AUDIO_INPUT_FORMAT_DVDA_MLP     0x10
#define AUDIO_INPUT_FORMAT_DVDA_PCM     0x11

#define AUDIO_INPUT_FORMAT_AVI_MP3      0x20
#define AUDIO_INPUT_FORMAT_AVI_PCM      0x21
#define AUDIO_INPUT_FORMAT_AVI_AC3      0x22
#define AUDIO_INPUT_FORMAT_AVI_MPEG     0x23
#define AUDIO_INPUT_FORMAT_AVI_DTS      0x24
#define AUDIO_INPUT_FORMAT_AVI_ADPCM    0x25
#define AUDIO_INPUT_FORMAT_AVI_MPG    	0x26


#define AUDIO_INPUT_FORMAT_FILE_MP3     0x30
#define AUDIO_INPUT_FORMAT_FILE_WMA     0x31
#define AUDIO_INPUT_FORMAT_FILE_AC3     0x32
#define AUDIO_INPUT_FORMAT_FILE_ALAC	0x33
#define AUDIO_INPUT_FORMAT_FILE_FLAC	0x34
#define AUDIO_INPUT_FORMAT_FILE_AAC     0x35
#ifdef PLAYOGG
#define AUDIO_INPUT_FORMAT_FILE_OGG     0x36
#endif

#define AUDIO_INPUT_FORMAT_CDDA_PCM     0x41
#define AUDIO_INPUT_FORMAT_CDDA_DTS     0x42
#define AUDIO_INPUT_FORMAT_CDDA_HDCD    0x43
#define AUDIO_INPUT_FORMAT_CDDA_AC3     0x44

#define AUDIO_INPUT_FORMAT_ANALOG_IN    0x50
#define AUDIO_INPUT_FORMAT_SPDIF_PCM    0x51
#define AUDIO_INPUT_FORMAT_SPDIF_AC3    0x52
#define AUDIO_INPUT_FORMAT_SPDIF_DTS    0x53

#define AUDIO_INPUT_FORMAT_MIDI         0x60

#define AUDIO_INPUT_FORMAT_COOK         0x70
#define AUDIO_INPUT_FORMAT_RAAC         0x71
#define AUDIO_INPUT_FORMAT_PCM          0x72

typedef struct {
    /* audio input source and format */
    unsigned input_source;
    unsigned input_format;
    /* audio buffer */
    unsigned ab_start_addr;
    unsigned ab_size;
    /* user defined buffer */
    unsigned abuf_start;
    unsigned abuf_size;
    void    (*cb)(void*);
} _audio_input_config_t;

struct _audio_input_cb_arg{
    int addr;
    int size;
};
    
/* settings for different codecs */
#define AB_START_AC3        0x3d80000
#define AB_SIZE_DVD_AC3     0x18000


#endif /* _AUDIO_OUTPUT_H */

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?