libavcodec/libmp3lame.c File Reference

Interface to libmp3lame for mp3 encoding. More...

#include "libavutil/intreadwrite.h"
#include "avcodec.h"
#include "mpegaudio.h"
#include <lame/lame.h>

Go to the source code of this file.

Data Structures

struct  Mp3AudioContext

Defines

#define BUFFER_SIZE   (7200 + 2*MPA_FRAME_SIZE + MPA_FRAME_SIZE/4)

Functions

static av_cold int MP3lame_encode_init (AVCodecContext *avctx)
static int mp3len (void *data, int *samplesPerFrame, int *sampleRate)
static int MP3lame_encode_frame (AVCodecContext *avctx, unsigned char *frame, int buf_size, void *data)
static av_cold int MP3lame_encode_close (AVCodecContext *avctx)

Variables

static const int sSampleRates []
static const int sBitRates [2][3][15]
static const int sSamplesPerFrame [2][3]
static const int sBitsPerSlot [3]
AVCodec ff_libmp3lame_encoder


Detailed Description

Interface to libmp3lame for mp3 encoding.

Definition in file libmp3lame.c.


Define Documentation

#define BUFFER_SIZE   (7200 + 2*MPA_FRAME_SIZE + MPA_FRAME_SIZE/4)

Definition at line 32 of file libmp3lame.c.

Referenced by http_getc(), http_seek(), MP3lame_encode_frame(), and oggvorbis_encode_frame().


Function Documentation

static av_cold int MP3lame_encode_close ( AVCodecContext avctx  )  [static]

Definition at line 259 of file libmp3lame.c.

static int MP3lame_encode_frame ( AVCodecContext avctx,
unsigned char *  frame,
int  buf_size,
void *  data 
) [static]

Definition at line 162 of file libmp3lame.c.

static av_cold int MP3lame_encode_init ( AVCodecContext avctx  )  [static]

Definition at line 44 of file libmp3lame.c.

static int mp3len ( void *  data,
int *  samplesPerFrame,
int *  sampleRate 
) [static]

Definition at line 132 of file libmp3lame.c.

Referenced by MP3lame_encode_frame().


Variable Documentation

Initial value:

 {
    "libmp3lame",
    AVMEDIA_TYPE_AUDIO,
    CODEC_ID_MP3,
    sizeof(Mp3AudioContext),
    MP3lame_encode_init,
    MP3lame_encode_frame,
    MP3lame_encode_close,
    .capabilities= CODEC_CAP_DELAY,
    .sample_fmts = (const enum AVSampleFormat[]){AV_SAMPLE_FMT_S16,



    AV_SAMPLE_FMT_NONE},
    .supported_samplerates= sSampleRates,
    .long_name= NULL_IF_CONFIG_SMALL("libmp3lame MP3 (MPEG audio layer 3)"),
}

Definition at line 271 of file libmp3lame.c.

const int sBitRates[2][3][15] [static]

Initial value:

 {
    {   {  0, 32, 64, 96,128,160,192,224,256,288,320,352,384,416,448},
        {  0, 32, 48, 56, 64, 80, 96,112,128,160,192,224,256,320,384},
        {  0, 32, 40, 48, 56, 64, 80, 96,112,128,160,192,224,256,320}
    },
    {   {  0, 32, 48, 56, 64, 80, 96,112,128,144,160,176,192,224,256},
        {  0,  8, 16, 24, 32, 40, 48, 56, 64, 80, 96,112,128,144,160},
        {  0,  8, 16, 24, 32, 40, 48, 56, 64, 80, 96,112,128,144,160}
    },
}

Definition at line 109 of file libmp3lame.c.

Referenced by mp3len().

const int sBitsPerSlot[3] [static]

Initial value:

 {
    32,
    8,
    8
}

Definition at line 126 of file libmp3lame.c.

Referenced by mp3len().

const int sSampleRates[] [static]

Initial value:

 {
    44100, 48000,  32000, 22050, 24000, 16000, 11025, 12000, 8000, 0
}

Definition at line 105 of file libmp3lame.c.

Referenced by mp3len().

const int sSamplesPerFrame[2][3] [static]

Initial value:

{
    {  384,     1152,    1152 },
    {  384,     1152,     576 }
}

Definition at line 120 of file libmp3lame.c.

Referenced by mp3len().


Generated on Fri Oct 26 02:38:17 2012 for FFmpeg by  doxygen 1.5.8