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