wp_mcprec.h
上传用户:hjq518
上传日期:2021-12-09
资源大小:5084k
文件大小:2k
源码类别:

Audio

开发平台:

Visual C++

  1. /*!
  2.  ***************************************************************************
  3.  * file
  4.  *    wp_mcprec.h
  5.  *
  6.  * brief
  7.  *    Headerfile for Improved Motion Compensatation Precision Scheme using Weighted Prediction
  8.  * author
  9.  *    Main contributors (see contributors.h for copyright, address and affiliation details)
  10.  *     - Athanasios Leontaris            <aleon@dolby.com>
  11.  *
  12.  * date
  13.  *    16 July 2008
  14.  *
  15.  **************************************************************************
  16.  */
  17. #ifndef _WP_MCPREC_H_
  18. #define _WP_MCPREC_H_
  19. #define WP_MCPREC_PLUS0       4
  20. #define WP_MCPREC_PLUS1       5
  21. #define WP_MCPREC_MINUS0      6
  22. #define WP_MCPREC_MINUS1      7
  23. #define WP_MCPREC_MINUS_PLUS0 8
  24. #define WP_REGULAR            9
  25. typedef struct
  26. {
  27.   int PicNum;              // PicNum/FrameNum
  28.   int POCNum;              // POC
  29. }
  30. WeightedPredRefX;
  31. typedef struct
  32. {
  33.   int algorithm;
  34. }
  35. WPXPass;
  36. typedef struct
  37. {
  38.   int               num_wp_ref_list[2];         // num of elements in each of the above matrices [LIST]
  39.   WeightedPredRefX *wp_ref_list[2];             // structure with reordering and WP information for ref frames [LIST]
  40.   WPXPass          *curr_wp_rd_pass;
  41.   WPXPass           wp_rd_passes[3];            // frame_picture [0...4] (MultiRefWeightedPred == 2)
  42. }
  43. WPXObject;
  44. WPXObject *pWPX;
  45. void   wpxInitWPXObject( void );
  46. void   wpxFreeWPXObject( void );
  47. void   wpxInitWPXPasses( InputParameters *params );
  48. void   wpxModifyRefPicList( ImageParameters *img );
  49. // Note that at some point, InputParameters params contents should be copied into ImageParameters *img. 
  50. // This would eliminate need of having to use both structures
  51. int    wpxDetermineWP( InputParameters *params, ImageParameters *img, int clist, int n );
  52. void   wpxAdaptRefNum( ImageParameters *img );
  53. void   wpxReorderLists( ImageParameters *img, Slice *currSlice );
  54. #endif