mirror of
https://gitee.com/openharmony/third_party_ffmpeg
synced 2024-11-23 19:30:05 +00:00
mpegvideo: move the MpegEncContext fields used from arm asm to the beginning
This should reduce the frequency with which the offsets need to be updated.
This commit is contained in:
parent
5a70a783f0
commit
6a13505c06
@ -22,11 +22,11 @@
|
||||
#define AVCODEC_ARM_ASM_OFFSETS_H
|
||||
|
||||
/* MpegEncContext */
|
||||
#define Y_DC_SCALE 0xa8
|
||||
#define C_DC_SCALE 0xac
|
||||
#define AC_PRED 0xb0
|
||||
#define BLOCK_LAST_INDEX 0xb4
|
||||
#define H263_AIC 0xe4
|
||||
#define INTER_SCANTAB_RASTER_END 0x12c
|
||||
#define Y_DC_SCALE 0x04
|
||||
#define C_DC_SCALE 0x08
|
||||
#define AC_PRED 0x0c
|
||||
#define BLOCK_LAST_INDEX 0x10
|
||||
#define H263_AIC 0x40
|
||||
#define INTER_SCANTAB_RASTER_END 0x88
|
||||
|
||||
#endif /* AVCODEC_ARM_ASM_OFFSETS_H */
|
||||
|
@ -197,6 +197,21 @@ typedef struct MotionEstContext{
|
||||
*/
|
||||
typedef struct MpegEncContext {
|
||||
AVClass *class;
|
||||
|
||||
int y_dc_scale, c_dc_scale;
|
||||
int ac_pred;
|
||||
int block_last_index[12]; ///< last non zero coefficient in block
|
||||
int h263_aic; ///< Advanded INTRA Coding (AIC)
|
||||
|
||||
/* scantables */
|
||||
ScanTable inter_scantable; ///< if inter == intra then intra should be used to reduce tha cache usage
|
||||
ScanTable intra_scantable;
|
||||
ScanTable intra_h_scantable;
|
||||
ScanTable intra_v_scantable;
|
||||
|
||||
/* WARNING: changes above this line require updates to hardcoded
|
||||
* offsets used in asm. */
|
||||
|
||||
struct AVCodecContext *avctx;
|
||||
/* the following parameters must be initialized before encoding */
|
||||
int width, height;///< picture size. must be a multiple of 16
|
||||
@ -243,20 +258,6 @@ typedef struct MpegEncContext {
|
||||
Picture **input_picture; ///< next pictures on display order for encoding
|
||||
Picture **reordered_input_picture; ///< pointer to the next pictures in codedorder for encoding
|
||||
|
||||
int y_dc_scale, c_dc_scale;
|
||||
int ac_pred;
|
||||
int block_last_index[12]; ///< last non zero coefficient in block
|
||||
int h263_aic; ///< Advanded INTRA Coding (AIC)
|
||||
|
||||
/* scantables */
|
||||
ScanTable inter_scantable; ///< if inter == intra then intra should be used to reduce tha cache usage
|
||||
ScanTable intra_scantable;
|
||||
ScanTable intra_h_scantable;
|
||||
ScanTable intra_v_scantable;
|
||||
|
||||
/* WARNING: changes above this line require updates to hardcoded
|
||||
* offsets used in asm. */
|
||||
|
||||
int64_t user_specified_pts; ///< last non-zero pts from AVFrame which was passed into avcodec_encode_video2()
|
||||
/**
|
||||
* pts difference between the first and second input frame, used for
|
||||
|
Loading…
Reference in New Issue
Block a user