Граф коммитов

168 Коммитов

Автор SHA1 Сообщение Дата
Kiriti Gowda eeffcd41c4 Header fix (#167)
[ROCm/rocdecode commit: 69fb224027]
2024-01-10 13:46:39 -08:00
kiritigowda afaa319959 Doxy - Updates
[ROCm/rocdecode commit: 78b095af56]
2024-01-10 12:14:41 -08:00
kiritigowda 496740fd34 Documentation - Updates
[ROCm/rocdecode commit: cce46982a5]
2024-01-10 12:14:41 -08:00
Aryan Salmanpour 8512426f1b Add support for gfx1101 and gfx1102 (#165)
[ROCm/rocdecode commit: 28c00cb354]
2024-01-10 14:17:04 -05:00
Aryan Salmanpour d426118dd4 Update the dockers for ROCm 6.1.0+ (#164)
[ROCm/rocdecode commit: 28b4b90a3a]
2024-01-10 13:30:55 -05:00
jeffqjiangNew f90684cc40 * rocDecode/HEVC: Code clean up. (#163)
- Moved HEVC standard specific defines out of HevcVideoParser class to a new file.
 - Changed some namings to be more specification compliant.
 - No functional changes.

[ROCm/rocdecode commit: 2a4026470f]
2024-01-10 11:44:07 -05:00
Kiriti Gowda 347c25c6cc CI - Update common.groovy (#162)
[ROCm/rocdecode commit: 62d9052023]
2024-01-09 21:09:40 -08:00
Aryan Salmanpour 67c4d74160 videodecode sample - install the common.h in the destination (#161)
[ROCm/rocdecode commit: 64fab08b3a]
2024-01-09 20:35:19 -08:00
jeffqjiangNew 4c9a35a6a8 * rocDecode: Updated Copyright message for 2024. (#160)
[ROCm/rocdecode commit: 04fe74f390]
2024-01-09 20:47:16 -05:00
Kiriti Gowda 539074fe04 Jenkins - Fix install (#158)
[ROCm/rocdecode commit: 18a4cd0fc1]
2024-01-09 12:28:09 -08:00
Kiriti Gowda ad72a6132a Readme - Cleanup (#159)
[ROCm/rocdecode commit: 9c067ea979]
2024-01-09 14:11:42 -05:00
Kiriti Gowda 4fdbe3a007 ROCm 6.1.0+ - updates (#153)
* Package updates

* RHEL Updates

* Find LibDRM - Fix for rocm failure to install

* Fix dependencies

* Deps Updates

* Jenkins - Add make test to test phase

* Jenkins - Install amdgpu-dkms on CI

* Jenkins - Fix test

* Test - Release build

* Readme - Updates

[ROCm/rocdecode commit: fd27e268f0]
2024-01-09 13:43:34 -05:00
Aryan Salmanpour 793047edb1 CMakeLists code cleanup - dont link to hip::device if there is nt any hip kernles for compilation (#156)
[ROCm/rocdecode commit: 2f2e66679b]
2024-01-09 11:51:52 -05:00
jeffqjiangNew 8c8904761d Decoder reconfigure fixes. (#157)
* * rocDecode/HEVC: Fixed a couple of issues with reconfiguration of decoder when video size is changed.
  - Picture width and height variables were interchangeably used to represent coded picture size and display size, resulting reconfiguration errors. Now we use different variables to represent coded and display sizes.
  - Fixed a file overwriting issue in video size change case, where the display size can remain the same when coded size changes with specific cropping offsets.

* * rocDecode/HEVC: Added some fixes to decoder reconfiguration.
  - Added support for MD5 calculation in reconfigure flush callback. This fixed MD5 check failure on conformance streams with size changes.
  - Fixed total decoded frame number report with reconfigure when file dump or MD5 is not enabled. We need to call flush with reconfigure unconditionally (but with different actions).
  - Added the missing reconfigure flush when coded size is not changed but display size is changed.

* * rocDecode/HEVC: Corrected an error in GetDecodedWidth() method. Should use coded_width_, instead of disp_width_.

[ROCm/rocdecode commit: ccd813a2da]
2024-01-09 10:51:30 -05:00
Aryan Salmanpour b0ffeffb8f Add multi-threaingd support for videodecodergb sample (#154)
[ROCm/rocdecode commit: c464236bdc]
2024-01-08 15:02:43 -05:00
Aryan Salmanpour adb35c9fa5 code cleanup - remove unused hipstream from the RocDecoder class (#155)
[ROCm/rocdecode commit: 224e98ab2d]
2024-01-08 14:54:28 -05:00
Aryan Salmanpour af09e155f8 Use a dedicated hip stream for launching hip kernels for color space conversion (#152)
[ROCm/rocdecode commit: dd738aef48]
2024-01-05 12:55:46 -05:00
jeffqjiangNew bacf9f6700 Fixed a couple of errors in long term reference picture set parsing and long term reference picture list construction. (#151)
* * rocDecode/HEVC: Fixed a couple of errors in long term reference picture set parsing and long term reference picture list construction.

* * rocDecode/HEVC: Coding format change: removed newline in front of else statements. No functional changes.

[ROCm/rocdecode commit: c5483c751e]
2024-01-05 09:15:33 -05:00
jeffqjiangNew 7ee24483ff * rocDecode/HEVC: Fixed a bug in destroy data buffer function in VAAPI layer. (#150)
- We have to clear the buffer id after destroying it. Without this clearing, we will encounter VAAPI buffer destroy failure on certain conformance streams where scaling list is signaled dynamically. In this case, we create different number of data buffers on different frames. If we do not clear the buffer id when destroying it, a dummy scaling list buffer id will have the same value as another buffer, resulting double destroy.

[ROCm/rocdecode commit: 33d6b37ddb]
2024-01-02 15:56:18 -05:00
jeffqjiangNew 2b9ea06e5c * rocDecode/HEVC: Fixed an issue in reference list reconstruction. (#149)
- Removed a size check which was put in in early bring up stage and causes some conformance stream failures.
  - Also capped the DPB buffer size to 16 when we increase it from the spec value.

[ROCm/rocdecode commit: 6db0b79144]
2024-01-02 15:55:52 -05:00
Aryan Salmanpour c0efaf16e6 Check va_display_ to be valid before calling any VA APIs (#148)
[ROCm/rocdecode commit: 6c07e53614]
2023-12-21 08:16:24 -08:00
dependabot[bot] 372bc265b2 Bump rocm-docs-core[api_reference] from 0.30.2 to 0.30.3 in /docs/sphinx (#147)
Bumps [rocm-docs-core[api_reference]](https://github.com/RadeonOpenCompute/rocm-docs-core) from 0.30.2 to 0.30.3.
- [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.30.2...v0.30.3)

---
updated-dependencies:
- dependency-name: rocm-docs-core[api_reference]
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

[ROCm/rocdecode commit: 2853a58ac5]
2023-12-20 13:02:26 -05:00
Rajy Rawther d55324bcf9 Add mechanism to flush last frames during reconfigure (#142)
* add mechanism to flush last frames during reconfigure

* reconfig mode updated support

* addressed review comments

* addressed review comments

* change condition according to review comment

[ROCm/rocdecode commit: a5211189f5]
2023-12-19 08:49:17 -05:00
dependabot[bot] f43b7554e1 Documentation - Bump rocm-docs-core[api_reference] from 0.30.1 to 0.30.2 in /docs/sphinx (#146)
Bumps [rocm-docs-core[api_reference]](https://github.com/RadeonOpenCompute/rocm-docs-core) from 0.30.1 to 0.30.2.
- [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.30.1...v0.30.2)

---
updated-dependencies:
- dependency-name: rocm-docs-core[api_reference]
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

[ROCm/rocdecode commit: a82b1f215a]
2023-12-18 09:43:39 -08:00
jeffqjiangNew 3567946884 Fixed a POC calculation error in some corner cases. (#145)
* * rocDecode/HEVC: Fixed a POC calculation error in some corner cases.

* * rocDecode/HEVC: Added a newline between two functions. No functional changes.

[ROCm/rocdecode commit: 1cdbac7d70]
2023-12-18 08:20:55 -05:00
jeffqjiangNew 8d44a48ee0 Fixed a bug in reference picture list modification parsing. (#143)
* * rocDecode/HEVC: Fixed the random crash associated with undecodable RASL pictures.
  - When a CRA picutre occurs, all the pictures in the DPB are emptied. However, the following RASL (Random Access Skipped Leading) picture can still reference these emptied pictures, making them undecodeble.
  - We initialized the reference picture lists with (0xFF), representing invalid picture index. Normally these invalid indices are replaced by valid values during RPS decoding. However, on undecodable RASL pictures, we can not find an existing reference picture in DPB, leaving the invalid index untouched and resulting invalid indexing later on.
  - Now we initialize the reference picture lists with a valid value 0. Also we add index range check on reference buffer at VA-API layer to avoid invalid memory access.

* * rocDecode/HEVC: Fixed a typo in sampel app message.

* *rocDecode/HEVC: Fixed a bug in reference picture list modification parsing.
  - This fixed the test failure of two conformance streams.

[ROCm/rocdecode commit: c9cfcde12d]
2023-12-15 16:08:19 -05:00
jeffqjiangNew 7b2035c071 Fixed the random crash associated with undecodable RASL pictures. (#141)
* * rocDecode/HEVC: Fixed the random crash associated with undecodable RASL pictures.
  - When a CRA picutre occurs, all the pictures in the DPB are emptied. However, the following RASL (Random Access Skipped Leading) picture can still reference these emptied pictures, making them undecodeble.
  - We initialized the reference picture lists with (0xFF), representing invalid picture index. Normally these invalid indices are replaced by valid values during RPS decoding. However, on undecodable RASL pictures, we can not find an existing reference picture in DPB, leaving the invalid index untouched and resulting invalid indexing later on.
  - Now we initialize the reference picture lists with a valid value 0. Also we add index range check on reference buffer at VA-API layer to avoid invalid memory access.

* * rocDecode/HEVC: Fixed a typo in sampel app message.

[ROCm/rocdecode commit: 0fbd030b5d]
2023-12-15 15:54:43 -05:00
jeffqjiangNew dd6d01722c Added script to run static conformance test. (#139)
* * rocDecode/HEVC: Added script to run static conformance test.
  - The script runs videodecode app in MD5 check mode on the conformance streams.
  - The MD5 check results are stored in rocDecode_conformance.log and printed out.

* * rocDecode: Fixed formatting in README.md.

* * rocDecode/Conformance test: Added the missing exit when number of streams does not match number of reference MD5 digests.

* * rocDecode/Conformance test: Do case insensitive sorting.

* * rocDecode/Conformance test: Fixed a typo in the script.

* * rocDecode/Conformance test: Added info on the number of streams that fail to complete decode.

* * rocDecode/Conformance test: Added the missing message of the aborted streams to stdout.

[ROCm/rocdecode commit: 3598f4d96e]
2023-12-15 15:54:05 -05:00
Kiriti Gowda 0b161f9a10 Sample - Update CMakeLists.txt (#144)
Find rocDecode Fix

[ROCm/rocdecode commit: 07595d7937]
2023-12-15 15:44:58 -05:00
Kiriti Gowda b63e6e394c rocDecode Test Package (#140)
* rocDecode Test Package

* Jenkins - Add Test Package

* CTest for Package

[ROCm/rocdecode commit: 90fcd668a5]
2023-12-14 10:42:52 -05:00
Pavel Tcherniaev 8107033846 added help for arguments in case user doesn't give any arguments (#138)
[ROCm/rocdecode commit: 5930f15c1a]
2023-12-13 13:55:40 -05:00
Aryan Salmanpour 0652ec852c return the correct rocdec_status if DestroyDataBuffers fails (#137)
[ROCm/rocdecode commit: 9a78101d22]
2023-12-13 10:57:14 -05:00
Aryan Salmanpour 02e09dba20 FindFFmpeg.cmake cleanup - don't find the SWSCLAE_LIBRARY as it is not needed by rocDecode samples (#136)
[ROCm/rocdecode commit: 40cecb2752]
2023-12-13 10:07:47 -05:00
Kiriti Gowda 6358d28214 License Updates (#135)
* License Updates

* Readme Updates

[ROCm/rocdecode commit: 92b9982b55]
2023-12-13 09:49:52 -05:00
jeffqjiangNew 82d328b627 * rocDecode/HEVC: Fixed the decode failure of the conformance stream BUMPING_A_ericsson_1.bit. (#133)
- This stream tests output order conformance, in particular the bumping process. Four temporal layers are used and IRAP pictures with no_output_of_prior_pics_flag equal to 1 are present in the bitstream.

[ROCm/rocdecode commit: 42f109369e]
2023-12-13 09:48:15 -05:00
jeffqjiangNew 7cd5d6c0ee * rocDecode/HEVC: Added frame rate info report when it is available, from the parser. (#130)
[ROCm/rocdecode commit: 7240ee8973]
2023-12-12 13:47:19 -05:00
Lakshmi Kumar a3e509db61 Test Scripts Enhancement - readme correction & better error handling (#132)
* readme correction & better error handling

* review comments

[ROCm/rocdecode commit: 06cde7965b]
2023-12-12 10:34:31 -05:00
Aryan Salmanpour 5a9f519761 Don't call DestroyDataBuffers during the reconfiguration - this function will be called during SubmitDecode (#131)
[ROCm/rocdecode commit: b8a8b66b91]
2023-12-11 17:10:10 -05:00
Aryan Salmanpour b62bf4a6a1 Fix perf drop on some MI250 nodes - create VABuffers for every submission, and don't use vaMapBuffer/vaUnmapBuffer (#129)
* create VABuffers for every submission, and don't use vaMapBuffer/vaUnmapBuffer

* code clean up

* address review comments

[ROCm/rocdecode commit: b77d00e38e]
2023-12-11 15:40:50 -05:00
jeffqjiangNew a265b9a3da * rocDecode: Fix for the performance regression introduced by PR#114. (#128)
- Skip the additional buffer bumping specified in process C.5.2.2., to avoid synchronous job submission in some cases.
  - Increase DPB buffer size now by 2 to avoid overwriting pictures to be output.

[ROCm/rocdecode commit: a2dfa8bc26]
2023-12-08 17:53:01 -05:00
Rajy Rawther e651268fab added release of copied buffers in host and hip (#126)
* added release of copied buffers in host and hip

* address review comments

* addressed review comment

[ROCm/rocdecode commit: 1dc5a9d798]
2023-12-08 17:29:00 -05:00
jeffqjiangNew 5044e65de3 Changed MD5 calculation of 10 bit to match reference MD5. (#127)
* * rocDecode/HEVC: Changed MD5 calculation of 10 bit to match reference MD5.
  - Need to convert P010 YUV to little endian.

* * rocDecode/HEVC: Convert to C++ type cast style.

[ROCm/rocdecode commit: 5d45ac6d92]
2023-12-07 17:06:51 -05:00
dependabot[bot] df24f68089 Bump rocm-docs-core[api_reference] from 0.30.0 to 0.30.1 in /docs/sphinx (#125)
Bumps [rocm-docs-core[api_reference]](https://github.com/RadeonOpenCompute/rocm-docs-core) from 0.30.0 to 0.30.1.
- [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.30.0...v0.30.1)

---
updated-dependencies:
- dependency-name: rocm-docs-core[api_reference]
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

[ROCm/rocdecode commit: ab2f7db560]
2023-12-07 11:19:36 -05:00
Lakshmi Kumar 6c3f0095da adding support for MI300A A1 - gfx942 (#124)
[ROCm/rocdecode commit: f221d78258]
2023-12-07 09:31:44 -05:00
Aryan Salmanpour babefe67a9 Don't save frames into a single file if decoder reconfigure is detected for resolution changes - save into separate files for each resolution (#123)
[ROCm/rocdecode commit: bbd2fa5916]
2023-12-06 14:35:10 -05:00
jeffqjiangNew 99a97db048 * rocDecode/HEVC: Added formating of the MD5 digest output. (#122)
[ROCm/rocdecode commit: 4ca51e3314]
2023-12-06 10:54:41 -05:00
Lakshmi Kumar 47ff590d98 Multi Files Sample - Add reconfigure option (#118)
* Add support for rocDecReconfigureDecoder API

* adrress reviewer's comemnts

* add reconfigure to multifile

* update readme

* Update videodecodemultifiles.cpp

* Update README.md

---------

Co-authored-by: Aryan <aryan.salmanpour@amd.com>

[ROCm/rocdecode commit: 4de634cfd0]
2023-12-06 10:32:39 -05:00
jeffqjiangNew 64d7f1c37f * rocDecode/HEVC: In flush DPB function, added a check for any buffers that need for output before any actions. This prevents any potential issues. (#121)
[ROCm/rocdecode commit: fcd63b9358]
2023-12-06 09:39:49 -05:00
Aryan Salmanpour 08c99da4fa Add nullptr parameters check for all decoder/parser APIs and some code clean up (#120)
[ROCm/rocdecode commit: 9257cd6fcf]
2023-12-05 13:06:34 -05:00
Aryan Salmanpour 24dc12e75e Fix a build error in videodecode sample (#119)
[ROCm/rocdecode commit: f008b52403]
2023-12-05 12:01:17 -05:00