FFmpeg
Classes | Macros | Typedefs | Variables
sbcenc.c File Reference

SBC encoder implementation. More...

#include <stdbool.h>
#include "libavutil/opt.h"
#include "avcodec.h"
#include "internal.h"
#include "profiles.h"
#include "put_bits.h"
#include "sbc.h"
#include "sbcdsp.h"

Classes

struct  SBCEncContext
 

Macros

#define OFFSET(x)   offsetof(SBCEncContext, x)
 
#define AE   AV_OPT_FLAG_AUDIO_PARAM | AV_OPT_FLAG_ENCODING_PARAM
 

Typedefs

typedef struct SBCEncContext SBCEncContext
 

Variables

AVCodec ff_sbc_encoder
 

Detailed Description

SBC encoder implementation.

Variable Documentation

§ ff_sbc_encoder

AVCodec ff_sbc_encoder
Initial value:
= {
.name = "sbc",
.long_name = NULL_IF_CONFIG_SMALL("SBC (low-complexity subband codec)"),
.type = AVMEDIA_TYPE_AUDIO,
.id = AV_CODEC_ID_SBC,
.priv_data_size = sizeof(SBCEncContext),
.init = sbc_encode_init,
.encode2 = sbc_encode_frame,
.caps_internal = FF_CODEC_CAP_INIT_THREADSAFE,
.channel_layouts = (const uint64_t[]) { AV_CH_LAYOUT_MONO,
AV_CH_LAYOUT_STEREO, 0},
.sample_fmts = (const enum AVSampleFormat[]) { AV_SAMPLE_FMT_S16,
AV_SAMPLE_FMT_NONE },
.supported_samplerates = (const int[]) { 16000, 32000, 44100, 48000, 0 },
.priv_class = &sbc_class,
.profiles = NULL_IF_CONFIG_SMALL(ff_sbc_profiles),
}
#define FF_CODEC_CAP_INIT_THREADSAFE
The codec does not modify any global variables in the init function, allowing to call the init functi...
Definition: internal.h:40
#define NULL_IF_CONFIG_SMALL(x)
Return NULL if CONFIG_SMALL is true, otherwise the argument without modification. ...
Definition: internal.h:186
#define AV_CODEC_CAP_SMALL_LAST_FRAME
Codec can be fed a final frame with a smaller size.
Definition: avcodec.h:989
AVSampleFormat
Audio sample formats.
Definition: samplefmt.h:58
Definition: sbcenc.c:42
signed 16 bits
Definition: samplefmt.h:61