* added new API to release video frame for decoder and parser
* removed ReleseFrame() from low level parser classes
* Removed rocDecReleaseFrame() from decoder and added in parser
* address review comments
* revert un-necessary files
* minor fix
* remove unused function
* minor formatting fix
* * rocDecode/AV1: Added new sequence callback and submit decode calls.
* * rocDecode/AV1: Intra decode started to work.
* * rocDecode/AV1: Do not build PrintVaapiParams() in normal (non-debug) mode.
* * rocDecode: Fixed several issues with cropping.
- Fixed the pixel start offset error on streams with non-zero top/left cropping in MD5 calculation.
- Fixed the pixel start offset error on streams with non-zero top/left cropping, and/or with user specified cropping in YUV frame output.
- Sorted out code which deals with cropping area specifiied by the bitstream, and cropping area specified by the user.
* * rocDecode: Additional changes after discussion.
- Set display rect for decoder create/reconfig to displayable area or user specified ROI area.
- Do not set target rect for decoder create/reconfig. Leave it for future use.
- Unified naming of display rect in decoder create/reconfig structs.
* * rocDecode: Put back the extra rounding to target width/height specifiied by the coded stream, for peace of mind, based on code review.
* * rocDecode: Added the missing stream specified cropping offset to the starting pixel pointer for none-internal memory modes.
---------
Co-authored-by: Aryan Salmanpour <aryan.salmanpour@amd.com>
* * rocDecode: Implemented proper slice parameter buffer submission for multiple slice streams.
- We were submitting single slice parameter buffer for multiple slice streams. This works for other APIs but not for VAAPI, which requires to send slice parameter buffer once per slice.
- At step 1, all the multi-slice structures are fixed sized (256). Will make them dynamic in the next step.
- With this change, all 135 HEVC conformance streams now pass.
* * rocDecode: Multiple slice change step 2: make the fixed size slice info structure lists dynamic.
* * rocDecode: Minor changes in comments. No functional changes.
* *rocDecode: Changed INIT_SLICE_PARAM_LIST_NUM from 256 back to 16. 256 was set during debug process.
* * rocDecode: Add suggest changes from code review.
* * rocDecode: Moved slice_params_buf_id_ initialization to class VaapiVideoDecoder declaration, as suggested by code review.
* * rocDecode: Changed rocDecode API header variable naming to Google C++ style.
* * rocDecode: Unified AVC/H264 naming to AVC. Minor naming changes on HEVC related names.
* * rocDecode: Minor comment fix based on code review.
* * rocDecode/AVC: Added decode picture callback from parser to decoder and VAAPI decode submission.
* * rocDecode/AVC: Minor changes based on code review comments.
* * rocDecode/AVC: Removed a redundant line.
* * rocDecode/AVC: Condensed several lines based on code review feedback.
* * rocDeocde/HEVC: Added several "reserved" fields to structs to match the corresponding VA-API structs.
* * rocDecode/HEVC: Added decode submission to VA-API driver.
* * rocDecode/HEVC: Corrected data buffer id type.
* * rocDecode/HEVC: Filled HEVC picture parameter structures for decode callback. Added some missing inferences in tile size and weighted prediction table parsing.
* * rocDecode/HEVC: Changed CurrPicIdx assignment from POC to pic_idx.
* * rocDecode/HEVC: Rmoved one TODO comment, which has been done.
* * rocDecode/HEVC: Corrected two typos in comment.
* * rocDecode/HEVC: No need to set up scaling lists in decode callback when scaling list is not enabled.
* Add support for rocDecCreateDecoder API
* check the decoder config support before initializing the vaapi
* rename RocdecDecoderCreateInfo to RocDecoderCreateInfo
* fix a typo
* rocDecode api defintions added for decoder and parser
* addressed review comments and changed struct names to CamelCase
* minot reformatting
* parser high level class implementation