15738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/******************************************************************************
25738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project *
35738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project *  Copyright (C) 2009-2012 Broadcom Corporation
45738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project *
55738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project *  Licensed under the Apache License, Version 2.0 (the "License");
65738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project *  you may not use this file except in compliance with the License.
75738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project *  You may obtain a copy of the License at:
85738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project *
95738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project *  http://www.apache.org/licenses/LICENSE-2.0
105738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project *
115738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project *  Unless required by applicable law or agreed to in writing, software
125738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project *  distributed under the License is distributed on an "AS IS" BASIS,
135738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
145738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project *  See the License for the specific language governing permissions and
155738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project *  limitations under the License.
165738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project *
175738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project ******************************************************************************/
185738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
195738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/*****************************************************************************
205738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project **
215738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project **  Name:           btif_av_api.h
225738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project **
235738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project **  Description:    This is the public interface file for the advanced
245738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project **                  audio/video streaming (AV) subsystem of BTIF, Broadcom's
255738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project **                  Bluetooth application layer for mobile phones.
265738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project **
275738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project *****************************************************************************/
285738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
295738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTIF_AV_API_H
305738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTIF_AV_API_H
315738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
325738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#include "bt_target.h"
335738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#include "bta_av_api.h"
345738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#include "uipc.h"
355738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
365738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#include "btif_media.h"
375738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#include "a2d_api.h"
385738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#include "a2d_sbc.h"
395738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
405738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
415738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/*****************************************************************************
425738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project **  Constants and data types
435738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project *****************************************************************************/
445738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
455738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Codec type */
465738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTIF_AV_CODEC_NONE       0xFF
475738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTIF_AV_CODEC_SBC        A2D_MEDIA_CT_SBC        /* SBC media codec type */
485738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
495738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTIF_AV_CODEC_PCM        0x5                     /* Raw PCM */
505738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
515738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projecttypedef UINT8 tBTIF_AV_CODEC_ID;
525738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
535738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* AV features masks */
545738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTIF_AV_FEAT_RCTG        BTA_AV_FEAT_RCTG      /* remote control target */
555738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTIF_AV_FEAT_RCCT        BTA_AV_FEAT_RCCT      /* remote control controller */
565738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTIF_AV_FEAT_METADATA    BTA_AV_FEAT_METADATA  /* remote control Metadata Transfer command/response */
575738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
585738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projecttypedef UINT16 tBTIF_AV_FEAT;
595738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
605738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* AV channel values */
615738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTIF_AV_CHNL_MSK         BTA_AV_CHNL_MSK
625738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTIF_AV_CHNL_AUDIO       BTA_AV_CHNL_AUDIO       /* audio channel */
635738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTIF_AV_CHNL_VIDEO       BTA_AV_CHNL_VIDEO       /* video channel */
645738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projecttypedef UINT8 tBTIF_AV_CHNL;
655738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
665738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projecttypedef UINT8 tBTIF_AV_HNDL;
675738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
685738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Operation id list for BTIF_AvRemoteCmd */
695738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTIF_AV_ID_SELECT      0x00    /* select */
705738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTIF_AV_ID_UP          0x01    /* up */
715738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTIF_AV_ID_DOWN        0x02    /* down */
725738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTIF_AV_ID_LEFT        0x03    /* left */
735738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTIF_AV_ID_RIGHT       0x04    /* right */
745738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTIF_AV_ID_RIGHT_UP    0x05    /* right-up */
755738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTIF_AV_ID_RIGHT_DOWN  0x06    /* right-down */
765738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTIF_AV_ID_LEFT_UP     0x07    /* left-up */
775738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTIF_AV_ID_LEFT_DOWN   0x08    /* left-down */
785738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTIF_AV_ID_ROOT_MENU   0x09    /* root menu */
795738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTIF_AV_ID_SETUP_MENU  0x0A    /* setup menu */
805738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTIF_AV_ID_CONT_MENU   0x0B    /* contents menu */
815738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTIF_AV_ID_FAV_MENU    0x0C    /* favorite menu */
825738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTIF_AV_ID_EXIT        0x0D    /* exit */
835738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTIF_AV_ID_0           0x20    /* 0 */
845738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTIF_AV_ID_1           0x21    /* 1 */
855738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTIF_AV_ID_2           0x22    /* 2 */
865738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTIF_AV_ID_3           0x23    /* 3 */
875738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTIF_AV_ID_4           0x24    /* 4 */
885738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTIF_AV_ID_5           0x25    /* 5 */
895738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTIF_AV_ID_6           0x26    /* 6 */
905738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTIF_AV_ID_7           0x27    /* 7 */
915738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTIF_AV_ID_8           0x28    /* 8 */
925738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTIF_AV_ID_9           0x29    /* 9 */
935738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTIF_AV_ID_DOT         0x2A    /* dot */
945738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTIF_AV_ID_ENTER       0x2B    /* enter */
955738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTIF_AV_ID_CLEAR       0x2C    /* clear */
965738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTIF_AV_ID_CHAN_UP     0x30    /* channel up */
975738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTIF_AV_ID_CHAN_DOWN   0x31    /* channel down */
985738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTIF_AV_ID_PREV_CHAN   0x32    /* previous channel */
995738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTIF_AV_ID_SOUND_SEL   0x33    /* sound select */
1005738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTIF_AV_ID_INPUT_SEL   0x34    /* input select */
1015738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTIF_AV_ID_DISP_INFO   0x35    /* display information */
1025738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTIF_AV_ID_HELP        0x36    /* help */
1035738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTIF_AV_ID_PAGE_UP     0x37    /* page up */
1045738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTIF_AV_ID_PAGE_DOWN   0x38    /* page down */
1055738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTIF_AV_ID_POWER       0x40    /* power */
1065738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTIF_AV_ID_VOL_UP      0x41    /* volume up */
1075738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTIF_AV_ID_VOL_DOWN    0x42    /* volume down */
1085738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTIF_AV_ID_MUTE        0x43    /* mute */
1095738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTIF_AV_ID_PLAY        0x44    /* play */
1105738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTIF_AV_ID_STOP        0x45    /* stop */
1115738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTIF_AV_ID_PAUSE       0x46    /* pause */
1125738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTIF_AV_ID_RECORD      0x47    /* record */
1135738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTIF_AV_ID_REWIND      0x48    /* rewind */
1145738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTIF_AV_ID_FAST_FOR    0x49    /* fast forward */
1155738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTIF_AV_ID_EJECT       0x4A    /* eject */
1165738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTIF_AV_ID_FORWARD     0x4B    /* forward */
1175738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTIF_AV_ID_BACKWARD    0x4C    /* backward */
1185738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTIF_AV_ID_ANGLE       0x50    /* angle */
1195738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTIF_AV_ID_SUBPICT     0x51    /* subpicture */
1205738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTIF_AV_ID_F1          0x71    /* F1 */
1215738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTIF_AV_ID_F2          0x72    /* F2 */
1225738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTIF_AV_ID_F3          0x73    /* F3 */
1235738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTIF_AV_ID_F4          0x74    /* F4 */
1245738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTIF_AV_ID_F5          0x75    /* F5 */
1255738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTIF_AV_ID_VENDOR      0x7E    /* vendor unique */
1265738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTIF_AV_KEYPRESSED_RELEASE 0x80
1275738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
1285738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projecttypedef UINT8 tBTIF_AV_RC;
1295738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
1305738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* State flag for pass through command */
1315738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTIF_AV_STATE_PRESS      0    /* key pressed */
1325738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTIF_AV_STATE_RELEASE    1  /* key released */
1335738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
1345738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projecttypedef UINT8 tBTIF_AV_STATE;
1355738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
1365738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projecttypedef UINT8 tBTIF_AV_RC_HNDL;
1375738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
1385738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Command codes for BTIF_AvVendorCmd */
1395738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTIF_AV_CMD_CTRL         0
1405738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTIF_AV_CMD_STATUS       1
1415738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTIF_AV_CMD_SPEC_INQ     2
1425738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTIF_AV_CMD_NOTIF        3
1435738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTIF_AV_CMD_GEN_INQ      4
1445738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
1455738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projecttypedef UINT8 tBTIF_AV_CMD;
1465738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
1475738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* AV callback events */
1485738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTIF_AV_OPEN_EVT         0       /* connection opened */
1495738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTIF_AV_CLOSE_EVT        1       /* connection closed */
1505738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTIF_AV_START_EVT        2       /* stream data transfer started */
1515738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTIF_AV_STOP_EVT         3       /* stream data transfer stopped */
1525738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTIF_AV_RC_OPEN_EVT      4       /* remote control channel open */
1535738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTIF_AV_RC_CLOSE_EVT     5       /* remote control channel closed */
1545738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTIF_AV_REMOTE_CMD_EVT   6      /* remote control command */
1555738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTIF_AV_REMOTE_RSP_EVT   7      /* remote control response */
1565738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTIF_AV_META_MSG_EVT     8      /* metadata messages */
1575738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
1585738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projecttypedef UINT8 tBTIF_AV_EVT;
1595738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
1605738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTIF_AV_FEEDING_ASYNCHRONOUS 0   /* asynchronous feeding, use tx av timer */
1615738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTIF_AV_FEEDING_SYNCHRONOUS  1   /* synchronous feeding, no av tx timer */
1625738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
1635738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTIF_AV_MAX_SYNCHRONOUS_LATENCY 80 /* max latency in ms for BTIF_AV_FEEDING_SYNCHRONOUS */
1645738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTIF_AV_MIN_SYNCHRONOUS_LATENCY 4 /* min latency in ms for BTIF_AV_FEEDING_SYNCHRONOUS */
1655738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
1665738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projecttypedef UINT8 tBTIF_AV_FEEDING_MODE;
1675738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
1685738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTIF_AV_CHANNEL_MODE_MONO    A2D_SBC_IE_CH_MD_MONO
1695738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTIF_AV_CHANNEL_MODE_STEREO  A2D_SBC_IE_CH_MD_STEREO
1705738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTIF_AV_CHANNEL_MODE_JOINT   A2D_SBC_IE_CH_MD_JOINT
1715738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTIF_AV_CHANNEL_MODE_DUAL    A2D_SBC_IE_CH_MD_DUAL
1725738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
1735738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projecttypedef UINT8 tBTIF_AV_CHANNEL_MODE;
1745738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
1755738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/**
1765738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project * Structure used to configure the AV codec capabilities/config
1775738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project */
1785738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projecttypedef struct
1795738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project{
1805738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project    tBTIF_AV_CODEC_ID id;            /* Codec ID (in terms of BTIF) */
1815738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project    UINT8 info[AVDT_CODEC_SIZE];     /* Codec info (can be config or capabilities) */
1825738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project} tBTIF_AV_CODEC_INFO;
1835738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
1845738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/**
1855738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project * Structure used to configure the AV media feeding
1865738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project */
1875738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projecttypedef struct
1885738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project{
1895738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project    UINT16 sampling_freq;   /* 44100, 48000 etc */
1905738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project    UINT16 num_channel;     /* 1 for mono or 2 stereo */
1915738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project    UINT8  bit_per_sample;  /* Number of bits per sample (8, 16) */
1925738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project} tBTIF_AV_MEDIA_FEED_CFG_PCM;
1935738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
1945738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projecttypedef union
1955738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project{
1965738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project    tBTIF_AV_MEDIA_FEED_CFG_PCM pcm;     /* Raw PCM feeding format */
1975738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project}tBTIF_AV_MEDIA_FEED_CFG;
1985738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
1995738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projecttypedef struct
2005738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project{
2015738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project    tBTIF_AV_CODEC_ID format;        /* Media codec identifier */
2025738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project    tBTIF_AV_MEDIA_FEED_CFG cfg;     /* Media codec configuration */
2035738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project} tBTIF_AV_MEDIA_FEEDINGS;
2045738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
2055738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
2065738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifdef __cplusplus
2075738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project}
2085738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
2095738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
2105738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif /* BTIF_AV_API_H */
211