FFmpeg
|
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <inttypes.h>
#include <math.h>
#include "config.h"
#include "mp_msg.h"
#include "cpudetect.h"
#include "img_format.h"
#include "mp_image.h"
#include "vf.h"
#include "av_helpers.h"
#include "libvo/fastmemcpy.h"
#include "libavutil/internal.h"
#include "libavutil/intreadwrite.h"
#include "libavutil/mem.h"
#include "libavutil/x86/asm.h"
#include "libavcodec/avcodec.h"
Go to the source code of this file.
Data Structures | |
struct | vf_priv_s |
Macros | |
#define | BLOCKSZ 12 |
#define | store_slice_s store_slice_mmx |
#define | store_slice2_s store_slice2_mmx |
#define | mul_thrmat_s mul_thrmat_mmx |
#define | column_fidct_s column_fidct_mmx |
#define | row_idct_s row_idct_mmx |
#define | row_fdct_s row_fdct_mmx |
#define | DCTSIZE 8 |
#define | DCTSIZE_S "8" |
#define | FIX(x, s) ((int) ((x) * (1<<s) + 0.5)&0xffff) |
#define | C64(x) ((uint64_t)((x)|(x)<<16))<<32 | (uint64_t)(x) | (uint64_t)(x)<<16 |
#define | FIX64(x, s) C64(FIX(x,s)) |
#define | MULTIPLY16H(x, k) (((x)*(k))>>16) |
#define | THRESHOLD(r, x, t) if(((unsigned)((x)+t))>t*2) r=(x);else r=0; |
#define | DESCALE(x, n) (((x) + (1 << ((n)-1))) >> n) |
Functions | |
static void | store_slice_mmx (uint8_t *dst, int16_t *src, long dst_stride, long src_stride, long width, long height, long log2_scale) |
static void | store_slice2_mmx (uint8_t *dst, int16_t *src, long dst_stride, long src_stride, long width, long height, long log2_scale) |
static void | mul_thrmat_mmx (struct vf_priv_s *p, int q) |
static void | column_fidct_mmx (int16_t *thr_adr, int16_t *data, int16_t *output, int cnt) |
static void | row_idct_mmx (int16_t *workspace, int16_t *output_adr, int output_stride, int cnt) |
static void | row_fdct_mmx (int16_t *data, const uint8_t *pixels, int line_size, int cnt) |
static void | filter (struct vf_priv_s *p, uint8_t *dst, uint8_t *src, int dst_stride, int src_stride, int width, int height, uint8_t *qp_store, int qp_stride, int is_luma) |
static int | config (struct vf_instance *vf, int width, int height, int d_width, int d_height, unsigned int flags, unsigned int outfmt) |
static void | get_image (struct vf_instance *vf, mp_image_t *mpi) |
static int | put_image (struct vf_instance *vf, mp_image_t *mpi, double pts) |
static void | uninit (struct vf_instance *vf) |
static int | query_format (struct vf_instance *vf, unsigned int fmt) |
static int | control (struct vf_instance *vf, int request, void *data) |
static int | vf_open (vf_instance_t *vf, char *args) |
DECLARE_ASM_CONST (8, uint64_t, MM_FIX_0_382683433) | |
DECLARE_ASM_CONST (8, uint64_t, MM_FIX_1_306562965) | |
DECLARE_ASM_CONST (8, uint64_t, MM_FIX_1_414213562_A) | |
DECLARE_ASM_CONST (8, uint64_t, MM_FIX_1_847759065) | |
DECLARE_ASM_CONST (8, uint64_t, MM_FIX_2_613125930) | |
DECLARE_ASM_CONST (8, uint64_t, MM_FIX_1_414213562) | |
DECLARE_ASM_CONST (8, uint64_t, MM_FIX_1_082392200) | |
DECLARE_ASM_CONST (8, uint64_t, MM_FIX_0_847759065) | |
DECLARE_ASM_CONST (8, uint64_t, MM_FIX_0_566454497) | |
DECLARE_ASM_CONST (8, uint64_t, MM_FIX_0_198912367) | |
DECLARE_ASM_CONST (8, uint64_t, MM_DESCALE_RND) | |
DECLARE_ASM_CONST (8, uint64_t, MM_2) | |
Variables | |
static const short | custom_threshold [64] |
static const uint8_t | dither [8][8] |
const vf_info_t | ff_vf_info_fspp |
uint64_t | ff_MM_FIX_0_541196100 =FIX64(0.541196100, 14) |
uint64_t | ff_MM_FIX_0_707106781 =FIX64(0.707106781, 14) |
#define store_slice_s store_slice_mmx |
#define store_slice2_s store_slice2_mmx |
#define mul_thrmat_s mul_thrmat_mmx |
#define column_fidct_s column_fidct_mmx |
#define row_idct_s row_idct_mmx |
#define row_fdct_s row_fdct_mmx |
#define DCTSIZE_S "8" |
Definition at line 700 of file vf_fspp.c.
Referenced by column_fidct_mmx(), row_fdct_mmx(), and row_idct_mmx().
#define C64 | ( | x | ) | ((uint64_t)((x)|(x)<<16))<<32 | (uint64_t)(x) | (uint64_t)(x)<<16 |
|
static |
Definition at line 183 of file vf_fspp.c.
Referenced by ff_spp_init_x86().
|
static |
|
static |
|
static |
Definition at line 409 of file vf_fspp.c.
Referenced by put_image().
|
static |
Definition at line 489 of file vf_fspp.c.
Referenced by dshow_cycle_formats(), dshow_set_audio_buffer_size(), dxva2_create_decoder(), parse_dsd_prop(), parse_fmtp_config(), vf_open(), and wavpack_encode_init().
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
DECLARE_ASM_CONST | ( | 8 | , |
uint64_t | , | ||
MM_FIX_0_382683433 | |||
) |
DECLARE_ASM_CONST | ( | 8 | , |
uint64_t | , | ||
MM_FIX_1_306562965 | |||
) |
DECLARE_ASM_CONST | ( | 8 | , |
uint64_t | , | ||
MM_FIX_1_414213562_A | |||
) |
DECLARE_ASM_CONST | ( | 8 | , |
uint64_t | , | ||
MM_FIX_1_847759065 | |||
) |
DECLARE_ASM_CONST | ( | 8 | , |
uint64_t | , | ||
MM_FIX_2_613125930 | |||
) |
DECLARE_ASM_CONST | ( | 8 | , |
uint64_t | , | ||
MM_FIX_1_414213562 | |||
) |
DECLARE_ASM_CONST | ( | 8 | , |
uint64_t | , | ||
MM_FIX_1_082392200 | |||
) |
DECLARE_ASM_CONST | ( | 8 | , |
uint64_t | , | ||
MM_FIX_0_847759065 | |||
) |
DECLARE_ASM_CONST | ( | 8 | , |
uint64_t | , | ||
MM_FIX_0_566454497 | |||
) |
DECLARE_ASM_CONST | ( | 8 | , |
uint64_t | , | ||
MM_FIX_0_198912367 | |||
) |
DECLARE_ASM_CONST | ( | 8 | , |
uint64_t | , | ||
MM_DESCALE_RND | |||
) |
DECLARE_ASM_CONST | ( | 8 | , |
uint64_t | , | ||
MM_2 | |||
) |
|
static |
Definition at line 63 of file vf_fspp.c.
Referenced by vf_open().
|
static |
Definition at line 77 of file vf_fspp.c.
Referenced by ac3_decode_transform_coeffs_ch(), encode_frame(), quantize_triangular_ns(), render_charset(), rv40_loop_filter(), store_slice2_mmx(), store_slice_mmx(), and yuv2yuvX_TMPL().
const vf_info_t ff_vf_info_fspp |
uint64_t ff_MM_FIX_0_541196100 =FIX64(0.541196100, 14) |
Definition at line 713 of file vf_fspp.c.
Referenced by column_fidct_mmx(), and row_fdct_mmx().
uint64_t ff_MM_FIX_0_707106781 =FIX64(0.707106781, 14) |
Definition at line 714 of file vf_fspp.c.
Referenced by column_fidct_mmx(), and row_fdct_mmx().