#include "libavutil/opt.h"
#include "libavutil/pixdesc.h"
#include "avcodec.h"
#include "internal.h"
#include <x264.h>
#include <float.h>
#include <math.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
Go to the source code of this file.
Data Structures | |
struct | X264Context |
Defines | |
#define | PARSE_X264_OPT(name, var) |
#define | OFFSET(x) offsetof(X264Context, x) |
#define | VE AV_OPT_FLAG_VIDEO_PARAM | AV_OPT_FLAG_ENCODING_PARAM |
Typedefs | |
typedef struct X264Context | X264Context |
Functions | |
static void | X264_log (void *p, int level, const char *fmt, va_list args) |
static int | encode_nals (AVCodecContext *ctx, uint8_t *buf, int size, x264_nal_t *nals, int nnal, int skip_sei) |
static int | X264_frame (AVCodecContext *ctx, uint8_t *buf, int bufsize, void *data) |
static av_cold int | X264_close (AVCodecContext *avctx) |
static int | convert_pix_fmt (enum PixelFormat pix_fmt) |
static av_cold int | X264_init (AVCodecContext *avctx) |
static av_cold void | X264_init_static (AVCodec *codec) |
Variables | |
static enum PixelFormat | pix_fmts_8bit [] |
static enum PixelFormat | pix_fmts_9bit [] |
static enum PixelFormat | pix_fmts_10bit [] |
static const AVOption | options [] |
class { | |
class_name = "libx264" | |
item_name = av_default_item_name | |
option = options | |
version = LIBAVUTIL_VERSION_INT | |
}; | |
static const AVCodecDefault | x264_defaults [] |
AVCodec | ff_libx264_encoder |
#define OFFSET | ( | x | ) | offsetof(X264Context, x) |
#define PARSE_X264_OPT | ( | name, | ||
var | ||||
) |
if (x4->var && x264_param_parse(&x4->params, name, x4->var) < 0) {\ av_log(avctx, AV_LOG_ERROR, "Error parsing option '%s' with value '%s'.\n", name, x4->var);\ return AVERROR(EINVAL);\ }
Definition at line 212 of file libx264.c.
Referenced by X264_init().
#define VE AV_OPT_FLAG_VIDEO_PARAM | AV_OPT_FLAG_ENCODING_PARAM |
typedef struct X264Context X264Context |
static int convert_pix_fmt | ( | enum PixelFormat | pix_fmt | ) | [static] |
Definition at line 196 of file libx264.c.
Referenced by X264_init().
static int encode_nals | ( | AVCodecContext * | ctx, | |
uint8_t * | buf, | |||
int | size, | |||
x264_nal_t * | nals, | |||
int | nnal, | |||
int | skip_sei | |||
) | [static] |
Definition at line 88 of file libx264.c.
Referenced by X264_frame(), and X264_init().
static av_cold int X264_close | ( | AVCodecContext * | avctx | ) | [static] |
static int X264_frame | ( | AVCodecContext * | ctx, | |
uint8_t * | buf, | |||
int | bufsize, | |||
void * | data | |||
) | [static] |
static av_cold int X264_init | ( | AVCodecContext * | avctx | ) | [static] |
static av_cold void X264_init_static | ( | AVCodec * | codec | ) | [static] |
static void X264_log | ( | void * | p, | |
int | level, | |||
const char * | fmt, | |||
va_list | args | |||
) | [static] |
const { ... } [static] |
class_name = "libx264" |
{ .name = "libx264", .type = AVMEDIA_TYPE_VIDEO, .id = CODEC_ID_H264, .priv_data_size = sizeof(X264Context), .init = X264_init, .encode = X264_frame, .close = X264_close, .capabilities = CODEC_CAP_DELAY | CODEC_CAP_AUTO_THREADS, .long_name = NULL_IF_CONFIG_SMALL("libx264 H.264 / AVC / MPEG-4 AVC / MPEG-4 part 10"), .priv_class = &class, .defaults = x264_defaults, .init_static_data = X264_init_static, }
enum PixelFormat pix_fmts_10bit[] [static] |
{ PIX_FMT_YUV420P10, PIX_FMT_YUV422P10, PIX_FMT_YUV444P10, PIX_FMT_NONE }
Definition at line 496 of file libx264.c.
Referenced by X264_init_static().
enum PixelFormat pix_fmts_8bit[] [static] |
{ PIX_FMT_YUV420P, PIX_FMT_YUVJ420P, PIX_FMT_YUV422P, PIX_FMT_YUV444P, PIX_FMT_NONE }
Definition at line 484 of file libx264.c.
Referenced by X264_init_static().
enum PixelFormat pix_fmts_9bit[] [static] |
{ PIX_FMT_YUV420P9, PIX_FMT_YUV444P9, PIX_FMT_NONE }
Definition at line 491 of file libx264.c.
Referenced by X264_init_static().
const AVCodecDefault x264_defaults[] [static] |
{ { "b", "0" }, { "bf", "-1" }, { "g", "-1" }, { "qmin", "-1" }, { "qmax", "-1" }, { "qdiff", "-1" }, { "qblur", "-1" }, { "qcomp", "-1" }, { "refs", "-1" }, { "sc_threshold", "-1" }, { "trellis", "-1" }, { "nr", "-1" }, { "me_range", "-1" }, { "me_method", "-1" }, { "subq", "-1" }, { "b_strategy", "-1" }, { "keyint_min", "-1" }, { "coder", "-1" }, { "cmp", "-1" }, { "threads", AV_STRINGIFY(X264_THREADS_AUTO) }, { NULL }, }