FFmpeg
|
#include "config.h"
#include <dlfcn.h>
#include "libavutil/hwcontext.h"
#include "libavutil/imgutils.h"
#include "libavutil/avassert.h"
#include "libavutil/mem.h"
#include "internal.h"
#include "nvenc.h"
Go to the source code of this file.
Data Structures | |
struct | GUIDTuple |
Macros | |
#define | CUDA_LIBNAME "libcuda.so.1" |
#define | NVENC_LIBNAME "libnvidia-encode.so.1" |
#define | NVENC_CAP 0x30 |
#define | IS_CBR(rc) |
#define | LOAD_LIBRARY(l, path) |
#define | LOAD_SYMBOL(fun, lib, symbol) |
#define | IS_10BIT(pix_fmt) |
#define | IS_YUV444(pix_fmt) |
#define | PRESET_ALIAS(alias, name,...) [PRESET_ ## alias] = { NV_ENC_PRESET_ ## name ## _GUID, __VA_ARGS__ } |
#define | PRESET(name,...) PRESET_ALIAS(name, name, __VA_ARGS__) |
Variables | |
enum AVPixelFormat | ff_nvenc_pix_fmts [] |
struct { | |
NVENCSTATUS nverr | |
int averr | |
const char * desc | |
} | nvenc_errors [] |
#define CUDA_LIBNAME "libcuda.so.1" |
Definition at line 32 of file nvenc.c.
Referenced by nvenc_load_libraries().
#define NVENC_LIBNAME "libnvidia-encode.so.1" |
Definition at line 33 of file nvenc.c.
Referenced by nvenc_load_libraries().
#define NVENC_CAP 0x30 |
Definition at line 53 of file nvenc.c.
Referenced by nvenc_check_device().
#define IS_CBR | ( | rc | ) |
Definition at line 54 of file nvenc.c.
Referenced by nvenc_setup_h264_config(), and nvenc_setup_hevc_config().
#define LOAD_LIBRARY | ( | l, | |
path | |||
) |
Definition at line 58 of file nvenc.c.
Referenced by nvenc_load_libraries().
#define LOAD_SYMBOL | ( | fun, | |
lib, | |||
symbol | |||
) |
Definition at line 68 of file nvenc.c.
Referenced by nvenc_load_libraries().
#define IS_10BIT | ( | pix_fmt | ) |
Definition at line 92 of file nvenc.c.
Referenced by nvenc_check_capabilities(), and nvenc_setup_hevc_config().
#define IS_YUV444 | ( | pix_fmt | ) |
Definition at line 95 of file nvenc.c.
Referenced by nvenc_check_capabilities(), and nvenc_setup_hevc_config().
#define PRESET_ALIAS | ( | alias, | |
name, | |||
... | |||
) | [PRESET_ ## alias] = { NV_ENC_PRESET_ ## name ## _GUID, __VA_ARGS__ } |
Definition at line 534 of file nvenc.c.
Referenced by nvenc_map_preset().
#define PRESET | ( | name, | |
... | |||
) | PRESET_ALIAS(name, name, __VA_ARGS__) |
Definition at line 537 of file nvenc.c.
Referenced by nvenc_map_preset().
|
static |
Definition at line 131 of file nvenc.c.
Referenced by nvenc_print_error().
|
static |
Definition at line 146 of file nvenc.c.
Referenced by ff_nvenc_encode_frame(), nvenc_alloc_surface(), nvenc_load_libraries(), nvenc_open_session(), nvenc_register_frame(), nvenc_setup_encoder(), nvenc_setup_extradata(), nvenc_upload_frame(), and process_output_surface().
|
static |
Definition at line 156 of file nvenc.c.
Referenced by ff_nvenc_encode_init().
|
static |
Definition at line 220 of file nvenc.c.
Referenced by nvenc_check_device(), and nvenc_setup_device().
|
static |
Definition at line 241 of file nvenc.c.
Referenced by nvenc_check_capabilities().
|
static |
Definition at line 277 of file nvenc.c.
Referenced by nvenc_check_capabilities().
|
static |
Definition at line 294 of file nvenc.c.
Referenced by nvenc_check_device(), and nvenc_setup_device().
|
static |
Definition at line 368 of file nvenc.c.
Referenced by nvenc_setup_device().
|
static |
Definition at line 444 of file nvenc.c.
Referenced by ff_nvenc_encode_init().
|
static |
Definition at line 539 of file nvenc.c.
Referenced by nvenc_setup_encoder().
|
static |
Definition at line 565 of file nvenc.c.
Referenced by nvenc_override_rate_control().
|
static |
Definition at line 579 of file nvenc.c.
Referenced by nvenc_override_rate_control(), and nvenc_setup_rate_control().
|
static |
Definition at line 624 of file nvenc.c.
Referenced by nvenc_setup_rate_control().
|
static |
Definition at line 638 of file nvenc.c.
Referenced by nvenc_setup_rate_control().
|
static |
Definition at line 681 of file nvenc.c.
Referenced by nvenc_setup_encoder().
|
static |
Definition at line 779 of file nvenc.c.
Referenced by nvenc_setup_codec_config().
|
static |
Definition at line 863 of file nvenc.c.
Referenced by nvenc_setup_codec_config().
|
static |
Definition at line 942 of file nvenc.c.
Referenced by nvenc_setup_encoder().
|
static |
Definition at line 955 of file nvenc.c.
Referenced by ff_nvenc_encode_init().
|
static |
Definition at line 1070 of file nvenc.c.
Referenced by nvenc_setup_surfaces().
|
static |
Definition at line 1159 of file nvenc.c.
Referenced by ff_nvenc_encode_init().
|
static |
Definition at line 1191 of file nvenc.c.
Referenced by ff_nvenc_encode_init().
av_cold int ff_nvenc_encode_close | ( | AVCodecContext * | avctx | ) |
av_cold int ff_nvenc_encode_init | ( | AVCodecContext * | avctx | ) |
Definition at line 1301 of file nvenc.c.
Referenced by nvenc_old_init().
|
static |
Definition at line 1339 of file nvenc.c.
Referenced by ff_nvenc_encode_frame().
|
static |
Definition at line 1353 of file nvenc.c.
Referenced by nvenc_upload_frame().
|
static |
Definition at line 1383 of file nvenc.c.
Referenced by nvenc_register_frame().
|
static |
Definition at line 1410 of file nvenc.c.
Referenced by nvenc_upload_frame().
|
static |
Definition at line 1448 of file nvenc.c.
Referenced by ff_nvenc_encode_frame().
|
static |
Definition at line 1505 of file nvenc.c.
Referenced by ff_nvenc_encode_frame().
|
inlinestatic |
Definition at line 1526 of file nvenc.c.
Referenced by ff_nvenc_encode_frame().
|
inlinestatic |
Definition at line 1531 of file nvenc.c.
Referenced by nvenc_set_timestamp(), and process_output_surface().
|
static |
Definition at line 1540 of file nvenc.c.
Referenced by process_output_surface().
|
static |
Definition at line 1574 of file nvenc.c.
Referenced by ff_nvenc_encode_frame().
|
static |
Definition at line 1685 of file nvenc.c.
Referenced by ff_nvenc_encode_frame().
int ff_nvenc_encode_frame | ( | AVCodecContext * | avctx, |
AVPacket * | pkt, | ||
const AVFrame * | frame, | ||
int * | got_packet | ||
) |
enum AVPixelFormat ff_nvenc_pix_fmts[] |
NVENCSTATUS nverr |
Definition at line 99 of file nvenc.c.
Referenced by nvenc_map_error().
const char* desc |
Definition at line 101 of file nvenc.c.
Referenced by asf_read_picture(), asf_write_header1(), av_bsf_init(), av_image_alloc(), av_image_copy(), av_image_copy_to_buffer(), av_image_fill_linesizes(), av_image_fill_pointers(), av_image_get_buffer_size(), av_image_get_linesize(), av_picture_crop(), av_picture_pad(), av_pix_fmt_count_planes(), av_pix_fmt_get_chroma_sub_sample(), av_pix_fmt_swap_endianness(), avcodec_align_dimensions(), avcodec_align_dimensions2(), avcodec_descriptor_get_by_name(), avcodec_get_chroma_sub_sample(), avcodec_get_type(), avcodec_profile_name(), check_image_pointers(), choose_pixel_fmt(), config_input(), config_input_ref(), config_inputx(), config_inputy(), config_out_props(), config_output(), config_props(), config_props_output(), copy_picture_field(), create_all_formats(), decode_frame(), dxva2_create_decoder(), encode_frame(), encode_init(), ff_all_formats(), ff_color_frame(), ff_draw_color(), ff_draw_horiz_band(), ff_draw_init(), ff_flac_parse_picture(), ff_get_format(), ff_h264_draw_horiz_band(), ff_hevc_output_frame(), ff_id3v2_write_apic(), ff_mediacodec_dec_init(), ff_qsv_init_internal_session(), ff_sws_alphablendaway(), ff_sws_init_output_funcs(), ff_video_frame_pool_get(), ff_video_frame_pool_init(), filter_frame(), find_codec_or_die(), flush_encoders(), frame_end(), geq_config_props(), get_aspect_ratio(), get_bit_depth(), get_codecs_sorted(), get_deinterleaved_format(), get_format(), get_pix_fmt_depth(), get_video_buffer(), hScale16To15_c(), hScale16To19_c(), hwdownload_query_formats(), init(), init_image(), init_muxer(), is16BPS(), is9_OR_10BPS(), is_hwaccel_pix_fmt(), isALPHA(), isBE(), isPackedRGB(), isPlanar(), isPlanarRGB(), isPlanarYUV(), isRGB(), isYUV(), libopenjpeg_copy_to_packed16(), libopenjpeg_copyto16(), libopenjpeg_decode_frame(), libopenjpeg_ispacked(), libopenjpeg_matches_pix_fmt(), list_formats(), main(), map_pixel_format(), mj2_create_image(), nvenc_print_error(), opengl_draw(), opengl_fill_color_map(), opengl_init_context(), output_frame(), pix_fmt_match(), print_codecs(), print_digraph(), qsv_init_pool(), query_formats(), raw_decode(), raw_encode_init(), raw_init_decoder(), read_gab2_sub(), rgb48Toxyz12(), rv10_write_header(), show_codecs(), show_help_codec(), show_help_muxer(), shuffleplanes_config_input(), smv_img_pnt(), smvjpeg_decode_frame(), swscale(), tiff_unpack_strip(), unsupported_codec(), usePal(), validate_avframe_allocation(), verify_md5(), video_frame_cksum(), video_get_buffer(), write_header(), write_packet(), xwd_encode_frame(), xyz12Torgb48(), and yuv2gbrp_full_X_c().
const { ... } nvenc_errors[] |
Referenced by nvenc_map_error().