blob: 6e08438db208ede95662eb40f29192dc1f26abbf [file] [log] [blame]
/**************************************************************************
*
* Copyright (c) 2012 ZTE Corporation.
*
***************************************************************************
* Ä£ ¿é Ãû : efr±à½âÂëÄ£¿é
* ÎÄ ¼þ Ãû : mmp_efr_api.h
* Ïà¹ØÎļþ :
* ʵÏÖ¹¦ÄÜ : efr±à½âÂë¶ÔÍâÌṩͷÎļþ
* ×÷ Õß : myp
* °æ ±¾ :
* Íê³ÉÈÕÆÚ : 2013Äê09ÔÂ10ÈÕ
* ÆäËü˵Ã÷ :
**************************************************************************/
/**************************************************************************
* Ð޸ļǼ
**************************************************************************/
#ifndef _MMP_EFR_API_H
#define _MMP_EFR_API_H
/**************************************************************************
* #includeÇø
**************************************************************************/
#include "oss_api.h"
#ifdef __cplusplus
extern "C"
{
#endif
/**************************************************************************
* ³£Á¿¶¨ÒåÇø
**************************************************************************/
#define ZEFR_ERROR (0)
#define ZEFR_SUCCESS (1)
/**************************************************************************
* Êý¾Ý½á¹¹¶¨ÒåÇø
**************************************************************************/
/**************************************************************************
* º¯ÊýÉùÃ÷Çø
**************************************************************************/
/**************************************************************************
* ¹¦ÄÜÃèÊö: ´ò¿ª±àÂëÆ÷
* ²ÎÊý˵Ã÷:
* (´«Èë²ÎÊý) isDtxEnable:DTX¿ª¹Ø
* (´«³ö²ÎÊý) ÎÞ
* ·µ »Ø Öµ: ZHR_SUCCESS³É¹¦£¬ZHR_ERRORʧ°Ü
* ÆäËü˵Ã÷: ÎÞ
**************************************************************************/
UINT16 zMmp_EfrEncOpen (BOOL isDtxEnable);
/**************************************************************************
* ¹¦ÄÜÃèÊö: ±àÂëÒ»Ö¡PCMÊý¾Ý
* ²ÎÊý˵Ã÷:
* (´«Èë²ÎÊý) pPcm:pcmÆðʼµØÖ·£¬×îС¿Õ¼äΪ160¸ö°ë×Ö
* (´«³ö²ÎÊý) pEfr:efrÆðʼµØÖ·£¬efr²ÎÊý59¸ö°ë×Ö£¬°üÀ¨57¸ö²ÎÊý(244bit)£¬»¹ÓÐÁ½¸ö°ë×ÖµÄÖ¡Í·(Ò»¸ö¹Ì¶¨Îª0x2£¬»¹ÓÐÒ»¸ö¼ûÆäËû˵Ã÷)
* ·µ »Ø Öµ: ³É¹¦·µ»ØZFR_SUCCESS,ʧ°Ü·µ»ØZFR_ERROR
* ÆäËü˵Ã÷: 01000000000SP0000
**************************************************************************/
UINT16 zMmp_EfrEncode (UINT16 * pPcm, UINT16 * pEfr);
/**************************************************************************
* ¹¦ÄÜÃèÊö: ¹Ø±Õ±àÂëÆ÷
* ²ÎÊý˵Ã÷:
* (´«Èë²ÎÊý) ÎÞ
* (´«³ö²ÎÊý) ÎÞ
* ·µ »Ø Öµ: ZHR_SUCCESS³É¹¦£¬ZHR_ERRORʧ°Ü
* ÆäËü˵Ã÷: ÎÞ
**************************************************************************/
UINT16 zMmp_EfrEncClose (VOID);
/**************************************************************************
* ¹¦ÄÜÃèÊö: ´ò¿ª½âÂëÆ÷
* ²ÎÊý˵Ã÷:
* (´«Èë²ÎÊý) ÎÞ
* (´«³ö²ÎÊý) ÎÞ
* ·µ »Ø Öµ: ZHR_SUCCESS³É¹¦£¬ZHR_ERRORʧ°Ü
* ÆäËü˵Ã÷: ÎÞ
**************************************************************************/
UINT16 zMmp_EfrDecOpen (VOID);
/**************************************************************************
* ¹¦ÄÜÃèÊö: ½âÂëÒ»Ö¡efrÊý¾Ý
* ²ÎÊý˵Ã÷:
* (´«Èë²ÎÊý) pEfr: efrÊý¾ÝÆðʼµØÖ·£¬×îС¿Õ¼ä59¸ö°ë×Ö£¬°üÀ¨57¸ö²ÎÊý(244bit),»¹°üÀ¨Á½¸ö°ë×ÖµÄÖ¡Í·(Ò»¸ö¹Ì¶¨Îª0x2£¬»¹ÓÐÒ»¸ö¼ûÆäËû˵Ã÷)
* (´«³ö²ÎÊý) pPcm: pcmÊý¾ÝÆðʼµØÖ·£¬×îС¿Õ¼ä160¸ö°ë×Ö
* ·µ »Ø Öµ: ³É¹¦·µ»ØZFR_SUCCESS,ʧ°Ü·µ»ØZFR_ERROR
* ÆäËü˵Ã÷: 010 TAF 00 SID SID 000 BFI 0000
**************************************************************************/
UINT16 zMmp_EfrDecode ( UINT16 *pEfr, UINT16 *pPcm);
/**************************************************************************
* ¹¦ÄÜÃèÊö: ¹Ø±Õ½âÂëÆ÷
* ²ÎÊý˵Ã÷:
* (´«Èë²ÎÊý) ÎÞ
* (´«³ö²ÎÊý) ÎÞ
* ·µ »Ø Öµ: ZHR_SUCCESS³É¹¦£¬ZHR_ERRORʧ°Ü
* ÆäËü˵Ã÷: ÎÞ
**************************************************************************/
UINT16 zMmp_EfrDecClose (VOID);
#ifdef __cplusplus
}
#endif
#endif /* _MMP_EFR_API_H */