libgsm.c File Reference

Interface to libgsm for gsm encoding/decoding. More...

#include <gsm/gsm.h>
#include "avcodec.h"
#include "internal.h"
#include "gsm.h"

Go to the source code of this file.

Data Structures

struct  LibGSMDecodeContext
 

Typedefs

typedef struct LibGSMDecodeContext LibGSMDecodeContext
 

Functions

static av_cold int libgsm_encode_init (AVCodecContext *avctx)
 
static av_cold int libgsm_encode_close (AVCodecContext *avctx)
 
static int libgsm_encode_frame (AVCodecContext *avctx, unsigned char *frame, int buf_size, void *data)
 
static av_cold int libgsm_decode_init (AVCodecContext *avctx)
 
static av_cold int libgsm_decode_close (AVCodecContext *avctx)
 
static int libgsm_decode_frame (AVCodecContext *avctx, void *data, int *got_frame_ptr, AVPacket *avpkt)
 
static void libgsm_flush (AVCodecContext *avctx)
 

Variables

AVCodec ff_libgsm_encoder
 
AVCodec ff_libgsm_ms_encoder
 
AVCodec ff_libgsm_decoder
 
AVCodec ff_libgsm_ms_decoder
 

Detailed Description

Interface to libgsm for gsm encoding/decoding.

Definition in file libgsm.c.

Typedef Documentation

Function Documentation

static av_cold int libgsm_decode_close ( AVCodecContext avctx)
static

Definition at line 168 of file libgsm.c.

static int libgsm_decode_frame ( AVCodecContext avctx,
void data,
int *  got_frame_ptr,
AVPacket avpkt 
)
static

Definition at line 176 of file libgsm.c.

static av_cold int libgsm_decode_init ( AVCodecContext avctx)
static

Definition at line 130 of file libgsm.c.

static av_cold int libgsm_encode_close ( AVCodecContext avctx)
static

Definition at line 79 of file libgsm.c.

static int libgsm_encode_frame ( AVCodecContext avctx,
unsigned char *  frame,
int  buf_size,
void data 
)
static

Definition at line 86 of file libgsm.c.

static av_cold int libgsm_encode_init ( AVCodecContext avctx)
static

Definition at line 36 of file libgsm.c.

static void libgsm_flush ( AVCodecContext avctx)
static

Definition at line 211 of file libgsm.c.

Variable Documentation

AVCodec ff_libgsm_decoder
Initial value:
= {
.name = "libgsm",
.id = CODEC_ID_GSM,
.priv_data_size = sizeof(LibGSMDecodeContext),
.capabilities = CODEC_CAP_DR1,
.long_name = NULL_IF_CONFIG_SMALL("libgsm GSM"),
}
static int decode(MimicContext *ctx, int quality, int num_coeffs, int is_iframe)
Definition: mimic.c:228
static int init(AVCodecParserContext *s)
Definition: h264_parser.c:336
#define CODEC_CAP_DR1
Codec uses get_buffer() for allocating buffers and supports custom allocators.
Definition: avcodec.h:719
#define NULL_IF_CONFIG_SMALL(x)
Return NULL if CONFIG_SMALL is true, otherwise the argument without modification. ...
Definition: internal.h:191
as in Berlin toast format
Definition: avcodec.h:357
static av_cold int libgsm_decode_close(AVCodecContext *avctx)
Definition: libgsm.c:168
static void close(AVCodecParserContext *s)
Definition: h264_parser.c:327
static void libgsm_flush(AVCodecContext *avctx)
Definition: libgsm.c:211
static av_cold void flush(AVCodecContext *avctx)
Flush (reset) the frame ID after seeking.
Definition: alsdec.c:1779
static av_cold int libgsm_decode_init(AVCodecContext *avctx)
Definition: libgsm.c:130
static int libgsm_decode_frame(AVCodecContext *avctx, void *data, int *got_frame_ptr, AVPacket *avpkt)
Definition: libgsm.c:176
struct LibGSMDecodeContext LibGSMDecodeContext

Definition at line 221 of file libgsm.c.

AVCodec ff_libgsm_encoder
Initial value:
= {
.name = "libgsm",
.id = CODEC_ID_GSM,
.sample_fmts = (const enum AVSampleFormat[]){AV_SAMPLE_FMT_S16,AV_SAMPLE_FMT_NONE},
.long_name = NULL_IF_CONFIG_SMALL("libgsm GSM"),
}
signed 16 bits
Definition: samplefmt.h:30
#define NULL_IF_CONFIG_SMALL(x)
Return NULL if CONFIG_SMALL is true, otherwise the argument without modification. ...
Definition: internal.h:191
static av_cold int libgsm_encode_close(AVCodecContext *avctx)
Definition: libgsm.c:79
as in Berlin toast format
Definition: avcodec.h:357
static av_cold int libgsm_encode_init(AVCodecContext *avctx)
Definition: libgsm.c:36
AVSampleFormat
all in native-endian format
Definition: samplefmt.h:27
static int libgsm_encode_frame(AVCodecContext *avctx, unsigned char *frame, int buf_size, void *data)
Definition: libgsm.c:86

Definition at line 103 of file libgsm.c.

AVCodec ff_libgsm_ms_decoder
Initial value:
= {
.name = "libgsm_ms",
.priv_data_size = sizeof(LibGSMDecodeContext),
.capabilities = CODEC_CAP_DR1,
.long_name = NULL_IF_CONFIG_SMALL("libgsm GSM Microsoft variant"),
}
static int decode(MimicContext *ctx, int quality, int num_coeffs, int is_iframe)
Definition: mimic.c:228
static int init(AVCodecParserContext *s)
Definition: h264_parser.c:336
#define CODEC_CAP_DR1
Codec uses get_buffer() for allocating buffers and supports custom allocators.
Definition: avcodec.h:719
#define NULL_IF_CONFIG_SMALL(x)
Return NULL if CONFIG_SMALL is true, otherwise the argument without modification. ...
Definition: internal.h:191
static av_cold int libgsm_decode_close(AVCodecContext *avctx)
Definition: libgsm.c:168
static void close(AVCodecParserContext *s)
Definition: h264_parser.c:327
static void libgsm_flush(AVCodecContext *avctx)
Definition: libgsm.c:211
static av_cold void flush(AVCodecContext *avctx)
Flush (reset) the frame ID after seeking.
Definition: alsdec.c:1779
static av_cold int libgsm_decode_init(AVCodecContext *avctx)
Definition: libgsm.c:130
static int libgsm_decode_frame(AVCodecContext *avctx, void *data, int *got_frame_ptr, AVPacket *avpkt)
Definition: libgsm.c:176
struct LibGSMDecodeContext LibGSMDecodeContext

Definition at line 234 of file libgsm.c.

AVCodec ff_libgsm_ms_encoder
Initial value:
= {
.name = "libgsm_ms",
.sample_fmts = (const enum AVSampleFormat[]){AV_SAMPLE_FMT_S16,AV_SAMPLE_FMT_NONE},
.long_name = NULL_IF_CONFIG_SMALL("libgsm GSM Microsoft variant"),
}
signed 16 bits
Definition: samplefmt.h:30
#define NULL_IF_CONFIG_SMALL(x)
Return NULL if CONFIG_SMALL is true, otherwise the argument without modification. ...
Definition: internal.h:191
static av_cold int libgsm_encode_close(AVCodecContext *avctx)
Definition: libgsm.c:79
static av_cold int libgsm_encode_init(AVCodecContext *avctx)
Definition: libgsm.c:36
AVSampleFormat
all in native-endian format
Definition: samplefmt.h:27
static int libgsm_encode_frame(AVCodecContext *avctx, unsigned char *frame, int buf_size, void *data)
Definition: libgsm.c:86

Definition at line 114 of file libgsm.c.