audio_post_bass_management.h

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

H
82
字号
/*******************************************************************
 * 
 *  Copyright C 2005 by Amlogic, Inc. All Rights Reserved.
 *
 *  Description: 
 *
 *  Author: Amlogic Software
 *  Created: Thu Nov 10 23:54:06 2005
 *
 *******************************************************************/
#ifndef _AUDIO_POST_BASS_MANAGEMENT_H
#define _AUDIO_POST_BASS_MANAGEMENT_H

#include "ioapi.h"

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

#define DEVICE_TABLE_BASS_MANAGEMENT \
    {                                       \
        audio_device_bass_management_init,     \
        audio_device_bass_management_open,     \
        audio_device_bass_management_close,    \
        audio_device_bass_management_read,     \
        audio_device_bass_management_write,    \
        audio_device_bass_management_ioctl,    \
    }


#define SPEAKER_LARGE       00
#define SPEAKER_EXIST       00
#define SPEAKER_SMALL       01
#define SPEAKER_NONE        02

typedef struct {
    int     size_lr     : 2;
    int     size_c      : 2;
    int     size_lrs    : 2;
    int     size_s      : 2;
    int     size_lrb    : 2;
    int     size_b      : 2;
    int     size_sub    : 2;
    int     delay_unit  : 1;    /* 00: distance, 01: time           */
    int     delay_l;            /* in unit of foot/ms               */
    int     delay_r;
    int     delay_c;
    int     delay_ls;
    int     delay_rs;
    int     delay_lb;
    int     delay_rb;
    int     delay_sub;
    int     gain_l;             /* in unit of +/- 1dB               */
    int     gain_r;
    int     gain_c;
    int     gain_ls;
    int     gain_rs;
    int     gain_lb;
    int     gain_rb;
    int     gain_sub;
} _audio_speaker_settings_t;

typedef struct {
    _audio_speaker_settings_t   speaker;
    int     block_sample_num;       /* sample number in one block       */
    int     block_num;              /* total block numbers              */
    int     block_start_adr;        /* pcm buffer start address         */
    int     xtalk_level;            /* xtalk freq for bass re-direction */
    int     enable  : 1;            /* bass management enable/disable   */
    int     surround_bypass : 1;    /* for Pro Logic II mode, disable surround re-direction */
    int     back_surround_bypass:1; /* when back surround channel work as downmix output, bypass flag */
    int     s_delay;                /* addtional surround delay for some modes in Pro Logic II(x), ms   */
    int     bs_delay;               /* addtional surround delay for some modes in Pro Logic II(x), ms   */
    int     c_delay;                /* addtional center delay for some modes in Pro Logic II(x), ms     */
    int     pre_delay;              /* for Dolby Digital EX / Pro Logic IIx mode, 5ms datapath compensation */
} _audio_postprocessor_config_bass_management_t;

#endif /* _AUDIO_POST_BASS_MANAGEMENT_H */

⌨️ 快捷键说明

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