5/19/2012

Changes to MVS interface for EVRC-NW (SO-73 vocoder) support

MVS should provide enhanced/new frame info type to support 1/8th rate non-critical frame type.
MVS defines new vocoder mode as MVS_MODE_EVRC_NW 
Following are the new definitions added for MVS APIs
1.1 New MVS Definitions
Following are the new values defined in the corresponding enums to support SO-73


mvs_mode_type:      MVS_MODE_4GV_NW is used to denote SO-73 vocoder whereever mvs_mode_type is used. eg: mvs_enable() API should use the above enum value for SO-73.
typedef enum {
  MVS_MODE_NONE,
  MVS_MODE_IS733,       /* QCELP-13k                    */
  MVS_MODE_IS127,       /* EVRC-8k                      */
  MVS_MODE_4GV_NB,      /* 4GV narrow band              */
  MVS_MODE_4GV_WB,      /* 4GV wide band                */
  MVS_MODE_AMR,         /* Adaptive multi-rate          */
  MVS_MODE_EFR,         /* Enhanced full rate           */
  MVS_MODE_FR,          /* Full rate                    */
  MVS_MODE_HR,          /* Half rate                    */
  MVS_MODE_LINEAR_PCM,  /* enable/disable PCM interface */
  MVS_MODE_G711,        /* G.711 vocoder                */
  MVS_MODE_G723,        /* G.723 vocoder                */
  MVS_MODE_PCM,         /* PCM vocoder                  */
  MVS_MODE_AMR_WB,      /* AMR-WB vocoder               */
  MVS_MODE_G729A,       /* G729A vocoder                */
  MVS_MODE_G711A,       /* G711A vocoder                */
  MVS_MODE_G722,        /* G722 vocoder                 */
  MVS_MODE_4GV_NW,      /* 4GV narrowband-wideband      */
  MVS_MODE_MAX,
  MVS_MODE_32BIT_DUMMY = 0x7FFFFFFF
} mvs_mode_type;
mvs_voc_rate_type: MVS_VOC_8_RATE_NONCRITICAL signifies that, the encoded packet associated with, is an Non-critical eighth rate frame.
typedef enum {
  MVS_VOC_0_RATE,             /* blank frame   */
  MVS_VOC_8_RATE,             /* 1/8 rate      */
  MVS_VOC_4_RATE,             /* 1/4 rate      */
  MVS_VOC_2_RATE,             /* 1/2 rate      */
  MVS_VOC_1_RATE,             /* full rate     */
  MVS_VOC_ERASURE,            /* erasure frame */
  MVS_VOC_8_RATE_NONCRITICAL, /* non-critical 1/8 rate */
  MVS_VOC_RATE_MAX,
  MVS_VOC_RATE_UNDEF = MVS_VOC_RATE_MAX
} mvs_voc_rate_type;

1.2  New APIs
mvssup_set_dtx_mode:     Is the new generic API inroduced for DTX.
void mvssup_set_dtx_mode(
  mvs_dtx_mode_type dtx_mode
)

Dependency:
#include "mvssup.h"

Description:
 This function allows a client to turn ON or OFF the DTX mode.


Parameters:

→ mvs_dtx_mode_type  :  DTX mode indentifier defined as follows

typedef enum {
  MVS_DTX_OFF,          /* disable encoder DTX mode */
  MVS_DTX_ON            /* enable encoder DTX mode  */
} mvs_dtx_mode_type;

No comments:

Post a Comment