| schrobitstream.h | | schrobitstream.h | |
| | | | |
| skipping to change at line 82 | | skipping to change at line 82 | |
| SCHRO_VIDEO_FORMAT_DC4K_24 | | SCHRO_VIDEO_FORMAT_DC4K_24 | |
| } SchroVideoFormatEnum; | | } SchroVideoFormatEnum; | |
| | | | |
| typedef enum _SchroChromaFormat { | | typedef enum _SchroChromaFormat { | |
| SCHRO_CHROMA_444 = 0, | | SCHRO_CHROMA_444 = 0, | |
| SCHRO_CHROMA_422, | | SCHRO_CHROMA_422, | |
| SCHRO_CHROMA_420 | | SCHRO_CHROMA_420 | |
| } SchroChromaFormat; | | } SchroChromaFormat; | |
| | | | |
| typedef enum _SchroSignalRange { | | typedef enum _SchroSignalRange { | |
|
| SCHRO_SIGNAL_RANGE_8BIT_FULL = 0, | | SCHRO_SIGNAL_RANGE_CUSTOM = 0, | |
| SCHRO_SIGNAL_RANGE_8BIT_VIDEO = 1, | | SCHRO_SIGNAL_RANGE_8BIT_FULL = 1, | |
| SCHRO_SIGNAL_RANGE_10BIT_VIDEO = 2, | | SCHRO_SIGNAL_RANGE_8BIT_VIDEO = 2, | |
| SCHRO_SIGNAL_RANGE_12BIT_VIDEO = 3 | | SCHRO_SIGNAL_RANGE_10BIT_VIDEO = 3, | |
| | | SCHRO_SIGNAL_RANGE_12BIT_VIDEO = 4 | |
| } SchroSignalRange; | | } SchroSignalRange; | |
| | | | |
| typedef enum _SchroColourSpec { | | typedef enum _SchroColourSpec { | |
| SCHRO_COLOUR_SPEC_CUSTOM = 0, | | SCHRO_COLOUR_SPEC_CUSTOM = 0, | |
| SCHRO_COLOUR_SPEC_SDTV_525 = 1, | | SCHRO_COLOUR_SPEC_SDTV_525 = 1, | |
| SCHRO_COLOUR_SPEC_SDTV_625 = 2, | | SCHRO_COLOUR_SPEC_SDTV_625 = 2, | |
| SCHRO_COLOUR_SPEC_HDTV = 3, | | SCHRO_COLOUR_SPEC_HDTV = 3, | |
| SCHRO_COLOUR_SPEC_CINEMA = 4 | | SCHRO_COLOUR_SPEC_CINEMA = 4 | |
| } SchroColourSpec; | | } SchroColourSpec; | |
| | | | |
| | | | |
End of changes. 1 change blocks. |
| 4 lines changed or deleted | | 5 lines changed or added | |
|
| schrodecoder.h | | schrodecoder.h | |
| | | | |
| skipping to change at line 90 | | skipping to change at line 90 | |
| unsigned int state; | | unsigned int state; | |
| unsigned int needed_state; | | unsigned int needed_state; | |
| unsigned int working; | | unsigned int working; | |
| int busy; | | int busy; | |
| int skip; | | int skip; | |
| int error; | | int error; | |
| | | | |
| SchroBuffer *input_buffer; | | SchroBuffer *input_buffer; | |
| SchroParams params; | | SchroParams params; | |
| SchroPictureNumber picture_number; | | SchroPictureNumber picture_number; | |
|
| //int n_refs; | | | |
| SchroPictureNumber reference1; | | SchroPictureNumber reference1; | |
| SchroPictureNumber reference2; | | SchroPictureNumber reference2; | |
| SchroPictureNumber retired_picture_number; | | SchroPictureNumber retired_picture_number; | |
| SchroPicture *ref0; | | SchroPicture *ref0; | |
| SchroPicture *ref1; | | SchroPicture *ref1; | |
| SchroFrame *planar_output_frame; | | SchroFrame *planar_output_frame; | |
| | | | |
| int is_ref; | | int is_ref; | |
| | | | |
| int16_t *tmpbuf; | | int16_t *tmpbuf; | |
|
| int16_t *tmpbuf2; | | | |
| | | | |
| int zero_residual; | | int zero_residual; | |
| | | | |
| SchroFrame *transform_frame; | | SchroFrame *transform_frame; | |
| SchroFrame *frame; | | SchroFrame *frame; | |
| SchroFrame *mc_tmp_frame; | | SchroFrame *mc_tmp_frame; | |
| SchroMotion *motion; | | SchroMotion *motion; | |
| SchroFrame *output_picture; | | SchroFrame *output_picture; | |
| SchroUpsampledFrame *upsampled_frame; | | SchroUpsampledFrame *upsampled_frame; | |
| | | | |
| | | | |
End of changes. 2 change blocks. |
| 2 lines changed or deleted | | 0 lines changed or added | |
|
| schrodomain.h | | schrodomain.h | |
| | | | |
| #ifndef _SCHRO_DOMAIN_H_ | | #ifndef _SCHRO_DOMAIN_H_ | |
| #define _SCHRO_DOMAIN_H_ | | #define _SCHRO_DOMAIN_H_ | |
| | | | |
| #include <pthread.h> | | #include <pthread.h> | |
| | | | |
| typedef int SchroExecDomain; | | typedef int SchroExecDomain; | |
| | | | |
| typedef struct _SchroMemoryDomain SchroMemoryDomain; | | typedef struct _SchroMemoryDomain SchroMemoryDomain; | |
| | | | |
|
| | | #ifdef SCHRO_ENABLE_UNSTABLE_API | |
| | | | |
| #define SCHRO_MEMORY_DOMAIN_SLOTS 1000 | | #define SCHRO_MEMORY_DOMAIN_SLOTS 1000 | |
| | | | |
| struct _SchroMemoryDomain { | | struct _SchroMemoryDomain { | |
| pthread_mutex_t mutex; | | pthread_mutex_t mutex; | |
| | | | |
| unsigned int flags; | | unsigned int flags; | |
| | | | |
| void *(*alloc) (int size); | | void *(*alloc) (int size); | |
| void *(*alloc_2d) (int depth, int width, int height); | | void *(*alloc_2d) (int depth, int width, int height); | |
| void (*free) (void *ptr, int size); | | void (*free) (void *ptr, int size); | |
| | | | |
| skipping to change at line 51 | | skipping to change at line 53 | |
| SchroMemoryDomain * schro_memory_domain_new (void); | | SchroMemoryDomain * schro_memory_domain_new (void); | |
| SchroMemoryDomain * schro_memory_domain_new_local (void); | | SchroMemoryDomain * schro_memory_domain_new_local (void); | |
| void schro_memory_domain_free (SchroMemoryDomain *domain); | | void schro_memory_domain_free (SchroMemoryDomain *domain); | |
| | | | |
| void * schro_memory_domain_alloc (SchroMemoryDomain *domain, int size); | | void * schro_memory_domain_alloc (SchroMemoryDomain *domain, int size); | |
| void * schro_memory_domain_alloc_2d (SchroMemoryDomain *domain, | | void * schro_memory_domain_alloc_2d (SchroMemoryDomain *domain, | |
| int depth, int width, int height); | | int depth, int width, int height); | |
| void schro_memory_domain_memfree (SchroMemoryDomain *domain, void *ptr); | | void schro_memory_domain_memfree (SchroMemoryDomain *domain, void *ptr); | |
| | | | |
| #endif | | #endif | |
|
| | | | |
| | | #endif | |
| | | | |
End of changes. 2 change blocks. |
| 0 lines changed or deleted | | 2 lines changed or added | |
|
| schroencoder.h | | schroencoder.h | |
| | | | |
| skipping to change at line 125 | | skipping to change at line 125 | |
| SchroBuffer *access_unit_buffer; | | SchroBuffer *access_unit_buffer; | |
| SchroList *inserted_buffers; | | SchroList *inserted_buffers; | |
| int output_buffer_size; | | int output_buffer_size; | |
| SchroBuffer *output_buffer; | | SchroBuffer *output_buffer; | |
| int presentation_frame; | | int presentation_frame; | |
| int slot; | | int slot; | |
| int last_frame; | | int last_frame; | |
| | | | |
| int is_ref; | | int is_ref; | |
| int num_refs; | | int num_refs; | |
|
| SchroPictureNumber picture_number_ref0; | | SchroPictureNumber picture_number_ref[2]; | |
| SchroPictureNumber picture_number_ref1; | | | |
| SchroPictureNumber retired_picture_number; | | SchroPictureNumber retired_picture_number; | |
| | | | |
| int16_t slice_y_dc_values[100]; | | int16_t slice_y_dc_values[100]; | |
| int16_t slice_u_dc_values[100]; | | int16_t slice_u_dc_values[100]; | |
| int16_t slice_v_dc_values[100]; | | int16_t slice_v_dc_values[100]; | |
| int slice_y_n; | | int slice_y_n; | |
| int slice_uv_n; | | int slice_uv_n; | |
| int slice_y_bits; | | int slice_y_bits; | |
| int slice_uv_bits; | | int slice_uv_bits; | |
| int slice_y_trailing_zeros; | | int slice_y_trailing_zeros; | |
| | | | |
| skipping to change at line 154 | | skipping to change at line 153 | |
| int stats_dc; | | int stats_dc; | |
| int stats_global; | | int stats_global; | |
| int stats_motion; | | int stats_motion; | |
| | | | |
| int subband_size; | | int subband_size; | |
| SchroBuffer *subband_buffer; | | SchroBuffer *subband_buffer; | |
| | | | |
| int16_t *quant_data; | | int16_t *quant_data; | |
| | | | |
| int16_t *tmpbuf; | | int16_t *tmpbuf; | |
|
| int16_t *tmpbuf2; | | | |
| | | | |
| int quant_index[3][1+SCHRO_LIMIT_TRANSFORM_DEPTH*3]; | | int quant_index[3][1+SCHRO_LIMIT_TRANSFORM_DEPTH*3]; | |
| double est_entropy[3][1+SCHRO_LIMIT_TRANSFORM_DEPTH*3][60]; | | double est_entropy[3][1+SCHRO_LIMIT_TRANSFORM_DEPTH*3][60]; | |
| double est_error[3][1+SCHRO_LIMIT_TRANSFORM_DEPTH*3][60]; | | double est_error[3][1+SCHRO_LIMIT_TRANSFORM_DEPTH*3][60]; | |
| double subband_info[3][1+SCHRO_LIMIT_TRANSFORM_DEPTH*3]; | | double subband_info[3][1+SCHRO_LIMIT_TRANSFORM_DEPTH*3]; | |
| SchroPack *pack; | | SchroPack *pack; | |
| SchroParams params; | | SchroParams params; | |
| SchroEncoder *encoder; | | SchroEncoder *encoder; | |
| SchroFrame *iwt_frame; | | SchroFrame *iwt_frame; | |
| SchroFrame *prediction_frame; | | SchroFrame *prediction_frame; | |
| | | | |
|
| SchroEncoderFrame *ref_frame0; | | SchroEncoderFrame *ref_frame[2]; | |
| SchroEncoderFrame *ref_frame1; | | | |
| | | | |
| SchroMotion *motion; | | SchroMotion *motion; | |
| SchroList *motion_field_list; | | SchroList *motion_field_list; | |
| | | | |
| SchroHistogram subband_hists[3][SCHRO_LIMIT_SUBBANDS]; | | SchroHistogram subband_hists[3][SCHRO_LIMIT_SUBBANDS]; | |
| SchroHistogram hist_test; | | SchroHistogram hist_test; | |
| | | | |
| /* statistics */ | | /* statistics */ | |
| | | | |
| double picture_weight; | | double picture_weight; | |
| | | | |
| skipping to change at line 244 | | skipping to change at line 241 | |
| int motion_block_size; | | int motion_block_size; | |
| int motion_block_overlap; | | int motion_block_overlap; | |
| schro_bool interlaced_coding; | | schro_bool interlaced_coding; | |
| schro_bool enable_internal_testing; | | schro_bool enable_internal_testing; | |
| schro_bool enable_noarith; | | schro_bool enable_noarith; | |
| schro_bool enable_fullscan_estimation; | | schro_bool enable_fullscan_estimation; | |
| schro_bool enable_hierarchical_estimation; | | schro_bool enable_hierarchical_estimation; | |
| schro_bool enable_zero_estimation; | | schro_bool enable_zero_estimation; | |
| schro_bool enable_phasecorr_estimation; | | schro_bool enable_phasecorr_estimation; | |
| schro_bool enable_bigblock_estimation; | | schro_bool enable_bigblock_estimation; | |
|
| | | int horiz_slices; | |
| | | int vert_slices; | |
| | | | |
| double magic_dc_metric_offset; | | double magic_dc_metric_offset; | |
| double magic_subband0_lambda_scale; | | double magic_subband0_lambda_scale; | |
| double magic_chroma_lambda_scale; | | double magic_chroma_lambda_scale; | |
| double magic_nonref_lambda_scale; | | double magic_nonref_lambda_scale; | |
| double magic_allocation_scale; | | double magic_allocation_scale; | |
| double magic_keyframe_weight; | | double magic_keyframe_weight; | |
| double magic_scene_change_threshold; | | double magic_scene_change_threshold; | |
| double magic_inter_p_weight; | | double magic_inter_p_weight; | |
| double magic_inter_b_weight; | | double magic_inter_b_weight; | |
| | | | |
| skipping to change at line 305 | | skipping to change at line 304 | |
| int bits_per_picture; | | int bits_per_picture; | |
| | | | |
| /* statistics */ | | /* statistics */ | |
| | | | |
| double average_arith_context_ratio; | | double average_arith_context_ratio; | |
| | | | |
| /* engine specific stuff */ | | /* engine specific stuff */ | |
| | | | |
| int gop_picture; | | int gop_picture; | |
| | | | |
|
| | | int intra_ref; | |
| int last_ref; | | int last_ref; | |
| int last_ref2; | | int last_ref2; | |
|
| int next_ref; | | //int next_ref; | |
| int mid1_ref; | | //int mid1_ref; | |
| int mid2_ref; | | //int mid2_ref; | |
| }; | | }; | |
| #endif | | #endif | |
| | | | |
| typedef enum { | | typedef enum { | |
| SCHRO_ENCODER_SETTING_TYPE_BOOLEAN, | | SCHRO_ENCODER_SETTING_TYPE_BOOLEAN, | |
| SCHRO_ENCODER_SETTING_TYPE_INT, | | SCHRO_ENCODER_SETTING_TYPE_INT, | |
| SCHRO_ENCODER_SETTING_TYPE_ENUM, | | SCHRO_ENCODER_SETTING_TYPE_ENUM, | |
| SCHRO_ENCODER_SETTING_TYPE_DOUBLE, | | SCHRO_ENCODER_SETTING_TYPE_DOUBLE, | |
| SCHRO_ENCODER_SETTING_TYPE_LAST | | SCHRO_ENCODER_SETTING_TYPE_LAST | |
| } SchroEncoderSettingTypeEnum; | | } SchroEncoderSettingTypeEnum; | |
| | | | |
End of changes. 6 change blocks. |
| 8 lines changed or deleted | | 8 lines changed or added | |
|
| schroframe.h | | schroframe.h | |
| | | | |
| skipping to change at line 61 | | skipping to change at line 61 | |
| | | | |
| struct _SchroFrameData { | | struct _SchroFrameData { | |
| SchroFrameFormat format; | | SchroFrameFormat format; | |
| void *data; | | void *data; | |
| int stride; | | int stride; | |
| int width; | | int width; | |
| int height; | | int height; | |
| int length; | | int length; | |
| int h_shift; | | int h_shift; | |
| int v_shift; | | int v_shift; | |
|
| | | | |
| /* for CUDA */ | | | |
| //void *gdata; | | | |
| }; | | }; | |
| | | | |
| struct _SchroFrame { | | struct _SchroFrame { | |
| int refcount; | | int refcount; | |
| SchroFrameFreeFunc free; | | SchroFrameFreeFunc free; | |
| SchroMemoryDomain *domain; | | SchroMemoryDomain *domain; | |
| void *regions[3]; | | void *regions[3]; | |
| void *priv; | | void *priv; | |
| | | | |
| SchroFrameFormat format; | | SchroFrameFormat format; | |
| int width; | | int width; | |
| int height; | | int height; | |
| | | | |
| SchroFrameData components[3]; | | SchroFrameData components[3]; | |
| }; | | }; | |
| | | | |
| struct _SchroUpsampledFrame { | | struct _SchroUpsampledFrame { | |
| SchroFrame *frames[4]; | | SchroFrame *frames[4]; | |
|
| #ifdef HAVE_CUDA | | void *components[3]; | |
| struct cudaArray *components[3]; | | | |
| #endif | | | |
| }; | | }; | |
| | | | |
| #define SCHRO_FRAME_DATA_GET_LINE(fd,i) (OFFSET((fd)->data,(fd)->stride*(i)
)) | | #define SCHRO_FRAME_DATA_GET_LINE(fd,i) (OFFSET((fd)->data,(fd)->stride*(i)
)) | |
| #define SCHRO_FRAME_DATA_GET_PIXEL_U8(fd,i,j) ((uint8_t *)OFFSET((fd)->data
,(fd)->stride*(j)+(i))) | | #define SCHRO_FRAME_DATA_GET_PIXEL_U8(fd,i,j) ((uint8_t *)OFFSET((fd)->data
,(fd)->stride*(j)+(i))) | |
| #define SCHRO_FRAME_DATA_GET_PIXEL_S16(fd,i,j) ((int16_t *)OFFSET((fd)->dat
a,(fd)->stride*(j)+(i)*sizeof(int16_t))) | | #define SCHRO_FRAME_DATA_GET_PIXEL_S16(fd,i,j) ((int16_t *)OFFSET((fd)->dat
a,(fd)->stride*(j)+(i)*sizeof(int16_t))) | |
| | | | |
| SchroFrame * schro_frame_new (void); | | SchroFrame * schro_frame_new (void); | |
| SchroFrame * schro_frame_new_and_alloc (SchroMemoryDomain *domain, | | SchroFrame * schro_frame_new_and_alloc (SchroMemoryDomain *domain, | |
| SchroFrameFormat format, int width, int height); | | SchroFrameFormat format, int width, int height); | |
| SchroFrame * schro_frame_new_from_data_I420 (void *data, int width, int hei
ght); | | SchroFrame * schro_frame_new_from_data_I420 (void *data, int width, int hei
ght); | |
| | | | |
End of changes. 2 change blocks. |
| 6 lines changed or deleted | | 1 lines changed or added | |
|
| schromotion.h | | schromotion.h | |
| | | | |
| #ifndef __SCHRO_MOTION_H__ | | #ifndef __SCHRO_MOTION_H__ | |
| #define __SCHRO_MOTION_H__ | | #define __SCHRO_MOTION_H__ | |
| | | | |
| #include <schroedinger/schroframe.h> | | #include <schroedinger/schroframe.h> | |
| #include <schroedinger/schroparams.h> | | #include <schroedinger/schroparams.h> | |
| | | | |
| SCHRO_BEGIN_DECLS | | SCHRO_BEGIN_DECLS | |
| | | | |
|
| typedef struct _SchroObmc SchroObmc; | | | |
| typedef struct _SchroObmcRegion SchroObmcRegion; | | | |
| typedef struct _SchroMotionVector SchroMotionVector; | | typedef struct _SchroMotionVector SchroMotionVector; | |
| typedef struct _SchroMotionVectorDC SchroMotionVectorDC; | | typedef struct _SchroMotionVectorDC SchroMotionVectorDC; | |
| typedef struct _SchroMotionField SchroMotionField; | | typedef struct _SchroMotionField SchroMotionField; | |
| typedef struct _SchroMotion SchroMotion; | | typedef struct _SchroMotion SchroMotion; | |
| typedef struct _SchroMotionScan SchroMotionScan; | | typedef struct _SchroMotionScan SchroMotionScan; | |
| | | | |
| #ifdef SCHRO_ENABLE_UNSTABLE_API | | #ifdef SCHRO_ENABLE_UNSTABLE_API | |
| struct _SchroMotionVector { | | struct _SchroMotionVector { | |
| unsigned int pred_mode : 2; | | unsigned int pred_mode : 2; | |
| unsigned int using_global : 1; | | unsigned int using_global : 1; | |
| | | | |
| skipping to change at line 47 | | skipping to change at line 45 | |
| int16_t dc[3]; | | int16_t dc[3]; | |
| uint16_t _padding1; | | uint16_t _padding1; | |
| }; | | }; | |
| | | | |
| struct _SchroMotionField { | | struct _SchroMotionField { | |
| int x_num_blocks; | | int x_num_blocks; | |
| int y_num_blocks; | | int y_num_blocks; | |
| SchroMotionVector *motion_vectors; | | SchroMotionVector *motion_vectors; | |
| }; | | }; | |
| | | | |
|
| struct _SchroObmcRegion { | | | |
| int16_t *weights[3]; | | | |
| int start_x; | | | |
| int start_y; | | | |
| int end_x; | | | |
| int end_y; | | | |
| }; | | | |
| | | | |
| struct _SchroObmc { | | | |
| SchroObmcRegion regions[9]; | | | |
| int16_t *region_data; | | | |
| int16_t *horiz_ramp; | | | |
| int16_t *vert_ramp; | | | |
| int x_ramp; | | | |
| int y_ramp; | | | |
| int x_len; | | | |
| int y_len; | | | |
| int x_sep; | | | |
| int y_sep; | | | |
| }; | | | |
| | | | |
| struct _SchroMotion { | | struct _SchroMotion { | |
| SchroUpsampledFrame *src1; | | SchroUpsampledFrame *src1; | |
| SchroUpsampledFrame *src2; | | SchroUpsampledFrame *src2; | |
| SchroMotionVector *motion_vectors; | | SchroMotionVector *motion_vectors; | |
| SchroParams *params; | | SchroParams *params; | |
| | | | |
| int sx_max; | | int sx_max; | |
| int sy_max; | | int sy_max; | |
| uint8_t *tmpdata; | | uint8_t *tmpdata; | |
|
| SchroObmc *obmc_luma; | | | |
| SchroObmc *obmc_chroma; | | | |
| uint8_t *blocks[3]; | | uint8_t *blocks[3]; | |
| int strides[3]; | | int strides[3]; | |
| | | | |
| int ref_weight_precision; | | int ref_weight_precision; | |
| int ref1_weight; | | int ref1_weight; | |
| int ref2_weight; | | int ref2_weight; | |
| int mv_precision; | | int mv_precision; | |
| int xoffset; | | int xoffset; | |
| int yoffset; | | int yoffset; | |
| int xbsep; | | int xbsep; | |
| | | | |
| skipping to change at line 126 | | skipping to change at line 101 | |
| | | | |
| void schro_motion_vector_prediction (SchroMotion *motion, | | void schro_motion_vector_prediction (SchroMotion *motion, | |
| int x, int y, int *pred_x, int *pred_y, int mode); | | int x, int y, int *pred_x, int *pred_y, int mode); | |
| int schro_motion_split_prediction (SchroMotion *motion, int x, int y); | | int schro_motion_split_prediction (SchroMotion *motion, int x, int y); | |
| int schro_motion_get_mode_prediction (SchroMotion *motion, int x, int y); | | int schro_motion_get_mode_prediction (SchroMotion *motion, int x, int y); | |
| void schro_motion_dc_prediction (SchroMotion *motion, | | void schro_motion_dc_prediction (SchroMotion *motion, | |
| int x, int y, int *pred); | | int x, int y, int *pred); | |
| int schro_motion_get_global_prediction (SchroMotion *motion, | | int schro_motion_get_global_prediction (SchroMotion *motion, | |
| int x, int y); | | int x, int y); | |
| | | | |
|
| void schro_obmc_init (SchroObmc *obmc, int x_len, int y_len, | | | |
| int x_sep, int y_sep, int ref1_weight, int ref2_weight, int ref_shift); | | | |
| void schro_obmc_cleanup (SchroObmc *obmc); | | | |
| | | | |
| int schro_motion_vector_is_equal (SchroMotionVector *mv1, SchroMotionVector
*mv2); | | int schro_motion_vector_is_equal (SchroMotionVector *mv1, SchroMotionVector
*mv2); | |
| | | | |
| #endif | | #endif | |
| | | | |
| SCHRO_END_DECLS | | SCHRO_END_DECLS | |
| | | | |
| #endif | | #endif | |
| | | | |
End of changes. 4 change blocks. |
| 29 lines changed or deleted | | 0 lines changed or added | |
|
| schroparams.h | | schroparams.h | |
| | | | |
| skipping to change at line 45 | | skipping to change at line 45 | |
| | | | |
| /* transform parameters */ | | /* transform parameters */ | |
| int wavelet_filter_index; | | int wavelet_filter_index; | |
| int transform_depth; | | int transform_depth; | |
| int horiz_codeblocks[SCHRO_LIMIT_TRANSFORM_DEPTH + 1]; | | int horiz_codeblocks[SCHRO_LIMIT_TRANSFORM_DEPTH + 1]; | |
| int vert_codeblocks[SCHRO_LIMIT_TRANSFORM_DEPTH + 1]; | | int vert_codeblocks[SCHRO_LIMIT_TRANSFORM_DEPTH + 1]; | |
| int codeblock_mode_index; | | int codeblock_mode_index; | |
| | | | |
| /* motion prediction parameters */ | | /* motion prediction parameters */ | |
| int num_refs; | | int num_refs; | |
|
| int have_global_motion; // using_global_motion | | int have_global_motion; /* using_global_motion */ | |
| int xblen_luma; | | int xblen_luma; | |
| int yblen_luma; | | int yblen_luma; | |
| int xbsep_luma; | | int xbsep_luma; | |
| int ybsep_luma; | | int ybsep_luma; | |
| int mv_precision; | | int mv_precision; | |
| SchroGlobalMotion global_motion[2]; | | SchroGlobalMotion global_motion[2]; | |
| int picture_pred_mode; | | int picture_pred_mode; | |
| int picture_weight_bits; | | int picture_weight_bits; | |
| int picture_weight_1; | | int picture_weight_1; | |
| int picture_weight_2; | | int picture_weight_2; | |
| | | | |
| /* DiracPro parameters */ | | /* DiracPro parameters */ | |
| int is_lowdelay; | | int is_lowdelay; | |
|
| int n_horiz_slices; // slices_x | | int n_horiz_slices; /* slices_x */ | |
| int n_vert_slices; // slices_y | | int n_vert_slices; /* slices_y */ | |
| int slice_bytes_num; | | int slice_bytes_num; | |
| int slice_bytes_denom; | | int slice_bytes_denom; | |
| int quant_matrix[3*SCHRO_LIMIT_TRANSFORM_DEPTH+1]; | | int quant_matrix[3*SCHRO_LIMIT_TRANSFORM_DEPTH+1]; | |
| | | | |
| /* calculated sizes */ | | /* calculated sizes */ | |
| int iwt_chroma_width; | | int iwt_chroma_width; | |
| int iwt_chroma_height; | | int iwt_chroma_height; | |
| int iwt_luma_width; | | int iwt_luma_width; | |
| int iwt_luma_height; | | int iwt_luma_height; | |
| int mc_chroma_width; | | int mc_chroma_width; | |
| int mc_chroma_height; | | int mc_chroma_height; | |
| int mc_luma_width; | | int mc_luma_width; | |
| int mc_luma_height; | | int mc_luma_height; | |
| int x_num_blocks; | | int x_num_blocks; | |
| int y_num_blocks; | | int y_num_blocks; | |
|
| | | int x_offset; | |
| | | int y_offset; | |
| }; | | }; | |
| | | | |
| #define SCHRO_SUBBAND_IS_HORIZONTALLY_ORIENTED(position) (((position)&3) ==
2) | | #define SCHRO_SUBBAND_IS_HORIZONTALLY_ORIENTED(position) (((position)&3) ==
2) | |
| #define SCHRO_SUBBAND_IS_VERTICALLY_ORIENTED(position) (((position)&3) == 1
) | | #define SCHRO_SUBBAND_IS_VERTICALLY_ORIENTED(position) (((position)&3) == 1
) | |
| #define SCHRO_SUBBAND_SHIFT(position) ((position)>>2) | | #define SCHRO_SUBBAND_SHIFT(position) ((position)>>2) | |
| | | | |
|
| extern const int16_t schro_zero[]; | | | |
| extern const int schro_tables_lowdelay_quants[7][4][9]; | | extern const int schro_tables_lowdelay_quants[7][4][9]; | |
| | | | |
| void schro_params_init (SchroParams *params, int video_format); | | void schro_params_init (SchroParams *params, int video_format); | |
| | | | |
| void schro_params_calculate_iwt_sizes (SchroParams *params); | | void schro_params_calculate_iwt_sizes (SchroParams *params); | |
| void schro_params_calculate_mc_sizes (SchroParams *params); | | void schro_params_calculate_mc_sizes (SchroParams *params); | |
| | | | |
| int schro_params_set_block_params (SchroParams *params, int index); | | int schro_params_set_block_params (SchroParams *params, int index); | |
| int schro_params_get_block_params (SchroParams *params); | | int schro_params_get_block_params (SchroParams *params); | |
| int schro_params_verify_block_params (SchroParams *params); | | int schro_params_verify_block_params (SchroParams *params); | |
| | | | |
End of changes. 4 change blocks. |
| 4 lines changed or deleted | | 5 lines changed or added | |
|