2017-05-06 19:29:12 +02:00
|
|
|
// Copyright 2015-2016 Espressif Systems (Shanghai) PTE LTD
|
|
|
|
//
|
|
|
|
// Licensed under the Apache License, Version 2.0 (the "License");
|
|
|
|
// you may not use this file except in compliance with the License.
|
|
|
|
// You may obtain a copy of the License at
|
|
|
|
|
|
|
|
// http://www.apache.org/licenses/LICENSE-2.0
|
|
|
|
//
|
|
|
|
// Unless required by applicable law or agreed to in writing, software
|
|
|
|
// distributed under the License is distributed on an "AS IS" BASIS,
|
|
|
|
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
|
|
// See the License for the specific language governing permissions and
|
|
|
|
// limitations under the License.
|
|
|
|
|
|
|
|
#ifndef __BTC_AV_CO_H__
|
|
|
|
#define __BTC_AV_CO_H__
|
|
|
|
|
2018-01-17 23:56:58 +01:00
|
|
|
#include "btc_a2dp.h"
|
2017-05-06 19:29:12 +02:00
|
|
|
|
|
|
|
#if (BTA_AV_INCLUDED == TRUE)
|
|
|
|
/*******************************************************************************
|
|
|
|
** Constants & Macros
|
|
|
|
********************************************************************************/
|
|
|
|
|
|
|
|
enum {
|
|
|
|
BTC_SV_AV_AA_SBC_INDEX = 0,
|
|
|
|
BTC_SV_AV_AA_SBC_SINK_INDEX,
|
|
|
|
BTC_SV_AV_AA_SEP_INDEX /* Last index */
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
|
|
/*******************************************************************************
|
|
|
|
** Functions
|
|
|
|
********************************************************************************/
|
|
|
|
|
|
|
|
/*******************************************************************************
|
|
|
|
**
|
|
|
|
** Function bta_av_co_cp_is_active
|
|
|
|
**
|
|
|
|
** Description Get the current configuration of content protection
|
|
|
|
**
|
|
|
|
** Returns TRUE if the current streaming has CP, FALSE otherwise
|
|
|
|
**
|
|
|
|
*******************************************************************************/
|
|
|
|
BOOLEAN bta_av_co_cp_is_active(void);
|
|
|
|
|
|
|
|
/*******************************************************************************
|
|
|
|
**
|
|
|
|
** Function bta_av_co_cp_get_flag
|
|
|
|
**
|
|
|
|
** Description Get content protection flag
|
|
|
|
** BTA_AV_CP_SCMS_COPY_NEVER
|
|
|
|
** BTA_AV_CP_SCMS_COPY_ONCE
|
|
|
|
** BTA_AV_CP_SCMS_COPY_FREE
|
|
|
|
**
|
|
|
|
** Returns The current flag value
|
|
|
|
**
|
|
|
|
*******************************************************************************/
|
|
|
|
UINT8 bta_av_co_cp_get_flag(void);
|
|
|
|
|
|
|
|
/*******************************************************************************
|
|
|
|
**
|
|
|
|
** Function bta_av_co_cp_set_flag
|
|
|
|
**
|
|
|
|
** Description Set content protection flag
|
|
|
|
** BTA_AV_CP_SCMS_COPY_NEVER
|
|
|
|
** BTA_AV_CP_SCMS_COPY_ONCE
|
|
|
|
** BTA_AV_CP_SCMS_COPY_FREE
|
|
|
|
**
|
|
|
|
** Returns TRUE if setting the SCMS flag is supported else FALSE
|
|
|
|
**
|
|
|
|
*******************************************************************************/
|
|
|
|
BOOLEAN bta_av_co_cp_set_flag(UINT8 cp_flag);
|
|
|
|
|
|
|
|
/*******************************************************************************
|
|
|
|
**
|
|
|
|
** Function bta_av_co_audio_codec_reset
|
|
|
|
**
|
|
|
|
** Description Reset the current codec configuration
|
|
|
|
**
|
|
|
|
** Returns void
|
|
|
|
**
|
|
|
|
*******************************************************************************/
|
|
|
|
void bta_av_co_audio_codec_reset(void);
|
|
|
|
|
|
|
|
/*******************************************************************************
|
|
|
|
**
|
|
|
|
** Function bta_av_co_audio_codec_supported
|
|
|
|
**
|
|
|
|
** Description Check if all opened connections are compatible with a codec
|
|
|
|
** configuration
|
|
|
|
**
|
|
|
|
** Returns TRUE if all opened devices support this codec, FALSE otherwise
|
|
|
|
**
|
|
|
|
*******************************************************************************/
|
2018-01-17 23:56:58 +01:00
|
|
|
BOOLEAN bta_av_co_audio_codec_supported(tBTC_AV_STATUS *p_status);
|
2017-05-06 19:29:12 +02:00
|
|
|
|
|
|
|
/*******************************************************************************
|
|
|
|
**
|
|
|
|
** Function bta_av_co_audio_set_codec
|
|
|
|
**
|
|
|
|
** Description Set the current codec configuration from the feeding type.
|
|
|
|
** This function is starting to modify the configuration, it
|
|
|
|
** should be protected.
|
|
|
|
**
|
|
|
|
** Returns TRUE if successful, FALSE otherwise
|
|
|
|
**
|
|
|
|
*******************************************************************************/
|
2018-01-17 23:56:58 +01:00
|
|
|
BOOLEAN bta_av_co_audio_set_codec(const tBTC_AV_MEDIA_FEEDINGS *p_feeding, tBTC_AV_STATUS *p_status);
|
2017-05-06 19:29:12 +02:00
|
|
|
|
|
|
|
/*******************************************************************************
|
|
|
|
**
|
|
|
|
** Function bta_av_co_audio_get_sbc_config
|
|
|
|
**
|
|
|
|
** Description Retrieves the SBC codec configuration. If the codec in use
|
|
|
|
** is not SBC, return the default SBC codec configuration.
|
|
|
|
**
|
|
|
|
** Returns TRUE if codec is SBC, FALSE otherwise
|
|
|
|
**
|
|
|
|
*******************************************************************************/
|
|
|
|
BOOLEAN bta_av_co_audio_get_sbc_config(tA2D_SBC_CIE *p_sbc_config, UINT16 *p_minmtu);
|
|
|
|
|
|
|
|
/*******************************************************************************
|
|
|
|
**
|
|
|
|
** Function bta_av_co_audio_discard_config
|
|
|
|
**
|
|
|
|
** Description Discard the codec configuration of a connection
|
|
|
|
**
|
|
|
|
** Returns Nothing
|
|
|
|
**
|
|
|
|
*******************************************************************************/
|
|
|
|
void bta_av_co_audio_discard_config(tBTA_AV_HNDL hndl);
|
|
|
|
|
|
|
|
/*******************************************************************************
|
|
|
|
**
|
|
|
|
** Function bta_av_co_init
|
|
|
|
**
|
|
|
|
** Description Initialization
|
|
|
|
**
|
|
|
|
** Returns Nothing
|
|
|
|
**
|
|
|
|
*******************************************************************************/
|
|
|
|
void bta_av_co_init(void);
|
|
|
|
|
|
|
|
|
|
|
|
/*******************************************************************************
|
|
|
|
**
|
|
|
|
** Function bta_av_co_peer_cp_supported
|
|
|
|
**
|
|
|
|
** Description Checks if the peer supports CP
|
|
|
|
**
|
|
|
|
** Returns TRUE if the peer supports CP
|
|
|
|
**
|
|
|
|
*******************************************************************************/
|
|
|
|
BOOLEAN bta_av_co_peer_cp_supported(tBTA_AV_HNDL hndl);
|
|
|
|
|
|
|
|
/*******************************************************************************
|
|
|
|
**
|
|
|
|
** Function bta_av_co_get_remote_bitpool_pref
|
|
|
|
**
|
|
|
|
** Description Check if remote side did a setconfig within the limits
|
|
|
|
** of our exported bitpool range. If set we will set the
|
|
|
|
** remote preference.
|
|
|
|
**
|
|
|
|
** Returns TRUE if config set, FALSE otherwize
|
|
|
|
**
|
|
|
|
*******************************************************************************/
|
|
|
|
BOOLEAN bta_av_co_get_remote_bitpool_pref(UINT8 *min, UINT8 *max);
|
|
|
|
|
|
|
|
#endif ///BTA_AV_INCLUDED == TRUE
|
|
|
|
|
|
|
|
#endif
|