/** \brief Segmentation Information
*/ typedefstruct _VASegmentationStructAV1 { union { struct { /** Indicates whether segmentation map related syntax elements *arepresentornotforcurrentframe.Ifequalto0, *thesegmentationmaprelatedsyntaxelementsare *notpresentforthecurrentframeandthecontrolflagsof *segmentationmaprelatedtablesfeature_data[][],and *feature_mask[]arenotvalidandshallbeignoredbyaccelerator.
*/
uint32_t enabled : 1; /** Value 1 indicates that the segmentation map are updated *duringthedecodingofthisframe. *Value0meansthatthesegmentationmapfromtheprevious *frameisused.
*/
uint32_t update_map : 1; /** Value 1 indicates that the updates to the segmentation map *arecodedrelativetotheexistingsegmentationmap. *Value0indicatesthatthenewsegmentationmapiscoded *withoutreferencetotheexistingsegmentationmap.
*/
uint32_t temporal_update : 1; /** Value 1 indicates that new parameters are about to be *specifiedforeachsegment. *Value0indicatesthatthesegmentationparameters *shouldkeeptheirexistingvalues.
*/
uint32_t update_data : 1;
/** \brief Reserved bytes for future use, must be zero */
uint32_t reserved : 28;
} bits;
uint32_t value;
} segment_info_fields;
/** \brief Segmentation parameters for current frame. *feature_data[segment_id][feature_id] *wheresegment_idhasvaluerange[0..7]indicatingthesegmentid. *andfeature_idisdefinedas typedefenum{ SEG_LVL_ALT_Q,// Use alternate Quantizer .... SEG_LVL_ALT_LF_Y_V,// Use alternate loop filter value on y plane vertical SEG_LVL_ALT_LF_Y_H,// Use alternate loop filter value on y plane horizontal SEG_LVL_ALT_LF_U,// Use alternate loop filter value on u plane SEG_LVL_ALT_LF_V,// Use alternate loop filter value on v plane SEG_LVL_REF_FRAME,// Optional Segment reference frame SEG_LVL_SKIP,// Optional Segment (0,0) + skip mode SEG_LVL_GLOBALMV, SEG_LVL_MAX }SEG_LVL_FEATURES; *feature_data[][]isequivalenttovariableFeatureData[][]inspec, *whichisafterclip3()operation. *Clip3(x,y,z)=(z<x)?x:((z>y)?y:z); *ThelimitisdefinedinSegmentation_Feature_Max[SEG_LVL_MAX]={ *255,MAX_LOOP_FILTER,MAX_LOOP_FILTER,MAX_LOOP_FILTER,MAX_LOOP_FILTER,7,0,0}
*/
int16_t feature_data[8][8];
/** \brief indicates if a feature is enabled or not. *Eachbitfielditselfisthefeature_id.Indexissegment_id. *feature_mask[segment_id]&(1<<feature_id)equalto1specifythatthefeatureof *feature_idforsegmentofsegment_idisenabled,otherwisedisabled.
*/
uint8_t feature_mask[8];
/** \brief Reserved bytes for future use, must be zero */
uint32_t va_reserved[VA_PADDING_LOW];
} VASegmentationStructAV1;
/** \brief Film Grain Information
*/ typedefstruct _VAFilmGrainStructAV1 { union { struct { /** \brief Specify whether or not film grain is applied on current frame. *Ifsetto0,alltherestparametersshouldbesettozero *andignored.
*/
uint32_t apply_grain : 1;
uint32_t chroma_scaling_from_luma : 1;
uint32_t grain_scaling_minus_8 : 2;
uint32_t ar_coeff_lag : 2;
uint32_t ar_coeff_shift_minus_6 : 2;
uint32_t grain_scale_shift : 2;
uint32_t overlap_flag : 1;
uint32_t clip_to_restricted_range : 1; /** \brief Reserved bytes for future use, must be zero */
uint32_t reserved : 20;
} bits;
uint32_t value;
} film_grain_info_fields;
uint16_t grain_seed; /* value range [0..14] */
uint8_t num_y_points;
uint8_t point_y_value[14];
uint8_t point_y_scaling[14]; /* value range [0..10] */
uint8_t num_cb_points;
uint8_t point_cb_value[10];
uint8_t point_cb_scaling[10]; /* value range [0..10] */
uint8_t num_cr_points;
uint8_t point_cr_value[10];
uint8_t point_cr_scaling[10]; /* value range [-128..127] */
int8_t ar_coeffs_y[24];
int8_t ar_coeffs_cb[25];
int8_t ar_coeffs_cr[25];
uint8_t cb_mult;
uint8_t cb_luma_mult;
uint16_t cb_offset;
uint8_t cr_mult;
uint8_t cr_luma_mult;
uint16_t cr_offset;
/** \brief Reserved bytes for future use, must be zero */
uint32_t va_reserved[VA_PADDING_LOW];
/** \brief buffer description of decoded current picture
*/
VASurfaceID current_frame;
/** \brief display buffer of current picture *Usedforfilmgrainapplieddecodedpicture. *Validonlywhenapply_grainequals1.
*/
VASurfaceID current_display_picture;
/** \brief number of anchor frames for large scale tile *Thisparametergivesthenumberofentriesofanchor_frames_list[]. *Valuerange[0..128].
*/
uint8_t anchor_frames_num;
/** \brief anchor frame list for large scale tile *Forlargescaletileapplications,theanchorframescouldcomefrom *previouslydecodedframesincurrentsequence(aka.internal),or *fromexternalsources. *Forexternalanchorframes,applicationshouldcallAPI *vaCreateBuffer()togenerateframebuffersandpopulatethemwith *pixelframes.Andthisprocessmayhappenmultipletimes. *Thearrayanchor_frames_list[]isusedtoregisteralltheavailable *anchorframesfrombothexternalandinternal,uptothecurrent *frameinstance.Ifapreviouslyregisterredanchorframeisnolonger *needed,itshouldberemovedfromthelist.Butitdoesnotprevent *applicationsfromrelacingtheframebufferwithnewanchorframes. *Pleasenotethattheinternalanchorframesmaynotstillbepresent *inthecurrentDPBbuffer.Butifitisintheanchor_frames_list[], *itshouldnotbereplacedwithotherframesorremovedfrommemory *untilitisnotshowninthelist. *Thisnumberofentriesofthelistisgivenbyparameteranchor_frames_num.
*/
VASurfaceID *anchor_frames_list;
/* The width/height of a tile minus 1 in units of superblocks. Though the *maximumnumberoftilesis64,sinceonesofthelasttilearecomputed *fromonesoftheothertilesandframe_width/height,theyarenot *necessarilyspecified.
*/
uint16_t width_in_sbs_minus_1[63];
uint16_t height_in_sbs_minus_1[63];
/** \brief number of tiles minus 1 in large scale tile list *SameasAV1semanticelement. *Validonlywhenlarge_scale_tiles==1.
*/
uint16_t tile_count_minus_1;
/* specify the tile index for context updating */
uint16_t context_update_tile_id;
union { struct { /** \brief flags for current picture *samesyntaxandsemanticasthoseinAV1code
*/
/** \brief Reserved bytes for future use, must be zero */
uint8_t reserved : 3;
} bits;
uint8_t value;
} loop_filter_info_fields;
/** \brief The adjustment needed for the filter level based on *thechosenreferenceframe. *valuerange[-64..63].
*/
int8_t ref_deltas[8];
/** \brief The adjustment needed for the filter level based on *thechosenmode. *valuerange[-64..63].
*/
int8_t mode_deltas[2];
/** \brief quantization
*/ /** \brief Y AC index *valuerange[0..255]
*/
uint8_t base_qindex; /** \brief Y DC delta from Y AC *valuerange[-64..63]
*/
int8_t y_dc_delta_q; /** \brief U DC delta from Y AC *valuerange[-64..63]
*/
int8_t u_dc_delta_q; /** \brief U AC delta from Y AC *valuerange[-64..63]
*/
int8_t u_ac_delta_q; /** \brief V DC delta from Y AC *valuerange[-64..63]
*/
int8_t v_dc_delta_q; /** \brief V AC delta from Y AC *valuerange[-64..63]
*/
int8_t v_ac_delta_q;
/** \brief Reserved bytes for future use, must be zero */
uint16_t reserved : 7;
} bits;
uint16_t value;
} loop_restoration_fields;
/** \brief global motion
*/
VAWarpedMotionParamsAV1 wm[7];
/**@}*/
/** \brief Reserved bytes for future use, must be zero */
uint32_t va_reserved[VA_PADDING_MEDIUM];
} VADecPictureParameterBufferAV1;
/** *\briefAV1SliceParameterBufferStructure * *Thisstructureconveysparametersrelatedtobitstreamdataandshouldbe *sentoncepertile. * *ItusesthenameVASliceParameterBufferAV1tobeconsistentwithothercodec, *butactuallymeansVATileParameterBufferAV1. * *SlicedatabufferofVASliceDataBufferTypeisused *tosendthebitstream. * *Pleasenotethathostdecoderisresponsibletoparseoutthe *pertileinformation.Andthebitstreaminsenttodriverinper *tilegranularity.
*/ typedefstruct _VASliceParameterBufferAV1 { /**@{*/ /** \brief The byte count of current tile in the bitstream buffer, *startingfromfirstbyteofthebuffer. *Itusesthenameslice_data_sizetobeconsistentwithothercodec, *butactuallymeanstile_data_size.
*/
uint32_t slice_data_size; /** *offsettothefirstbyteofthedatabuffer.
*/
uint32_t slice_data_offset; /** *seeVA_SLICE_DATA_FLAG_XXXdefinitions
*/
uint32_t slice_data_flag;
uint16_t tile_row;
uint16_t tile_column;
va_deprecated uint16_t tg_start;
va_deprecated uint16_t tg_end; /** \brief anchor frame index for large scale tile. *indexintoanarrayAnchorFramesoftheframesthatthetileuses *forprediction. *validonlywhenlarge_scale_tileequals1.
*/
uint8_t anchor_frame_idx;
/** \brief tile index in the tile list. *Validonlywhenlarge_scale_tileisenabled. *Driverusesthisfieldtodecidethetileoutputlocation.
*/
uint16_t tile_idx_in_tile_list;
/**@}*/
/** \brief Reserved bytes for future use, must be zero */
uint32_t va_reserved[VA_PADDING_LOW];
} VASliceParameterBufferAV1;
/**@}*/
#ifdef __cplusplus
} #endif
#endif/* VA_DEC_AV1_H */
Messung V0.5 in Prozent
¤ Diese beiden folgenden Angebotsgruppen bietet das Unternehmen0.19Angebot
(Wie Sie bei der Firma Beratungs- und Dienstleistungen beauftragen können 2026-08-24)
¤
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.