]> git.sesse.net Git - ffmpeg/blobdiff - libavcodec/ivi_common.h
Support DTS-ES extension (XCh) in dca: Cosmetic cleanup
[ffmpeg] / libavcodec / ivi_common.h
index bb2d4ed2ed912ba98cfb0d9ee3fd7719cef4cb23..8d466c6ca11b4688674442299d77a9501676335d 100644 (file)
@@ -75,6 +75,13 @@ extern const uint8_t ff_ivi_horizontal_scan_8x8[64];
 extern const uint8_t ff_ivi_direct_scan_4x4[16];
 
 
+/**
+ *  Declare inverse transform function types
+ */
+typedef void (InvTransformPtr)(const int32_t *in, int16_t *out, uint32_t pitch, const uint8_t *flags);
+typedef void (DCTransformPtr) (const int32_t *in, int16_t *out, uint32_t pitch, int blk_size);
+
+
 /**
  *  run-value (RLE) table descriptor
  */
@@ -152,14 +159,14 @@ typedef struct {
     RVMapDesc       *rv_map;        ///< ptr to the RLE table for this band
     int             num_tiles;      ///< number of tiles in this band
     IVITile         *tiles;         ///< array of tile descriptors
-    void (*inv_transform)(const int32_t *in, int16_t *out, uint32_t pitch, const uint8_t *flags); ///< inverse transform function pointer
-    void (*dc_transform) (const int32_t *in, int16_t *out, uint32_t pitch, int blk_size);   ///< dc transform function pointer, it may be NULL
+    InvTransformPtr *inv_transform;
+    DCTransformPtr  *dc_transform;
     int             is_2d_trans;    ///< 1 indicates that the two-dimensional inverse transform is used
     int32_t         checksum;       ///< for debug purposes
     int             checksum_present;
     int             bufsize;        ///< band buffer size in bytes
-    const uint8_t   *intra_base;    ///< quantization matrix for intra blocks
-    const uint8_t   *inter_base;    ///< quantization matrix for inter blocks
+    const uint16_t  *intra_base;    ///< quantization matrix for intra blocks
+    const uint16_t  *inter_base;    ///< quantization matrix for inter blocks
     const uint8_t   *intra_scale;   ///< quantization coefficient for intra blocks
     const uint8_t   *inter_scale;   ///< quantization coefficient for inter blocks
 } IVIBandDesc;