summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEmeric Grange <emeric.grange@gmail.com>2012-02-29 22:12:34 +0100
committerEmeric Grange <emeric.grange@gmail.com>2012-03-06 19:53:25 +0100
commit668edc7688a2e499412eae33200c8f3695d569da (patch)
treea40e3f7b543dcb40df1b3e78205d43f66cf84cff
parent43b8b31910f18f97f6c910b2609a4f3afacc0437 (diff)
Add VP8 support, wip add-on to the VdpPictureInfoVP8 structurevp8-wip
Signed-off-by: Emeric Grange <emeric.grange@gmail.com>
-rw-r--r--include/vdpau/vdpau.h86
1 files changed, 86 insertions, 0 deletions
diff --git a/include/vdpau/vdpau.h b/include/vdpau/vdpau.h
index f7d5e15..4478402 100644
--- a/include/vdpau/vdpau.h
+++ b/include/vdpau/vdpau.h
@@ -3047,6 +3047,92 @@ typedef struct {
/** Copy of the VP8 bitstream field. Key Frames-only. */
uint16_t height;
+ /** Copy of the VP8 bitstream field. Key Frames-only. */
+ VdpBool color_space;
+ /** Copy of the VP8 bitstream field. Key Frames-only. */
+ VdpBool clamping_type;
+
+ /** Copy of the VP8 bitstream field. */
+ VdpBool segmentation_enable;
+ /** Copy of the VP8 bitstream field. */
+ VdpBool update_mb_segmentation_map;
+ /** Copy of the VP8 bitstream field. */
+ VdpBool update_segment_feature_data;
+ /** Copy of the VP8 bitstream field. */
+ VdpBool segment_feature_mode;
+ /** Derived from quantizer_update, quantizer_update_value, quantizer_update_sign. */
+ int8_t segment_base_quant[4];
+ /** Derived from loop_filter_update, lf_update_value, lf_update_sign. */
+ uint8_t segment_filter_level[4];
+ /** Copy of the VP8 bitstream field. */
+ uint8_t segment_prob[3];
+
+ /** Copy of the VP8 bitstream field. */
+ VdpBool filter_type;
+ /** Copy of the VP8 bitstream field. */
+ uint8_t loop_filter_level;
+ /** Copy of the VP8 bitstream field. */
+ uint8_t sharpness_level;
+ /** Copy of the VP8 bitstream field. */
+ VdpBool loop_filter_adj_enable;
+ /** Derived from ref_frame_delta_update_flag, delta_magnitude, delta_sign. */
+ int8_t filter_ref_value[4];
+ /** Derived from mb_mode_delta_update_flag, delta_magnitude, delta_sign. */
+ int8_t filter_mode_value[4];
+
+ /** Derived from log2_nbr_of_dct_partitions */
+ uint8_t num_coeff_partitions;
+
+ /**
+ * Dequantization indices are used to retrieve dequantization factors from
+ * fixed quantization tables.
+ *
+ * When frame segmentation is enabled, macroblocks can have one of four
+ * different sets of dequantization indices. Otherwise, only the first
+ * segment's values are used.
+ * For each one of the *_qi tables inside a dquant set :
+ * [0] DC dequantization indices. [1] AC dequantization indices.
+ */
+ struct {
+ int16_t luma_qi[2];
+ int16_t luma_dc_qi[2];
+ int16_t chroma_qi[2];
+ } dquant[4];
+
+ /** Copy of the VP8 bitstream field. */
+ VdpBool refresh_entropy_probs;
+ /** Copy of the VP8 bitstream field. */
+ VdpBool refresh_golden_frame;
+ /** Copy of the VP8 bitstream field. */
+ VdpBool refresh_alternate_frame;
+ /** Copy of the VP8 bitstream field. */
+ VdpBool sign_bias_golden;
+ /** Copy of the VP8 bitstream field. */
+ VdpBool sign_bias_alternate;
+ /** Copy of the VP8 bitstream field. */
+ VdpBool refresh_last;
+
+ /** Copy of the VP8 bitstream field. */
+ uint8_t coeff_prob[4][8][3][11];
+
+ /** Copy of the VP8 bitstream field. */
+ VdpBool mb_no_skip_coeff;
+ /** Copy of the VP8 bitstream field. */
+ uint8_t prob_skip_false;
+ /** Copy of the VP8 bitstream field. */
+ uint8_t prob_intra;
+ /** Copy of the VP8 bitstream field. */
+ uint8_t prob_last;
+ /** Copy of the VP8 bitstream field. */
+ uint8_t prob_gf;
+ /** Copy of the VP8 bitstream field. */
+ uint8_t intra_16x16_prob[4];
+ /** Copy of the VP8 bitstream field. */
+ uint8_t intra_chroma_prob[3];
+
+ /** Copy of the VP8 bitstream field. */
+ uint8_t prob[2][19];
+
/**
* One frame worth of decompressed data from the arbitrarily distant past.
* Set to VDP_INVALID_HANDLE when not used.