yuezonghe | 824eb0c | 2024-06-27 02:32:26 -0700 | [diff] [blame^] | 1 | /**************************************************************************
|
| 2 | *
|
| 3 | * Copyright (c) 2012 ZTE Corporation.
|
| 4 | *
|
| 5 | ***************************************************************************
|
| 6 | * Ä£ ¿é Ãû :
|
| 7 | * ÎÄ ¼þ Ãû :
|
| 8 | * Ïà¹ØÎļþ :
|
| 9 | * ʵÏÖ¹¦ÄÜ :
|
| 10 | * ×÷ Õß :
|
| 11 | * °æ ±¾ :
|
| 12 | * Íê³ÉÈÕÆÚ :
|
| 13 | * ÆäËü˵Ã÷ :
|
| 14 | **************************************************************************/
|
| 15 |
|
| 16 | /**************************************************************************
|
| 17 | * Ð޸ļǼ
|
| 18 | **************************************************************************/
|
| 19 | /**************************************************************************
|
| 20 | * Ð޸ıàºÅ :
|
| 21 | * ÐÞ ¸Ä ÈË :
|
| 22 | * ÐÞ¸ÄÈÕÆÚ :
|
| 23 | * ÐÞ¸ÄÄÚÈÝ :
|
| 24 | **************************************************************************/
|
| 25 | #ifndef _MMP_AMR_API_H
|
| 26 | #define _MMP_AMR_API_H
|
| 27 |
|
| 28 | /**************************************************************************
|
| 29 | * #includeÇø
|
| 30 | **************************************************************************/
|
| 31 | #include"oss_api.h"
|
| 32 | #ifdef __cplusplus
|
| 33 | extern "C" {
|
| 34 | #endif
|
| 35 |
|
| 36 | /**************************************************************************
|
| 37 | * ºê¶¨ÒåÇø
|
| 38 | **************************************************************************/
|
| 39 | #define ZAMR_ERROR (0)
|
| 40 | #define ZAMR_SUCCESS (1)
|
| 41 |
|
| 42 | /**************************************************************************
|
| 43 | * Êý¾Ý½á¹¹¶¨ÒåÇø
|
| 44 | **************************************************************************/
|
| 45 | typedef enum
|
| 46 | {
|
| 47 | ZMMP_AMR_ENC_MODE_0, /* NB:4.75 kbit/s, WB:6.60 kbit/s */
|
| 48 | ZMMP_AMR_ENC_MODE_1, /* NB:5.15 kbit/s, WB:8.85 kbit/s */
|
| 49 | ZMMP_AMR_ENC_MODE_2, /* NB:5.90 kbit/s, WB:12.65 kbit/s */
|
| 50 | ZMMP_AMR_ENC_MODE_3, /* NB:6.70 kbit/s, WB:14.25 kbit/s */
|
| 51 | ZMMP_AMR_ENC_MODE_4, /* NB:7.40 kbit/s, WB:15.85 kbit/s */
|
| 52 | ZMMP_AMR_ENC_MODE_5, /* NB:7.95 kbit/s, WB:18.25 kbit/s */
|
| 53 | ZMMP_AMR_ENC_MODE_6, /* NB:10.2 kbit/s, WB:19.85 kbit/s */
|
| 54 | ZMMP_AMR_ENC_MODE_7, /* NB:12.2 kbit/s, WB:23.05 kbit/s */
|
| 55 | ZMMP_AMR_ENC_MODE_8, /* NB:DTX, WB:23.85 kbit/s */
|
| 56 | ZMMP_AMR_ENC_MODE_9, /* NB:ÎÞЧ, WB:DTX */
|
| 57 | ZMMP_AMR_ENC_MODE_INVALID /* NB:ÎÞЧ, WB:ÎÞЧ */
|
| 58 | }T_zMmp_AmrEncMode;
|
| 59 |
|
| 60 | /**************************************************************************
|
| 61 | * º¯ÊýÉùÃ÷Çø
|
| 62 | **************************************************************************/
|
| 63 | /**************************************************************************
|
| 64 | * ¹¦ÄÜÃèÊö: ´ò¿ªAMR½âÂëÆ÷
|
| 65 | * ²ÎÊý˵Ã÷:
|
| 66 | * (´«Èë²ÎÊý) ÎÞ
|
| 67 | * (´«³ö²ÎÊý) ÎÞ
|
| 68 | * ·µ »Ø Öµ: AMR½âÂëÆ÷ÉÏÏÂÎÄ,NULLΪ´ò¿ª½âÂëÆ÷ʧ°Ü
|
| 69 | * ÆäËü˵Ã÷: ÎÞ
|
| 70 | **************************************************************************/
|
| 71 | VOID* zMmp_AmrDecOpen(VOID);
|
| 72 |
|
| 73 | /**************************************************************************
|
| 74 | * ¹¦ÄÜÃèÊö: ´ò¿ªAMR±àÂëÆ÷
|
| 75 | * ²ÎÊý˵Ã÷:
|
| 76 | * (´«Èë²ÎÊý) isDtxEnable: FALSE:²»Ö§³Ödtx£¬TRUE:Ö§³Ödtx
|
| 77 | * (´«³ö²ÎÊý) ÎÞ
|
| 78 | * ·µ »Ø Öµ: AMR±àÂëÆ÷ÉÏÏÂÎÄ£¬NULLΪ´ò¿ª±àÂëÆ÷ʧ°Ü
|
| 79 | * ÆäËü˵Ã÷: ÎÞ
|
| 80 | **************************************************************************/
|
| 81 |
|
| 82 | VOID* zMmp_AmrEncOpen(BOOL isDtxEnable);
|
| 83 |
|
| 84 | /**************************************************************************
|
| 85 | * ¹¦ÄÜÃèÊö: ½âÒ»Ö¡AMRÊý¾Ý
|
| 86 | * ²ÎÊý˵Ã÷:
|
| 87 | * (´«Èë²ÎÊý) pCodecContext: AMR½âÂëÉÏÏÂÎÄ
|
| 88 | pAmr: ÊäÈëAMRÊý¾ÝÆðʼµØÖ· ,¿Õ¼ä×îÉÙ17¸ö°ë×Ö(16 + 1(¹Ì¶¨0x2))
|
| 89 | * (´«³ö²ÎÊý) pPcm: Êä³öPCMÊý¾ÝÆðʼµØÖ· ,¿Õ¼ä×îÉÙ160¸ö°ë×Ö
|
| 90 | * ·µ »Ø Öµ: ZAMR_ERROR (0)
|
| 91 | ZAMR_SUCCESS (1)
|
| 92 | * ÆäËü˵Ã÷: ÎÞ
|
| 93 | **************************************************************************/
|
| 94 |
|
| 95 | UINT16 zMmp_AmrDecode(VOID *pCodecContext, const UINT16 *pAmr, UINT16 *pPcm);
|
| 96 |
|
| 97 | /**************************************************************************
|
| 98 | * ¹¦ÄÜÃèÊö: ±àÒ»Ö¡PCMÊý¾Ý
|
| 99 | * ²ÎÊý˵Ã÷:
|
| 100 | * (´«Èë²ÎÊý) pCodecContext: AMR±àÂëÉÏÏÂÎÄ
|
| 101 | mode: ±àÂëģʽ
|
| 102 | pPcm: PCMÊý¾ÝÆðʼµØÖ· ,¿Õ¼ä×îÉÙ160¸ö°ë×Ö
|
| 103 | * (´«³ö²ÎÊý) pAmr: Êä³öAMRÊý¾ÝÆðʼµØÖ·,¿Õ¼ä×îÉÙ17¸ö°ë×Ö(16 + 1(¹Ì¶¨0x2))
|
| 104 | * ·µ »Ø Öµ: ZAMR_ERROR (0)
|
| 105 | ZAMR_SUCCESS (1)
|
| 106 | * ÆäËü˵Ã÷: ÎÞ
|
| 107 | **************************************************************************/
|
| 108 |
|
| 109 | UINT16 zMmp_AmrEncode(VOID *pCodecContext, T_zMmp_AmrEncMode mode, const UINT16 *pPcm, UINT16 *pAmr);
|
| 110 |
|
| 111 | /**************************************************************************
|
| 112 | * ¹¦ÄÜÃèÊö: ¹Ø±Õ½âÂëÆ÷
|
| 113 | * ²ÎÊý˵Ã÷:
|
| 114 | * (´«Èë²ÎÊý) pCodecContext: AMR½âÂëÉÏÏÂÎÄ
|
| 115 | * (´«³ö²ÎÊý) ÎÞ
|
| 116 | * ·µ »Ø Öµ: ÎÞ
|
| 117 | * ÆäËü˵Ã÷: ÎÞ
|
| 118 | **************************************************************************/
|
| 119 |
|
| 120 | VOID zMmp_AmrDecClose(VOID *pCodecContext);
|
| 121 |
|
| 122 | /**************************************************************************
|
| 123 | * ¹¦ÄÜÃèÊö: ¹Ø±Õ±àÂëÆ÷
|
| 124 | * ²ÎÊý˵Ã÷:
|
| 125 | * (´«Èë²ÎÊý) pCodecContext: AMR±àÂëÉÏÏÂÎÄ
|
| 126 | * (´«³ö²ÎÊý) ÎÞ
|
| 127 | * ·µ »Ø Öµ: ÎÞ
|
| 128 | * ÆäËü˵Ã÷: ÎÞ
|
| 129 | **************************************************************************/
|
| 130 |
|
| 131 | VOID zMmp_AmrEncClose(VOID *pCodecContext);
|
| 132 |
|
| 133 | /**************************************************************************
|
| 134 | * È«¾Ö³£Á¿/±äÁ¿ÉùÃ÷Çø
|
| 135 | **************************************************************************/
|
| 136 |
|
| 137 | #ifdef __cplusplus
|
| 138 | }
|
| 139 | #endif
|
| 140 |
|
| 141 | #endif
|