unplugged-vendor/system/bt/mediatek/stack/include/a2dp_aac_vbr.h

79 lines
3.7 KiB
C

/* Copyright Statement:
* *
* * This software/firmware and related documentation ("MediaTek Software") are
* * protected under relevant copyright laws. The information contained herein
* * is confidential and proprietary to MediaTek Inc. and/or its licensors.
* * Without the prior written permission of MediaTek inc. and/or its licensors,
* * any reproduction, modification, use or disclosure of MediaTek Software,
* * and information contained herein, in whole or in part, shall be strictly
* * prohibited.
* *
* * MediaTek Inc. (C) 2016. All rights reserved.
* *
* * BY OPENING THIS FILE, RECEIVER HEREBY UNEQUIVOCALLY ACKNOWLEDGES AND AGREES
* * THAT THE SOFTWARE/FIRMWARE AND ITS DOCUMENTATIONS ("MEDIATEK SOFTWARE")
* * RECEIVED FROM MEDIATEK AND/OR ITS REPRESENTATIVES ARE PROVIDED TO RECEIVER
* * ON AN "AS-IS" BASIS ONLY. MEDIATEK EXPRESSLY DISCLAIMS ANY AND ALL
* * WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED
* * WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE OR
* * NONINFRINGEMENT.
* * NEITHER DOES MEDIATEK PROVIDE ANY WARRANTY WHATSOEVER WITH RESPECT TO THE
* * SOFTWARE OF ANY THIRD PARTY WHICH MAY BE USED BY, INCORPORATED IN, OR
* * SUPPLIED WITH THE MEDIATEK SOFTWARE, AND RECEIVER AGREES TO LOOK ONLY TO
* * SUCH THIRD PARTY FOR ANY WARRANTY CLAIM RELATING THERETO. RECEIVER
* * EXPRESSLY ACKNOWLEDGES THAT IT IS RECEIVER'S SOLE RESPONSIBILITY TO OBTAIN
* * FROM ANY THIRD PARTY ALL PROPER LICENSES CONTAINED IN MEDIATEK SOFTWARE.
* * MEDIATEK SHALL ALSO NOT BE RESPONSIBLE FOR ANY MEDIATEK SOFTWARE RELEASES
* * MADE TO RECEIVER'S SPECIFICATION OR TO CONFORM TO A PARTICULAR STANDARD OR
* * OPEN FORUM. RECEIVER'S SOLE AND EXCLUSIVE REMEDY AND MEDIATEK'S ENTIRE AND
* * CUMULATIVE LIABILITY WITH RESPECT TO THE MEDIATEK SOFTWARE RELEASED
* * HEREUNDER WILL BE, AT MEDIATEK'S OPTION, TO REVISE OR REPLACE THE MEDIATEK
* * SOFTWARE AT ISSUE, OR REFUND ANY SOFTWARE LICENSE FEES OR SERVICE CHARGE
* * PAID BY RECEIVER TO MEDIATEK FOR SUCH MEDIATEK SOFTWARE AT ISSUE.
* *
* * The following software/firmware and/or related documentation ("MediaTek Software")
* * have been modified by MediaTek Inc. All revisions are subject to any receiver's
* * applicable license agreements with MediaTek Inc.
* */
#ifndef _A2DP_AAC_VBR_H_
#define _A2DP_AAC_VBR_H_
#ifndef AACBT_API
#define AACBT_API
#endif /* AACBT_API */
typedef enum {
AACENC_BR_MODE_INVALID = -1, /*!< Invalid bitrate mode. */
AACENC_BR_MODE_CBR = 0, /*!< Constant bitrate mode. */
AACENC_BR_MODE_VBR_1 = 1, /*!< Variable bitrate mode, very low bitrate. */
AACENC_BR_MODE_VBR_2 = 2, /*!< Variable bitrate mode, low bitrate. */
AACENC_BR_MODE_VBR_3 = 3, /*!< Variable bitrate mode, medium bitrate. */
AACENC_BR_MODE_VBR_4 = 4, /*!< Variable bitrate mode, high bitrate. */
AACENC_BR_MODE_VBR_5 = 5, /*!< Variable bitrate mode, very high bitrate. */
AACENC_BR_MODE_FF = 6, /*!< Fixed frame mode. */
AACENC_BR_MODE_SFR = 7 /*!< Superframe mode. */
} AACENC_BITRATE_MODE;
// If vendor.bluetooth.a2dp_aac_vbr.enable value changed,
// call this functionto update the prop value, can be called when setup aac codec.
extern bool mtk_aac_vbr_enabled();
// Current device's vbr support value
extern void mtk_aac_vbr_prop_updated();
// Set VBR max mode
extern void mtk_aac_vbr_set_max_mode(int max_vbr_mode);
// Get VBR max mode
extern int mtk_aac_vbr_get_max_mode();
// Check if the aac used vbr mode.
extern void mtk_aac_vbr_set_support(int bitrate_support_val);
//This function just called in aac vbr mode to return the current vbr mode.
extern int mtk_aac_vbr_get_mode(size_t queueLen);
#endif /* _AACBT_H_ */