FFmpeg
Loading...
Searching...
No Matches
amfenc_h264.c File Reference
#include "libavutil/avassert.h"
#include "libavutil/hwcontext_amf.h"
#include "libavutil/internal.h"
#include "libavutil/mem.h"
#include "libavutil/opt.h"
#include "libavutil/pixdesc.h"
#include "amfenc.h"
#include "codec_internal.h"
#include <AMF/components/PreAnalysis.h>

Go to the source code of this file.

Macros

#define OFFSET(x)
 
#define VE   AV_OPT_FLAG_VIDEO_PARAM | AV_OPT_FLAG_ENCODING_PARAM
 

Functions

static av_cold int amf_encode_init_h264 (AVCodecContext *avctx)
 

Variables

static const AVOption options []
 
static const FFCodecDefault defaults []
 
static const AVClass h264_amf_class
 
const FFCodec ff_h264_amf_encoder
 

Macro Definition Documentation

◆ OFFSET

#define OFFSET ( x)
Value:
offsetof(AMFEncoderContext, x)
AMF encoder context.
Definition amfenc.h:40

Definition at line 29 of file amfenc_h264.c.

◆ VE

Definition at line 30 of file amfenc_h264.c.

Function Documentation

◆ amf_encode_init_h264()

static av_cold int amf_encode_init_h264 ( AVCodecContext * avctx)
static

Color Range (Support for older Drivers)

Color Depth

Color Transfer Characteristics (AMF matches ISO/IEC)

Color Primaries (AMF matches ISO/IEC)

VBV Buffer

Maximum Access Unit Size and AUD

Definition at line 197 of file amfenc_h264.c.

Variable Documentation

◆ options

const AVOption options[]
static

Definition at line 32 of file amfenc_h264.c.

◆ defaults

const FFCodecDefault defaults[]
static
Initial value:
= {
{ "refs", "-1" },
{ "aspect", "0" },
{ "qmin", "-1" },
{ "qmax", "-1" },
{ "b", "0" },
{ "g", "-1" },
{ "slices", "1" },
{ "flags", "+loop"},
{ NULL },
}
#define NULL
Definition coverity.c:32

Definition at line 632 of file amfenc_h264.c.

◆ h264_amf_class

const AVClass h264_amf_class
static
Initial value:
= {
.class_name = "h264_amf",
.item_name = av_default_item_name,
.option = options,
}
const char * av_default_item_name(void *ptr)
Return the context name.
Definition log.c:241
#define LIBAVUTIL_VERSION_INT
Definition version.h:85

Definition at line 644 of file amfenc_h264.c.

◆ ff_h264_amf_encoder

const FFCodec ff_h264_amf_encoder
Initial value:
= {
.p.name = "h264_amf",
CODEC_LONG_NAME("AMD AMF H.264 Encoder"),
.p.type = AVMEDIA_TYPE_VIDEO,
.priv_data_size = sizeof(AMFEncoderContext),
.p.priv_class = &h264_amf_class,
.defaults = defaults,
.p.wrapper_name = "amf",
.hw_configs = ff_amfenc_hw_configs,
}
const AVCodecHWConfigInternal *const ff_amfenc_hw_configs[]
Definition amfenc.c:714
int av_cold ff_amf_encode_close(AVCodecContext *avctx)
Common encoder termination function.
Definition amfenc.c:140
int ff_amf_receive_packet(AVCodecContext *avctx, AVPacket *avpkt)
Ecoding one frame - common function for all AMF encoders.
Definition amfenc.c:579
enum AVPixelFormat ff_amf_pix_fmts[]
Supported formats.
Definition amfenc.c:55
static const FFCodecDefault defaults[]
Definition amfenc_av1.c:723
static av_cold int amf_encode_init_h264(AVCodecContext *avctx)
static const AVClass h264_amf_class
#define CODEC_PIXFMTS_ARRAY(array)
#define FF_CODEC_CAP_NOT_INIT_THREADSAFE
The codec is not known to be init-threadsafe (i.e.
#define FF_CODEC_RECEIVE_PACKET_CB(func)
#define CODEC_LONG_NAME(str)
#define FF_CODEC_CAP_INIT_CLEANUP
The codec allows calling the close function for deallocation even if the init function returned a fai...
#define AV_CODEC_CAP_DELAY
Encoder or decoder requires flushing with NULL input at the end in order to give the complete and cor...
Definition codec.h:79
#define AV_CODEC_CAP_DR1
Codec uses get_buffer() or get_encode_buffer() for allocating buffers and supports custom allocators.
Definition codec.h:49
#define AV_CODEC_CAP_HARDWARE
Codec is backed by a hardware implementation.
Definition codec.h:133
@ AV_CODEC_ID_H264
Definition codec_id.h:77
@ AVMEDIA_TYPE_VIDEO
Definition avutil.h:200
@ AVCOL_RANGE_MPEG
Narrow or limited range content.
Definition pixfmt.h:766
@ AVCOL_RANGE_JPEG
Full range content.
Definition pixfmt.h:783

Definition at line 651 of file amfenc_h264.c.