|
FFmpeg
|
#include "../ops_chain.h"#include "libavutil/avassert.h"#include "libavutil/avstring.h"#include "libavutil/tree.h"#include "ops_impl_conv.c"#include "ops_entries.c"Go to the source code of this file.
Macros | |
| #define | ENTRY(fname, ...) extern void fname(void); |
| Check that there is no mismatch for the SwsOpExec/SwsOpImpl offset values used by ops_static. More... | |
| #define | ENTRY(fname, ...) { .func = fname, .params = __VA_ARGS__ }, |
| Check that there is no mismatch for the SwsOpExec/SwsOpImpl offset values used by ops_static. More... | |
Functions | |
| static SwsFuncPtr | aarch64_lookup (const SwsAArch64OpImplParams *p) |
| static int | aarch64_setup_linear (const SwsAArch64OpImplParams *p, const SwsOp *op, SwsImplResult *res) |
| static int | aarch64_setup_dither (const SwsAArch64OpImplParams *p, const SwsOp *op, SwsImplResult *res) |
| static int | aarch64_setup (const SwsOpList *ops, int block_size, int n, const SwsAArch64OpImplParams *p, SwsImplResult *out) |
| static int | aarch64_compile (SwsContext *ctx, const SwsOpList *ops, SwsCompiledOp *out) |
Variables | |
| struct { | |
| void(* func )(void) | |
| SwsAArch64OpImplParams params | |
| } | ops_entries [] |
| const SwsOpBackend | backend_aarch64 |
| #define ENTRY | ( | fname, | |
| ... | |||
| ) | extern void fname(void); |
|
static |
Definition at line 59 of file ops.c.
Referenced by aarch64_compile().
|
static |
Compute number of full vector registers needed to pack all non-zero coefficients.
Copy non-zero coefficients, packed in sequential order, offset first. The same order must be followed in asmgen_op_linear().
Definition at line 68 of file ops.c.
Referenced by aarch64_setup().
|
static |
The input dither matrix is (1 << size_log2)² pixels large. It is periodic, so the x and y offsets should be masked to fit inside (1 << size_log2). The width of the matrix is assumed to be at least 8, which matches the maximum block_size for aarch64 asmgen when f32 operations (i.e., dithering) are used. This guarantees that the x offset is aligned and that reading block_size elements does not extend past the end of the row. The x offset doesn't change between components, so it is only required to be masked once. The y offset, on the other hand, may change per component, and would therefore need to be masked for every y_offset value. To simplify the execution, we over-allocate the number of rows of the output dither matrix by the largest y_offset value. This way, we only need to mask y offset once, and can safely increment the dither matrix pointer by fixed offsets for every y_offset change.
Definition at line 101 of file ops.c.
Referenced by aarch64_setup().
|
static |
Definition at line 150 of file ops.c.
Referenced by aarch64_compile().
|
static |
| void(* func) (void) |
Definition at line 50 of file ops.c.
Referenced by aarch64_compile(), and aarch64_lookup().
| SwsAArch64OpImplParams params |
Definition at line 51 of file ops.c.
Referenced by aarch64_collect_op(), aarch64_compile(), aarch64_lookup(), add_context_params(), apply_film_grain(), apply_grain_row(), av_dynamic_hdr_plus_from_t35(), av_film_grain_params_alloc(), blackman(), bwdif_vulkan_filter_frame(), call_resize_kernel(), check_filter_h_4x4(), collect_ops_compile(), cubic(), cudascale_filter_init(), cuvid_output_frame(), DECL_SETUP(), decode_frame(), deint_vaapi_build_filter_params(), deint_vaapi_filter_frame(), drawbox_vaapi_filter_frame(), dump_dynamic_hdr_plus(), dump_dynamic_hdr_vivid(), extract_lltask_from_task(), ff_aom_apply_film_grain(), ff_h274_apply_film_grain(), ff_nvdec_decode_init(), ff_nvenc_encode_close(), ff_parse_itu_t_t35_to_dynamic_hdr_vivid(), ff_rtp_parse_set_crypto(), ff_sipr_decode_frame_16k(), ff_srtp_set_crypto(), ff_sws_filter_generate(), ff_sws_setup_scalar(), ff_sws_setup_vec4(), ff_sws_uop_lookup(), ff_vaapi_vpp_init_params(), ff_vaapi_vpp_render_picture(), ff_vvc_store_sb_mvs(), fguv_32x32xn_c(), fgy_32x32xn_c(), framecrc_write_packet(), gaussian(), generate_grain_uv_c(), generate_grain_y_c(), handle_mdcv(), handle_side_data(), init(), kaiser(), linear_num_vregs(), misc_vaapi_filter_frame(), mmf_read_header(), nvdec_decoder_create(), nvdec_test_capabilities(), nvenc_check_cap(), nvenc_codec_specific_pic_params(), nvenc_open_session(), nvenc_set_timestamp(), ocio_create_display_view_processor(), ocio_create_output_colorspace_processor(), overlay_vaapi_blend(), pad_vaapi_filter_frame(), pitch_unquant_3tap(), print_dynamic_hdr10_plus(), print_dynamic_hdr_vivid(), print_op(), procamp_vaapi_filter_frame(), process_frame(), reconfig_encoder(), run_transcription(), scale_vaapi_filter_frame(), serialize_op(), set_params(), setup_clear(), setup_dither(), setup_filter_h(), setup_filter_h_4x4(), setup_filter_v(), setup_linear(), setup_rw_packed(), setup_scale(), split_cb_shape_sign_unquant(), tonemap_vaapi_filter_frame(), transpose_vaapi_filter_frame(), vaapi_encode_make_packed_header(), vaapi_vpp_colour_properties(), vaapi_vpp_render_single_pipeline_buffer(), vvc_deblock(), vvenc_init(), vvenc_log_callback(), vvenc_parse_vvenc_params(), vvenc_set_color_format(), vvenc_set_framerate(), vvenc_set_pic_format(), vvenc_set_rc_mode(), and vvenc_set_verbository().
| const { ... } ops_entries[] |
Referenced by aarch64_lookup().
| const SwsOpBackend backend_aarch64 |
1.8.17