schro-stdint.h   schro-stdint.h 
#ifndef _SCHROEDINGER_SCHROEDINGER_SCHRO_STDINT_H #ifndef _SCHROEDINGER_SCHROEDINGER_SCHRO_STDINT_H
#define _SCHROEDINGER_SCHROEDINGER_SCHRO_STDINT_H 1 #define _SCHROEDINGER_SCHROEDINGER_SCHRO_STDINT_H 1
#ifndef _GENERATED_STDINT_H #ifndef _GENERATED_STDINT_H
#define _GENERATED_STDINT_H "schroedinger 1.0.0" #define _GENERATED_STDINT_H "schroedinger 1.0.1"
/* generated using gnu compiler gcc (SUSE Linux) 4.4.1 [gcc-4_4-branch revi sion 150839] */ /* generated using gnu compiler gcc (SUSE Linux) 4.4.1 [gcc-4_4-branch revi sion 150839] */
#define _STDINT_HAVE_STDINT_H 1 #define _STDINT_HAVE_STDINT_H 1
/* ................... shortcircuit part ........................... */ /* ................... shortcircuit part ........................... */
#if defined HAVE_STDINT_H || defined _STDINT_HAVE_STDINT_H #if defined HAVE_STDINT_H || defined _STDINT_HAVE_STDINT_H
#include <stdint.h> #include <stdint.h>
#else #else
#include <stddef.h> #include <stddef.h>
 End of changes. 1 change blocks. 
1 lines changed or deleted 1 lines changed or added


 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


 schrolimits.h   schrolimits.h 
skipping to change at line 45 skipping to change at line 45
*/ */
#define SCHRO_LIMIT_SUBBANDS (1+3*SCHRO_LIMIT_TRANSFORM_DEPTH) #define SCHRO_LIMIT_SUBBANDS (1+3*SCHRO_LIMIT_TRANSFORM_DEPTH)
/** /**
* SCHRO_LIMIT_REFERENCE_FRAMES: * SCHRO_LIMIT_REFERENCE_FRAMES:
* *
* The maximum number of active reference frames. In the encoder, * The maximum number of active reference frames. In the encoder,
* the number of active reference frames may be much larger than in * the number of active reference frames may be much larger than in
* the resulting stream. * the resulting stream.
*/ */
#define SCHRO_LIMIT_REFERENCE_FRAMES 10 #define SCHRO_LIMIT_REFERENCE_FRAMES 20
/** /**
* SCHRO_LIMIT_FRAME_QUEUE_LENGTH: * SCHRO_LIMIT_FRAME_QUEUE_LENGTH:
* *
* The maximum number of pictures being processed by the encoder. * The maximum number of pictures being processed by the encoder.
*/ */
#define SCHRO_LIMIT_FRAME_QUEUE_LENGTH 40 #define SCHRO_LIMIT_FRAME_QUEUE_LENGTH 40
/** /**
* SCHRO_LIMIT_WIDTH: * SCHRO_LIMIT_WIDTH:
 End of changes. 1 change blocks. 
1 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


 schromotionest.h   schromotionest.h 
skipping to change at line 29 skipping to change at line 29
SchroUpsampledFrame *src0; SchroUpsampledFrame *src0;
SchroFrame *downsampled_src0[5]; SchroFrame *downsampled_src0[5];
SchroUpsampledFrame *src1; SchroUpsampledFrame *src1;
SchroFrame *downsampled_src1[5]; SchroFrame *downsampled_src1[5];
SchroMotion *motion; SchroMotion *motion;
SchroBlock *sblocks; SchroBlock *sblocks;
//SchroMotionVector *motion_vectors;
SchroMotionField *downsampled_mf[2][5]; SchroMotionField *downsampled_mf[2][5];
}; };
struct _SchroBlock { struct _SchroBlock {
int valid;
int error; int error;
int entropy; int entropy;
double score; double score;
SchroMotionVector mv[4][4]; SchroMotionVector mv[4][4];
}; };
SchroMotionEst *schro_motionest_new (SchroEncoderFrame *frame); SchroMotionEst *schro_motionest_new (SchroEncoderFrame *frame);
void schro_motionest_free (SchroMotionEst *me); void schro_motionest_free (SchroMotionEst *me);
 End of changes. 2 change blocks. 
2 lines changed or deleted 1 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

This html diff was produced by rfcdiff 1.41. The latest version is available from http://tools.ietf.org/tools/rfcdiff/