libavcodec/libamr.c File Reference

Adaptive Multi-Rate (AMR) Audio decoder stub. More...

#include "avcodec.h"
#include <amrnb/interf_dec.h>
#include <amrnb/interf_enc.h>

Go to the source code of this file.

Data Structures

struct  AMR_bitrates

Functions

static int getBitrateMode (int bitrate)
static void amr_decode_fix_avctx (AVCodecContext *avctx)

Variables

static const char * nb_bitrate_unsupported
static const char * wb_bitrate_unsupported


Detailed Description

Adaptive Multi-Rate (AMR) Audio decoder stub.

This code implements both an AMR-NarrowBand (AMR-NB) and an AMR-WideBand (AMR-WB) audio encoder/decoder through external reference code from http://www.3gpp.org/. The license of the code from 3gpp is unclear so you have to download the code separately. Two versions exists: One fixed-point and one floating-point. For some reason the float encoder is significantly faster at least on a P4 1.5GHz (0.9s instead of 9.9s on a 30s audio clip at MR102). Both float and fixed point are supported for AMR-NB, but only float for AMR-WB.

AMR-NB

Float

The float version (default) can be downloaded from: http://www.3gpp.org/ftp/Specs/archive/26_series/26.104/26104-610.zip

Fixed-point

The fixed-point (TS26.073) can be downloaded from: http://www.3gpp.org/ftp/Specs/archive/26_series/26.073/26073-600.zip

Specification

The specification for AMR-NB can be found in TS 26.071 (http://www.3gpp.org/ftp/Specs/html-info/26071.htm) and some other info at http://www.3gpp.org/ftp/Specs/html-info/26-series.htm.

AMR-WB

Float

The reference code can be downloaded from: http://www.3gpp.org/ftp/Specs/archive/26_series/26.204/26204-600.zip

Fixed-point

If someone wants to use the fixed point version it can be downloaded from: http://www.3gpp.org/ftp/Specs/archive/26_series/26.173/26173-571.zip.

Specification

The specification for AMR-WB can be found in TS 26.171 (http://www.3gpp.org/ftp/Specs/html-info/26171.htm) and some other info at http://www.3gpp.org/ftp/Specs/html-info/26-series.htm.

Definition in file libamr.c.


Function Documentation

static void amr_decode_fix_avctx ( AVCodecContext avctx  )  [static]

Definition at line 122 of file libamr.c.

static int getBitrateMode ( int  bitrate  )  [static]

Definition at line 97 of file libamr.c.


Variable Documentation

const char* nb_bitrate_unsupported [static]

Initial value:

    "bitrate not supported: use one of 4.75k, 5.15k, 5.9k, 6.7k, 7.4k, 7.95k, 10.2k or 12.2k\n"

Definition at line 84 of file libamr.c.

const char* wb_bitrate_unsupported [static]

Initial value:

    "bitrate not supported: use one of 6.6k, 8.85k, 12.65k, 14.25k, 15.85k, 18.25k, 19.85k, 23.05k, or 23.85k\n"

Definition at line 86 of file libamr.c.


Generated on Sat Sep 6 21:24:29 2008 for ffmpeg by  doxygen 1.5.6