FFmpeg
Loading...
Searching...
No Matches
vf_lcevc.c File Reference
#include <stdint.h>
#include <LCEVC/lcevc_dec.h>
#include "libavutil/internal.h"
#include "libavutil/opt.h"
#include "filters.h"
#include "video.h"

Go to the source code of this file.

Data Structures

struct  LCEVCContext
 

Functions

static LCEVC_ColorFormat map_format (int format)
 
static LCEVC_ColorRange map_range (int range)
 
static enum AVColorRange map_av_range (int range)
 
static int alloc_base_frame (AVFilterLink *inlink, const AVFrame *in, LCEVC_PictureHandle *picture)
 
static int send_frame (AVFilterLink *inlink, AVFrame *in)
 
static int alloc_enhanced_frame (AVFilterLink *inlink, const AVFrame *out, LCEVC_PictureHandle *picture)
 
static int generate_output (AVFilterLink *inlink, AVFrame *out)
 
static int receive_frame (AVFilterLink *inlink, AVFrame *out)
 
static int config_props (AVFilterLink *outlink)
 
static void flush_bases (AVFilterContext *ctx)
 
static int activate (AVFilterContext *ctx)
 
static void log_callback (LCEVC_DecoderHandle dec, LCEVC_Event event, LCEVC_PictureHandle pic, const LCEVC_DecodeInformation *info, const uint8_t *data, uint32_t size, void *logctx)
 
static av_cold int init (AVFilterContext *ctx)
 
static av_cold void uninit (AVFilterContext *ctx)
 

Variables

static const AVFilterPad lcevc_outputs []
 
static enum AVPixelFormat pix_fmts []
 
const FFFilter ff_vf_lcevc
 

Function Documentation

◆ map_format()

static LCEVC_ColorFormat map_format ( int format)
static

Definition at line 35 of file vf_lcevc.c.

Referenced by alloc_base_frame(), and alloc_enhanced_frame().

◆ map_range()

static LCEVC_ColorRange map_range ( int range)
inlinestatic

Definition at line 71 of file vf_lcevc.c.

Referenced by alloc_base_frame(), and generate_output().

◆ map_av_range()

static enum AVColorRange map_av_range ( int range)
inlinestatic

Definition at line 83 of file vf_lcevc.c.

◆ alloc_base_frame()

static int alloc_base_frame ( AVFilterLink * inlink,
const AVFrame * in,
LCEVC_PictureHandle * picture )
static

Definition at line 95 of file vf_lcevc.c.

Referenced by send_frame().

◆ send_frame()

static int send_frame ( AVFilterLink * inlink,
AVFrame * in )
static

Definition at line 144 of file vf_lcevc.c.

Referenced by activate().

◆ alloc_enhanced_frame()

static int alloc_enhanced_frame ( AVFilterLink * inlink,
const AVFrame * out,
LCEVC_PictureHandle * picture )
static

Definition at line 184 of file vf_lcevc.c.

Referenced by receive_frame().

◆ generate_output()

static int generate_output ( AVFilterLink * inlink,
AVFrame * out )
static

Definition at line 212 of file vf_lcevc.c.

Referenced by receive_frame().

◆ receive_frame()

static int receive_frame ( AVFilterLink * inlink,
AVFrame * out )
static

Definition at line 269 of file vf_lcevc.c.

Referenced by activate(), and main().

◆ config_props()

static int config_props ( AVFilterLink * outlink)
static

Definition at line 290 of file vf_lcevc.c.

Referenced by activate().

◆ flush_bases()

static void flush_bases ( AVFilterContext * ctx)
static

Definition at line 303 of file vf_lcevc.c.

Referenced by activate(), and uninit().

◆ activate()

static int activate ( AVFilterContext * ctx)
static

Definition at line 316 of file vf_lcevc.c.

◆ log_callback()

static void log_callback ( LCEVC_DecoderHandle dec,
LCEVC_Event event,
LCEVC_PictureHandle pic,
const LCEVC_DecodeInformation * info,
const uint8_t * data,
uint32_t size,
void * logctx )
static

Definition at line 372 of file vf_lcevc.c.

◆ init()

static av_cold int init ( AVFilterContext * ctx)
static

Definition at line 385 of file vf_lcevc.c.

◆ uninit()

static av_cold void uninit ( AVFilterContext * ctx)
static

Definition at line 423 of file vf_lcevc.c.

Variable Documentation

◆ lcevc_outputs

const AVFilterPad lcevc_outputs[]
static
Initial value:
= {
{
.name = "default",
.config_props = config_props,
},
}
@ AVMEDIA_TYPE_VIDEO
Definition avutil.h:200
static int config_props(AVBitStreamFilterLink *link)
Definition source.c:181

Definition at line 432 of file vf_lcevc.c.

◆ pix_fmts

enum AVPixelFormat pix_fmts[]
static
Initial value:
= {
}
@ AV_PIX_FMT_NV12
planar YUV 4:2:0, 12bpp, 1 plane for Y and 1 plane for the UV components, which are interleaved (firs...
Definition pixfmt.h:96
@ AV_PIX_FMT_NONE
Definition pixfmt.h:72
@ AV_PIX_FMT_GRAY10LE
Y , 10bpp, little-endian.
Definition pixfmt.h:321
@ AV_PIX_FMT_YUV420P
planar YUV 4:2:0, 12bpp, (1 Cr & Cb sample per 2x2 Y samples)
Definition pixfmt.h:73
@ AV_PIX_FMT_NV21
as above, but U and V bytes are swapped
Definition pixfmt.h:97
@ AV_PIX_FMT_YUV422P
planar YUV 4:2:2, 16bpp, (1 Cr & Cb sample per 2x1 Y samples)
Definition pixfmt.h:77
@ AV_PIX_FMT_GRAY12LE
Y , 12bpp, little-endian.
Definition pixfmt.h:319
@ AV_PIX_FMT_GRAY8
Y , 8bpp.
Definition pixfmt.h:81
@ AV_PIX_FMT_YUV420P10LE
planar YUV 4:2:0, 15bpp, (1 Cr & Cb sample per 2x2 Y samples), little-endian
Definition pixfmt.h:156
@ AV_PIX_FMT_YUV422P12LE
planar YUV 4:2:2,24bpp, (1 Cr & Cb sample per 2x1 Y samples), little-endian
Definition pixfmt.h:272
@ AV_PIX_FMT_YUV444P
planar YUV 4:4:4, 24bpp, (1 Cr & Cb sample per 1x1 Y samples)
Definition pixfmt.h:78
@ AV_PIX_FMT_YUV420P12LE
planar YUV 4:2:0,18bpp, (1 Cr & Cb sample per 2x2 Y samples), little-endian
Definition pixfmt.h:268
@ AV_PIX_FMT_YUV422P10LE
planar YUV 4:2:2, 20bpp, (1 Cr & Cb sample per 2x1 Y samples), little-endian
Definition pixfmt.h:158
@ AV_PIX_FMT_YUV444P10LE
planar YUV 4:4:4, 30bpp, (1 Cr & Cb sample per 1x1 Y samples), little-endian
Definition pixfmt.h:162
@ AV_PIX_FMT_YUV444P12LE
planar YUV 4:4:4,36bpp, (1 Cr & Cb sample per 1x1 Y samples), little-endian
Definition pixfmt.h:276

Definition at line 440 of file vf_lcevc.c.

◆ ff_vf_lcevc

const FFFilter ff_vf_lcevc
Initial value:
= {
.p.name = "lcevc",
.p.description = NULL_IF_CONFIG_SMALL("LCEVC"),
.activate = activate,
.priv_size = sizeof(LCEVCContext),
.init = init,
}
int(* init)(AVBSFContext *ctx)
Definition dts2pts.c:608
static av_cold void uninit(AVBitStreamFilterContext *ctx)
static int activate(AVBitStreamFilterContext *ctx)
#define FILTER_INPUTS(array)
Definition filters.h:264
#define FILTER_OUTPUTS(array)
Definition filters.h:265
#define FILTER_PIXFMTS_ARRAY(array)
Definition filters.h:244
#define NULL_IF_CONFIG_SMALL(x)
Return NULL if CONFIG_SMALL is true, otherwise the argument without modification.
Definition internal.h:88
static enum AVPixelFormat pix_fmts[]
Definition libkvazaar.c:296
static const AVFilterPad lcevc_outputs[]
Definition vf_lcevc.c:432
const AVFilterPad ff_video_default_filterpad[1]
An AVFilterPad array whose only entry has name "default" and is of type AVMEDIA_TYPE_VIDEO.
Definition video.c:37

Definition at line 449 of file vf_lcevc.c.