Aryan Salmanpour
ae63fbacab
Chamne the return type of FillSeqCallbackFn to int and check to see if it returns any error ( #112 )
2023-12-01 14:50:33 -05:00
Rajy Rawther
15fb3e0b91
Samples - Add a sample for decoding a video and converting the raw decoded YUV frames to RGB format using HIP kernels ( #108 )
...
* WIP: class implementation
* add more definitions
* rocvideodecode implementation
* formatting fixes
* address review comments
* rocvideodecode class update
* videodec sample app-enable all apis
* video_dec_rgb_sample implementation
* fix issue with release mode execution and other clean_up
* add copyright block
* address review comments
* sync with tot and addressed review comments
* convert to snake_case
2023-12-01 13:26:30 -05:00
Aryan Salmanpour
e001d78859
remove the b_low_latency_ from the RocVideoDecoder class ( #111 )
2023-11-30 22:09:13 -05:00
jeffqjiangNew
a878a106fb
* rocDecode/HEVC: When video size changes, set new SPS activation flag. This takes care of the case where a new SPS replaces the old SPS with the same id but with different dimensions. ( #110 )
2023-11-30 18:32:25 -05:00
jeffqjiangNew
ad20961c4a
MD5 digest generation support ( #109 )
...
* * rocDecode/HEVC: Added support for MD5 message digest generation.
- Command option "-md5" triggers MD5 calculation and output.
* * rocDecode/HEVC: Changed C type casting to C++ type casting.
2023-11-30 17:40:45 -05:00
dependabot[bot]
86a0b295a5
Bump rocm-docs-core[api_reference] from 0.29.0 to 0.30.0 in /docs/sphinx ( #106 )
...
Bumps [rocm-docs-core[api_reference]](https://github.com/RadeonOpenCompute/rocm-docs-core ) from 0.29.0 to 0.30.0.
- [Release notes](https://github.com/RadeonOpenCompute/rocm-docs-core/releases )
- [Changelog](https://github.com/RadeonOpenCompute/rocm-docs-core/blob/develop/CHANGELOG.md )
- [Commits](https://github.com/RadeonOpenCompute/rocm-docs-core/compare/v0.29.0...v0.30.0 )
---
updated-dependencies:
- dependency-name: rocm-docs-core[api_reference]
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-11-30 17:40:30 -05:00
Aryan Salmanpour
c1a8ac48b4
use std::max to avoid compilation issue ( #107 )
2023-11-30 11:29:39 -05:00
Aryan Salmanpour
5beedfdd55
update the the rocDecode-setup script - add libstdc++12, and remove unused libavsws-dev ( #105 )
2023-11-30 10:08:38 -05:00
Lakshmi Kumar
449572f9bf
Samples - adds surface memory option to user ( #104 )
...
* adding surface mem type as user arg
* adding mem type user arg for all apps
* readme update
* readme updates on all apps
2023-11-30 08:31:37 -05:00
Lakshmi Kumar
720c56eb04
bug fix for crop arg ( #103 )
2023-11-30 08:13:55 -05:00
Aryan Salmanpour
225fabbf60
Update README - add libstdc++-12-dev as the prerequisites for building rocDecode ( #102 )
2023-11-29 20:59:06 -05:00
Aryan Salmanpour
48474fdad9
clean up - use google style guide for the RocDecoder class ( #101 )
...
* clean up - use google style guide for the RocDecoder class
* make other files/classes to follow the google style guides
2023-11-29 13:50:38 -05:00
Aryan Salmanpour
f8b01f3d1a
Increase the avioc_buffer_size for AVIOContext creation - this is needed for videoDecodeMem sample ( #100 )
2023-11-29 13:37:44 -05:00
Lakshmi Kumar
22de4fbc6f
Samples - adding a sample to illustrate StreamProvider for demuxer ( #99 )
...
* mem sample
* changes to match c++ style
* ffmpeg log
* readme update
* readme clean up
2023-11-29 11:22:21 -05:00
Lakshmi Kumar
ad54bd5258
README - updates for samples ( #98 )
...
* update readme for samples
* readme clean up
* readme clean up
2023-11-29 11:21:22 -05:00
Lakshmi Kumar
2cb3bd143c
Sample - add a new sample for processing multiple input files ( #97 )
...
* adding a sample for decoding multiple files
* readme correction
* spacing
* review comments
2023-11-29 11:13:24 -05:00
jeffqjiangNew
2d14eb61b2
* rocDecode/HEVC: Fixed corruptions in RASL (Random Access Skipped Leading) pictures of an associated CRA picture. ( #96 )
...
- It appears that the root cause of the corruption is the loss of some reference info of the RASL pictures at VA-API driver level.
- For reasons that are not documented in VA-API, or simply implementation limitations, the DPB buffer status when a CRA picture is decoded, needs to be sent to VA-API driver to the correct decoding of the associated RASL pictures. The info is stored in PocStFoll and PocLtFoll and is not needed for CRA picture decode, which is an intra picture. Without this info, the following RASL picture decode will run into problem even when its reference picture info is correctly specified.
- Note this appears to be a VA-API specific issue because it did not occur on other platforms.
2023-11-29 08:33:00 -05:00
Aryan Salmanpour
3625829546
Improve logging errors for VAAPI and HIP by including the API names and the status in the logs ( #95 )
...
* Improve logging errors for VAAPI and HIP by including the API names and the status in the logs
* clean up
2023-11-28 16:52:27 -05:00
Kiriti Gowda
80f8f5280f
Package - Fix ( #93 )
...
* Package - Fix
* Readme - Updates
2023-11-28 16:08:24 -05:00
jeffqjiangNew
27d28dd5f4
* rocDecode/HEVC: Fixed a method name typo. ( #92 )
2023-11-28 14:03:13 -05:00
Aryan Salmanpour
72bfa50c21
Fix a perf issue where we didn't pass the device id correctly to rocDecCreateDecoder API ( #91 )
2023-11-28 11:26:34 -05:00
Lakshmi Kumar
7ed754dc72
Bug fix - fork sample ( #90 )
...
* bug fix with fork sample
* review comments
2023-11-28 08:42:19 -05:00
jeffqjiangNew
09da68790c
* rocDecode/HEVC: Fixed the missing output picture issue on certain streams. ( #89 )
...
- When we hit IRAP (Intra Random Access Point) picture and need to bump all remaining decoded pictures from DPB, call display callback immediately, instead of delaying the callback to the IRAP decode process.
2023-11-27 19:54:49 -05:00
Aryan Salmanpour
d9310fdd5b
Explicitly link with Threads to avoid linking errors for videodecodeperf sample ( #88 )
2023-11-27 19:53:58 -05:00
dependabot[bot]
4bbd0a68e7
Bump rocm-docs-core[api_reference] from 0.28.0 to 0.29.0 in /docs/sphinx ( #84 )
...
Bumps [rocm-docs-core[api_reference]](https://github.com/RadeonOpenCompute/rocm-docs-core ) from 0.28.0 to 0.29.0.
- [Release notes](https://github.com/RadeonOpenCompute/rocm-docs-core/releases )
- [Changelog](https://github.com/RadeonOpenCompute/rocm-docs-core/blob/develop/CHANGELOG.md )
- [Commits](https://github.com/RadeonOpenCompute/rocm-docs-core/compare/v0.28.0...v0.29.0 )
---
updated-dependencies:
- dependency-name: rocm-docs-core[api_reference]
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-11-27 13:09:00 -05:00
Aryan Salmanpour
e5d5bd4abb
Return an error if the ExportSurface function fails. Add extra error logging in the destructor of the VaapiVideoDecoder class ( #87 )
2023-11-27 13:08:34 -05:00
jeffqjiangNew
624c3c0f09
End of stream flush ( #86 )
...
* * rocDecode/HEVC: Added picture output operation in DPB and display callback function.
- To avoid serialization of decode submissions and/or display callback in certain cases, increased DPB buffer size by 1 and tweaked picture bumping procedure.
* * rocDecode/HEVC: Added flushing of the remaining pictures from DPB at the end of decode session.
* * rocDecode/HEVC: Changed output_pic_num to num_output_pics to void some confusion. Set top_field_first to 1.
* * rocDecode/HEVC: Added a few return error checks.
2023-11-27 13:03:26 -05:00
Aryan Salmanpour
8898af78a6
D not fuse - zwhen runnnin gthesmake test. Don't force b_force_latency ofr Perf/Fork sample ( #85 )
2023-11-27 12:33:28 -05:00
jeffqjiangNew
57c040eff8
Added picture output operation in DPB and display callback function. ( #83 )
...
* * rocDecode/HEVC: Added picture output operation in DPB and display callback function.
- To avoid serialization of decode submissions and/or display callback in certain cases, increased DPB buffer size by 1 and tweaked picture bumping procedure.
* * rocDecode/HEVC: Added a few error checks and minor format changes.
2023-11-27 11:04:01 -05:00
Kiriti Gowda
90e6d30383
Package - updates ( #81 )
...
* Package - updates
* Package - Info
2023-11-23 08:57:45 -05:00
Aryan Salmanpour
a8e39c95c9
Fix a bug in VideoDecodePerf app to cepturn he number of decoded frames ( #82 )
2023-11-22 17:35:52 -05:00
Kiriti Gowda
e2f7e47bb3
Documentation - ReadtheDocs
...
Add configuration for ReadtheDocs
2023-11-21 14:46:20 -08:00
Sam Wu
3f7e3fe7d8
Add configuration for ReadtheDocs
2023-11-21 13:25:56 -07:00
jeffqjiangNew
ad186a90da
Re-enabled SEI message processing. ( #79 )
...
* * rocDecode/HEVC: Re-enabled SEI message processing.
- Added "-sei" command option to extract SEI messages from stream.
- Added support for SEI info parsing for multiple SEI NAL units with multiple payloads.
- Fixed a SEI syntax parsing issue and several procssing issues.
- Fixed a double free memory issue in SEI data buffer handling in HandlePictureDisplay().
* * rocDecode/HEVC: Coding format changes.
* * rocDecode/HEVC: Minor format changes.
2023-11-21 14:33:15 -05:00
Rajy Rawther
012f96c8c5
Rr/check sei function pointer ( #78 )
...
* commending out ParseSeiMessage because it is causing segfault
* CMake changes for valgrind
* added function pointer validity for sei callback
* fix review comments
2023-11-21 11:23:47 -05:00
Rajy Rawther
628e1d2610
rr: Add debug flags for valgrind ( #77 )
...
* commending out ParseSeiMessage because it is causing segfault
* CMake changes for valgrind
2023-11-20 12:07:13 -05:00
Rajy Rawther
210976616f
commending out ParseSeiMessage because it is causing segfault ( #76 )
2023-11-17 20:56:05 -05:00
Rajy Rawther
cbf6857f74
Rr/parser clean up ( #75 )
...
* minor clean_up on parser struct allocation
* minor clean_up
* address review comments
2023-11-17 20:55:53 -05:00
Rajy Rawther
81abe58fb4
Rr/vaapi decoder mem check ( #74 )
...
* add some checks for buffer requirements
* address review comments
2023-11-17 17:33:12 -05:00
jeffqjiangNew
c528f46843
* rocDecode/HEVC: Removed parsing of entry_point_offset_minus1[] and beyond in slice header since these syntax elements are not used by HW decode. ( #73 )
2023-11-17 15:59:29 -05:00
jeffqjiangNew
b6d0c41a59
* rocDecode/HEVC: Fixed the segmentation fault at the end of decode session on stream chimei_demo_1080p_h265_60fps.mp4 or similar streams. ( #72 )
...
Root cause: num_entry_point_offsets in the slice header of frame #2164 is 674, exceeding the entry_point_offset_minus1[440] array size. Parser writes beyond the array boundary, corrupting memory. Frame #2164 is not in conformance of the HEVC spec.
We need to put the constraint from the spec on the num_entry_point_offsets parsed from the stream. Also need to change the array size to the max possible for 8K.
2023-11-17 12:57:19 -05:00
Aryan Salmanpour
071b37b3bd
Code clean up - remove unused headers from demuxer, unused ffmpeg dependencies, and redundent info from videodecode sample ( #71 )
2023-11-17 12:46:27 -05:00
Kiriti Gowda
b94b4f7947
Dev Package - Add FFMPEG Deps ( #70 )
...
* Dev Package - Add FFMPEG Deps
* Print Deps
* Deps Fix
* CI - Package Details
2023-11-16 16:34:47 -05:00
Aryan Salmanpour
5d5db9a017
Add additional debug info if we couldn't find the matching pic in reference list and return error ( #69 )
...
* Add additional debug info if we couldn't find the matching pic in refrence list and return error
* Correct the debug info message
2023-11-16 12:39:23 -05:00
Aryan Salmanpour
28c86ba813
update the videodecode sample to call GetFrame/ReleaseFrame regradless of dumping frames ( #68 )
2023-11-16 12:08:15 -05:00
Kiriti Gowda
f67f9033c8
rocDecode - runtime, dev, ASAN package ( #52 )
...
* rocDecode - runtime, dev, ASAN
* Package - Updates & cleanup
* Package - Fix
* Package - Deps Info
* rocDecode - Package Depends Cleanup
* CI - Verify Runtime & Dev Packages
* Jenkins - Save all built packages
* Jenkins - Groovy Updates
* Package - Cleanup
* CMakeList - updates
* CI - save all packages
* CI - Save Test Logs
2023-11-15 21:32:10 -05:00
jeffqjiangNew
69c2243c9c
IRAP POC calculation fix. ( #66 )
...
* * rocDecode/HEVC: Fixed a bug in IRAP picture order count calculation. Added a few picture type check utilities.
* * rocDecode/HEVC: Minor coding style changes. No functional changes.
2023-11-15 16:07:18 -05:00
Aryan Salmanpour
851c537904
code cleanup - use google style for videodecode sample and RocVideoDecoder class - no functional change ( #65 )
...
* code cleanup - use google style for videodecode sample and RocVideoDecoder class - no functional change
* rename SaveSurfToFile to SaveFrameToFile
2023-11-15 15:49:16 -05:00
Rajy Rawther
a4652d6a53
Rr/fix output surface dims ( #64 )
...
* fix output surface dimensions
* fix bug
2023-11-15 13:46:37 -05:00
Aryan Salmanpour
c44a000c73
Update the make test and Readme by removing the H.264 ( #63 )
2023-11-15 10:57:55 -05:00