FFmpeg
|
#include "config_components.h"
#include <stdint.h>
#include "libavutil/emms.h"
#include "libavutil/internal.h"
#include "libavutil/intmath.h"
#include "libavutil/mathematics.h"
#include "libavutil/mem_internal.h"
#include "libavutil/opt.h"
#include "libavutil/thread.h"
#include "avcodec.h"
#include "encode.h"
#include "idctdsp.h"
#include "mpeg12codecs.h"
#include "mpeg12data.h"
#include "mpeg12enc.h"
#include "mpegvideo.h"
#include "mpegvideodata.h"
#include "mpegvideoenc.h"
#include "h261enc.h"
#include "h263.h"
#include "h263data.h"
#include "h263enc.h"
#include "mjpegenc_common.h"
#include "mathops.h"
#include "mpegutils.h"
#include "mjpegenc.h"
#include "speedhqenc.h"
#include "msmpeg4enc.h"
#include "pixblockdsp.h"
#include "qpeldsp.h"
#include "faandct.h"
#include "aandcttab.h"
#include "flvenc.h"
#include "mpeg4video.h"
#include "mpeg4videodata.h"
#include "mpeg4videoenc.h"
#include "internal.h"
#include "bytestream.h"
#include "wmv2enc.h"
#include "rv10enc.h"
#include "packet_internal.h"
#include <limits.h>
#include "sp5x.h"
#include "mpv_reconstruct_mb_template.c"
Go to the source code of this file.
Macros | |
#define | QUANT_BIAS_SHIFT 8 |
#define | QMAT_SHIFT_MMX 16 |
#define | QMAT_SHIFT 21 |
#define | COPY(a) dst->a= src->a |
#define | ALLOCZ_ARRAYS(p, mult, numb) ((p) = av_calloc(numb, mult * sizeof(*(p)))) |
#define | IS_ENCODER 1 |
#define | INTERLACED_DCT(s) |
#define | MERGE(field) dst->field += src->field; src->field=0 |
Variables | |
static uint8_t | default_mv_penalty [MAX_FCODE+1][MAX_DMV *2+1] |
static uint8_t | default_fcode_tab [MAX_MV *2+1] |
static const AVOption | mpv_generic_options [] |
const AVClass | ff_mpv_enc_class |
static int16_t | basis [64][64] |
The simplest mpeg encoder (well, it was the simplest!).
Definition in file mpegvideo_enc.c.
#define QUANT_BIAS_SHIFT 8 |
Definition at line 80 of file mpegvideo_enc.c.
#define QMAT_SHIFT_MMX 16 |
Definition at line 82 of file mpegvideo_enc.c.
#define QMAT_SHIFT 21 |
Definition at line 83 of file mpegvideo_enc.c.
#define IS_ENCODER 1 |
Definition at line 1037 of file mpegvideo_enc.c.
#define INTERLACED_DCT | ( | s | ) |
Definition at line 3491 of file mpegvideo_enc.c.
|
static |
Definition at line 3578 of file mpegvideo_enc.c.
Referenced by ff_mpv_encode_picture().
|
static |
Definition at line 4217 of file mpegvideo_enc.c.
Referenced by encode_mb_internal().
|
static |
Definition at line 2657 of file mpegvideo_enc.c.
Referenced by encode_mb_hq().
|
static |
Definition at line 3859 of file mpegvideo_enc.c.
Referenced by ff_dct_encode_init().
|
static |
Definition at line 3883 of file mpegvideo_enc.c.
Referenced by ff_dct_encode_init().
void ff_convert_matrix | ( | MpegEncContext * | s, |
int(*) | qmat[64], | ||
uint16_t(*) | qmat16[2][64], | ||
const uint16_t * | quant_matrix, | ||
int | bias, | ||
int | qmin, | ||
int | qmax, | ||
int | intra | ||
) |
Definition at line 107 of file mpegvideo_enc.c.
Referenced by dnxhd_init_qmat(), encode_picture(), and ff_mpv_encode_init().
|
inlinestatic |
Definition at line 191 of file mpegvideo_enc.c.
Referenced by encode_mb_internal(), encode_picture(), and estimate_qp().
void ff_write_quant_matrix | ( | PutBitContext * | pb, |
uint16_t * | matrix | ||
) |
Definition at line 219 of file mpegvideo_enc.c.
Referenced by mpeg4_encode_vol_header().
void ff_init_qscale_tab | ( | MpegEncContext * | s | ) |
init s->current_picture.qscale_table from s->lambda_table
Definition at line 235 of file mpegvideo_enc.c.
Referenced by estimate_qp(), and ff_clean_h263_qscales().
|
static |
Definition at line 248 of file mpegvideo_enc.c.
Referenced by encode_picture().
|
static |
Definition at line 265 of file mpegvideo_enc.c.
Referenced by mpv_encode_defaults().
|
static |
Set the given MpegEncContext to defaults for encoding.
the changed fields will not depend upon the prior state of the MpegEncContext.
Definition at line 275 of file mpegvideo_enc.c.
Referenced by ff_mpv_encode_init().
av_cold int ff_dct_encode_init | ( | MpegEncContext * | s | ) |
Definition at line 290 of file mpegvideo_enc.c.
Referenced by dnxhd_encode_init(), and ff_mpv_encode_init().
av_cold int ff_mpv_encode_init | ( | AVCodecContext * | avctx | ) |
Definition at line 310 of file mpegvideo_enc.c.
Referenced by encode_init(), and wmv2_encode_init().
av_cold int ff_mpv_encode_end | ( | AVCodecContext * | avctx | ) |
Definition at line 987 of file mpegvideo_enc.c.
Referenced by mjpeg_encode_close().
|
static |
Definition at line 1040 of file mpegvideo_enc.c.
Referenced by encode_mb_hq(), and encode_thread().
Definition at line 1057 of file mpegvideo_enc.c.
Referenced by get_intra_count().
|
static |
Definition at line 1071 of file mpegvideo_enc.c.
Referenced by select_input_picture().
|
static |
Definition at line 1094 of file mpegvideo_enc.c.
Referenced by load_input_picture(), and select_input_picture().
|
static |
Definition at line 1120 of file mpegvideo_enc.c.
Referenced by ff_mpv_encode_picture().
|
static |
Definition at line 1261 of file mpegvideo_enc.c.
Referenced by select_input_picture().
|
static |
Definition at line 1302 of file mpegvideo_enc.c.
Referenced by estimate_best_b_count().
|
static |
Definition at line 1323 of file mpegvideo_enc.c.
Referenced by select_input_picture().
|
static |
Definition at line 1468 of file mpegvideo_enc.c.
Referenced by ff_mpv_encode_picture().
|
static |
Definition at line 1651 of file mpegvideo_enc.c.
Referenced by ff_mpv_encode_picture().
|
static |
Definition at line 1687 of file mpegvideo_enc.c.
Referenced by frame_start().
|
static |
Definition at line 1708 of file mpegvideo_enc.c.
Referenced by av_timecode_init(), cavs_decode_frame(), decode_dds1(), decode_dsw1(), decode_tsw1(), ff_mpv_encode_picture(), get_duration(), and scale_internal().
int ff_mpv_encode_picture | ( | AVCodecContext * | avctx, |
AVPacket * | pkt, | ||
const AVFrame * | pic_arg, | ||
int * | got_packet | ||
) |
Definition at line 1754 of file mpegvideo_enc.c.
|
inlinestatic |
Definition at line 2003 of file mpegvideo_enc.c.
Referenced by encode_mb_internal().
|
inlinestatic |
Definition at line 2059 of file mpegvideo_enc.c.
Referenced by encode_mb_internal().
|
static |
Definition at line 2093 of file mpegvideo_enc.c.
Referenced by encode_mb_internal().
|
static |
Definition at line 2117 of file mpegvideo_enc.c.
Referenced by encode_mb().
|
static |
Definition at line 2508 of file mpegvideo_enc.c.
Referenced by encode_mb_hq(), and encode_thread().
|
inlinestatic |
Definition at line 2518 of file mpegvideo_enc.c.
Referenced by encode_mb_hq(), and encode_thread().
|
inlinestatic |
Definition at line 2546 of file mpegvideo_enc.c.
Referenced by encode_mb_hq(), and encode_thread().
|
inlinestatic |
Definition at line 2585 of file mpegvideo_enc.c.
Referenced by encode_thread().
|
static |
Definition at line 2636 of file mpegvideo_enc.c.
Referenced by block_sse(), encode_thread(), ff_ac3dsp_set_downmix_x86(), ff_libwebp_get_frame(), ff_showcqt_init_x86(), ff_vp9dsp_init_16bpp_x86(), ff_vp9dsp_init_x86(), main(), run_psnr(), sse_16width_msa(), sse_4width_msa(), sse_8width_msa(), sse_mb(), and X264_frame().
|
static |
Definition at line 2691 of file mpegvideo_enc.c.
Referenced by encode_picture().
|
static |
Definition at line 2710 of file mpegvideo_enc.c.
Referenced by encode_picture().
|
static |
Definition at line 2735 of file mpegvideo_enc.c.
Referenced by encode_picture().
|
static |
Definition at line 2758 of file mpegvideo_enc.c.
Referenced by encode_thread().
|
static |
Definition at line 2778 of file mpegvideo_enc.c.
Referenced by update_mb_info().
|
static |
Definition at line 2798 of file mpegvideo_enc.c.
Referenced by encode_thread().
int ff_mpv_reallocate_putbitbuffer | ( | MpegEncContext * | s, |
size_t | threshold, | ||
size_t | size_increase | ||
) |
Definition at line 2821 of file mpegvideo_enc.c.
Referenced by encode_thread(), and ff_mjpeg_encode_stuffing().
|
static |
Definition at line 2855 of file mpegvideo_enc.c.
Referenced by encode_picture().
|
static |
Definition at line 3492 of file mpegvideo_enc.c.
Referenced by encode_picture().
|
static |
Definition at line 3498 of file mpegvideo_enc.c.
Referenced by encode_picture().
|
static |
Definition at line 3526 of file mpegvideo_enc.c.
Referenced by encode_picture().
|
static |
Definition at line 3564 of file mpegvideo_enc.c.
Referenced by encode_picture().
|
static |
Definition at line 4198 of file mpegvideo_enc.c.
Referenced by dct_quantize_refine().
void ff_block_permute | ( | int16_t * | block, |
uint8_t * | permutation, | ||
const uint8_t * | scantable, | ||
int | last | ||
) |
Permute an 8x8 block according to permutation.
block | the block which will be permuted according to the given permutation vector |
permutation | the permutation vector |
last | the last non zero coefficient in scantable order, used to speed the permutation up |
scantable | the used scantable, this is only used to speed the permutation up, the block is not (inverse) permutated to scantable order! |
Definition at line 4544 of file mpegvideo_enc.c.
Referenced by dnxhd_10bit_dct_quantize(), dnxhd_10bit_dct_quantize_444(), and ff_dct_quantize_c().
int ff_dct_quantize_c | ( | MpegEncContext * | s, |
int16_t * | block, | ||
int | n, | ||
int | qscale, | ||
int * | overflow | ||
) |
Definition at line 4569 of file mpegvideo_enc.c.
Referenced by dnxhd_encode_init(), encode_mb_internal(), and ff_dct_encode_init().
Definition at line 91 of file mpegvideo_enc.c.
Referenced by mpv_encode_defaults().
|
static |
Definition at line 92 of file mpegvideo_enc.c.
Referenced by mpv_encode_defaults(), and mpv_encode_init_static().
|
static |
Definition at line 94 of file mpegvideo_enc.c.
const AVClass ff_mpv_enc_class |
Definition at line 100 of file mpegvideo_enc.c.
|
static |
Definition at line 4196 of file mpegvideo_enc.c.
Referenced by add_8x8basis_c(), add_8x8basis_TMPL(), build_basis(), dct_quantize_refine(), ff_tx_gen_split_radix_parity_revtab(), parity_revtab_generator(), try_8x8basis_c(), and try_8x8basis_TMPL().