QCC308x headset 做同时双向输出音频

发布于:2024-10-16 ⋅ 阅读:(9) ⋅ 点赞:(0)

QCC308x headset 做同时双向输出音频

/******************************************************************************
Copyright (c) 2014 - 2015 Qualcomm Technologies International, Ltd.


FILE NAME
    audio_output.h

DESCRIPTION
    Plugin that implements multichannel audio by utilising multiple hardware
    audio outputs (onboard DAC, I2S, etc...).
*/


/*!
@file    audio_output.h
@brief   Implements multichannel audio by utilising multiple hardware audio
         outputs (onboard DAC, I2S, etc...).

         This file provides documentation for the audio_output API.

         Plugin should be initialised with a suitable output mapping before
         being used, defined by the structures declared in this header file.
*/


#ifndef __AUDIO_OUTPUT_H__
#define __AUDIO_OUTPUT_H__

/*============================================================================*
 *  SDK Header Files
 *============================================================================*/

#include <csrtypes.h>
#include <stream.h>

/*============================================================================*
 *  Public Defintions
 *============================================================================*/

/* Turn audio output into a bitmask */
#define AudioOutputGetMask(audio_out) ((uint16)1 << audio_out)

/*============================================================================*
 *  Public Data Types
 *============================================================================*/

/*!
    @brief Audio Output Channel

    Allows identification of and looping through each output channel. The first
    output should always start at 0, and audio_output_max should always be last
    as it is also used to define arrays and loop bounds.
*/
typedef enum __audio_output
{
 
    audio_output_primary_left = 0,   /*! Left primary (filtered) output */
    audio_output_primary_right,      /*! Right primary (filtered) output */
    audio_output_secondary_left,     /*! Left secondary (filtered) output */
    audio_output_secondary_right,    /*! Right secondary (filtered) output */
    audio_output_wired_sub,          /*! Wired subwoofer (LP filter) output */
    audio_output_aux_left,           /*! Left auxiliary (full range) output */
    audio_output_aux_right,          /*! Right auxi