Commit Graph

313 Commits

Author SHA1 Message Date
jeffqjiangNew 80eaa4963c * rocDecode: Removed the workaround for the previous non-blocking implementation of vaSyncSurface() in the driver, since the correct implementation has been put into the driver already. (#340)
[ROCm/rocdecode commit: 3ade0f31ff]
2024-05-06 17:40:15 -04:00
jeffqjiangNew 0ac8dd3bae * rocDecode: Set the correct surface format for high bit depths. (#339)
- No functional changes as surface format does not affect the actual allocation of the VA surface in this call due to IHV specific implementation. The app still needs to set the format correctly.

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

[ROCm/rocdecode commit: 21ae1d010a]
2024-05-06 08:09:23 -04:00
Kiriti Gowda 7ea07e5477 Readme - Updates (#338)
* Readme - Updates

* Docs - updates

[ROCm/rocdecode commit: 47165ef6bb]
2024-05-03 16:27:58 -04:00
jeffqjiangNew 4c64022b72 rocDecode: Added error handling of missing headers in cases where they are not parsed but referred in the frame decode process. One example is when frame seek is performed and the target picture is not a random access point. (#335)
* * rocDecode: Added error handling of missing headers in cases where they are not parsed but referred in the frame decode process. One example is when frame seek is performed and the target picture is not a random access point.

* * rocDecode/HEVC: Added some missing error handlings.

---------

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

[ROCm/rocdecode commit: ba36534f1f]
2024-05-03 15:18:08 -04:00
Kiriti Gowda 7fdf00a682 Sample - Added missing header (#336)
[ROCm/rocdecode commit: e2b9e7197a]
2024-05-02 17:26:11 -04:00
Kiriti Gowda 1fe8ea0a98 RHEL - Deps Fix (#334)
[ROCm/rocdecode commit: 2df3c13454]
2024-05-02 15:47:26 -04:00
Pavel Tcherniaev a9a75f088d added md5 checksum with changes that Aryan and Rajy requested (#333)
Co-authored-by: Aryan Salmanpour <aryan.salmanpour@amd.com>

[ROCm/rocdecode commit: 12fa766973]
2024-05-02 08:49:46 -04:00
jeffqjiangNew 5faecc9c59 * rocDecode/AVC: Added field picture support in reference list modification and adaptive referecne picture marking. (#332)
- 4 more conformance streams now pass.

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

[ROCm/rocdecode commit: 0f905f527c]
2024-05-02 08:46:47 -04:00
Kiriti Gowda d749e70d78 Setup - Fix U22 (#331)
* Setup - Fix U22

* Print - Traceback

[ROCm/rocdecode commit: 2e4b7e55ea]
2024-05-02 08:44:00 -04:00
Lakshmi Kumar 97be0bb3ca Seek - Bug Fixes + Sample Update (#327)
* adds seek to videodecode and seek bug fixes

* fixes both frames & timestamp with prev_key_frame option

* switch to exact key frame and bug fix

* fix decoded_frame_number from seek

* fix out_frame_duration

* clean up + exact fram fix

[ROCm/rocdecode commit: 2d50d685f7]
2024-05-01 17:03:27 -04:00
Kiriti Gowda 69ac148c4d Packaging Updates - RPM package changes (#328)
* RPM Deps - Updates

* SLES - Handle Package name diff

[ROCm/rocdecode commit: 68d8b629d1]
2024-05-01 14:35:49 -04:00
jeffqjiangNew 3e74cd919b AVC: Added support for picture adaptive frame-field (PICAFF) feature. (#325)
* * rocDecode/AVC: Added initial field picture decode support.
 - 7 conformance streams pass.

* * rocDecode/AVC: Minor change based on review comment.

* * rocDecode/AVC: Fixed an issue with getting the decoded frame buffer index for the second field.
 - 10 more field conformance streams now pass.

* * rocDecode/AVC: Added support for picture adaptive frame-field feature.
 - 10 more field conformance streams now pass.

* * rocDecode/AVC: Added a missing change during last merge.

[ROCm/rocdecode commit: d2b742ab4b]
2024-05-01 08:29:26 -04:00
jeffqjiangNew 86ad715056 AVC: Added initial field picture decode support. (#323)
* * rocDecode/AVC: Added initial field picture decode support.
 - 7 conformance streams pass.

* * rocDecode/AVC: Minor change based on review comment.

* * rocDecode/AVC: Fixed an issue with getting the decoded frame buffer index for the second field.
 - 10 more field conformance streams now pass.

* * rocDecode/AVC: Changed from C type cast to C++ type cast.

[ROCm/rocdecode commit: bd4e410a8d]
2024-04-30 21:21:05 -04:00
jeffqjiangNew 5a4735ea87 * rocDecode/AVC: Added support for gaps in frame_num. (#319)
- Fixed decode failure of conformance stream MR3_TANDBERG_B.264.

[ROCm/rocdecode commit: a8bcc1e62f]
2024-04-19 16:51:41 -04:00
David Galiffi 2b8212f920 Create CODEOWNERS file (#321)
* Create CODEOWNERS

Add global code owners

* Add Document Owners

[ROCm/rocdecode commit: 1eb08ac87c]
2024-04-19 16:31:12 -04:00
Roopa Malavally 533c74e46e Docs - Update index.rst (#320)
[ROCm/rocdecode commit: 4c44acc0cd]
2024-04-18 23:10:27 -07:00
Kiriti Gowda ceabff5a3d Setup - Cleanup (#317)
* Setup - Cleanup

* RPM - LibVA Name

* Fix - SLES install

* Fix

* FIX

[ROCm/rocdecode commit: 82e89ca95e]
2024-04-18 08:33:29 -04:00
Kiriti Gowda 697bebaa6c Docs - Cleanup & Fix (#316)
[ROCm/rocdecode commit: 25c4b9584f]
2024-04-16 15:05:17 -07:00
Kiriti Gowda 2fb85345c7 LibVA Updates - Support Public Version (#315)
* LibVA public - enable

* Support for RPM based OS

* Readme Updates

* Setup - Updates

* Setup - CentOS 7 unsupported

* Jenkins - Check Direct deps

[ROCm/rocdecode commit: 3b1d6932af]
2024-04-16 15:53:15 -04:00
jeffqjiangNew e86a11681c AVC: Fixed the decode failure of conformance stream MR2_TANDBERG_E.264. (#314)
* * rocDecode/AVC: Fixed the decode failure of conformance stream MR2_TANDBERG_E.264.
 - Fixed a bug in memory management control operation 4 process.

* * rocDecode/AVC: Added the missing assignment of top/bottom POC of ref_pic_list_1 in VAAPI slice parameter struct. This change did not make any effective functional changes.

[ROCm/rocdecode commit: 4188000079]
2024-04-15 08:32:03 -04:00
Aryan Salmanpour aef074db7a Update README (#313)
[ROCm/rocdecode commit: 44293d2218]
2024-04-11 13:36:27 -04:00
jeffqjiangNew c76a8e6885 AV1: Added frame header and tile group OBU parsing. (#312)
* * rocDecode/AV1: Added frame header OBU parsing.

* * rocDecode/AV1: Added a missing function description.

* * rocDecode/AV1: Added tile group OBU parsing.

[ROCm/rocdecode commit: 6b03950181]
2024-04-11 09:01:54 -04:00
Rajy Rawther 7aaef29eb7 videodemuxer: added seek functionality (#311)
* demux add seek functionality

* addressed review comments

[ROCm/rocdecode commit: 77e4c3150a]
2024-04-11 08:21:50 -04:00
Aryan Salmanpour 960f662e31 Use the correct offset when creating render nodes on each partition mode on MI300 (#310)
* Use the correct offset when creating render nodes on each partition mode on MI300

* Use the correct offset when creating render nodes on each partition mode on MI300

* code clean up

[ROCm/rocdecode commit: f2d1ad75eb]
2024-04-09 18:17:02 -04:00
Pavel Tcherniaev 13d85bfab8 added frame rate calculation to AVC parser (#307)
* added frame rate calculation to AVC parser

* fixed typo in avc_parser.h and removed cout debug statements from avc_parser.cpp

* made all changes discussed with Jeff

---------

Co-authored-by: jeffqjiangNew <142832361+jeffqjiangNew@users.noreply.github.com>

[ROCm/rocdecode commit: f8bf587f92]
2024-04-05 08:15:15 -04:00
Aryan Salmanpour 36840419cc Enable decoding AVC (H.264) codec by default and enable CTest for it (#309)
[ROCm/rocdecode commit: 2d877cd357]
2024-04-04 19:47:35 -04:00
jeffqjiangNew 190f2d9d33 * rocDecode/AV1: Added stream syntax defines and sequence header parsing. (#306)
[ROCm/rocdecode commit: e96b782dcf]
2024-04-03 15:04:18 -04:00
jeffqjiangNew 036a24f829 * rocDecode/AVC: Added support for memory management control operation equal to 5 and fixed an issue in reference picture list modification. (#304)
Co-authored-by: Kiriti Gowda <kiritigowda@gmail.com>

[ROCm/rocdecode commit: d38931ddae]
2024-04-01 20:58:31 -04:00
Kiriti Gowda ed48cecfe0 Setup - Updates (#305)
[ROCm/rocdecode commit: d6d9c9ed1a]
2024-04-01 15:53:36 -07:00
Lakshmi Kumar ae3debfa02 CMakeLists - install only required files from samples (#303)
* install only required files from samples

* update install directory

[ROCm/rocdecode commit: e185226ae9]
2024-04-01 15:53:15 -04:00
Aryan Salmanpour 1269f81629 Add support for various partition modes on MI300 (#302)
* Add support for various partition modes on MI300

* code clean up

[ROCm/rocdecode commit: 30790842f1]
2024-03-28 21:40:45 -04:00
Kiriti Gowda 80c54d2210 Setup - updates & Fixes (#301)
* Setup - Updates

* Setup - Develop Install Default OFF

* Developer - Default OFF

[ROCm/rocdecode commit: ad7f228774]
2024-03-28 00:23:53 -04:00
Lakshmi Kumar c8ddf324b3 exclude build folders from samples in install (#300)
[ROCm/rocdecode commit: 9fa7fe15fd]
2024-03-27 14:13:00 -04:00
Lakshmi Kumar 2fa48d1f1d move getEnvVar function to common (#299)
[ROCm/rocdecode commit: d5b5a31881]
2024-03-26 19:07:13 -04:00
Lakshmi Kumar a05ef46999 av1 initial commit (#298)
[ROCm/rocdecode commit: 6265f675c1]
2024-03-26 18:59:15 -04:00
jeffqjiangNew f655289b43 * rocDecode/AVC: Fixed the decode failure of the conformance stream MR2_MW_A.264. (#297)
- We should always clear the number of short term and long term references in DPB buffer structure when IDR occurs.

[ROCm/rocdecode commit: 7cf22e5920]
2024-03-26 18:53:42 -04:00
Aryan Salmanpour 805ecd6ee8 Organizing the install location of the rocdecode utils headers (#296)
[ROCm/rocdecode commit: 592195b652]
2024-03-26 12:47:37 -04:00
Aryan Salmanpour 7d197c4c23 modify the condition of using visble_devices by making sure that the requsted device id is valid (#295)
[ROCm/rocdecode commit: 4d5497eec8]
2024-03-26 11:40:59 -04:00
Lisa 2334f37f8f Docs - Update index.rst (#294)
[ROCm/rocdecode commit: 304d6c6515]
2024-03-25 15:41:32 -07:00
Aryan Salmanpour 440f7cf313 code clean up - remove extra parentheses (#293)
[ROCm/rocdecode commit: f94422f722]
2024-03-25 15:11:43 -04:00
Aryan Salmanpour a633867d2d Add support for detecting visible devices before initializing va-api (#292)
[ROCm/rocdecode commit: cb4abfedec]
2024-03-25 14:31:02 -04:00
Sam Wu a01160deb4 Have dependabot target the develop branch (#290)
[ROCm/rocdecode commit: 85895d61c5]
2024-03-20 14:16:23 -04:00
Lakshmi Kumar 229f9c4616 Sample Bug Fix - Batch sync issue (#289)
* bug fix for new dec creation

* move bit depth change after creating new dec

* codec update for every new dec

* bug fix for new dec creation

* move bit depth change after creating new dec

* codec update for every new dec

* fixes sync issue on MI250X for batch sample

* remove unused variable

[ROCm/rocdecode commit: e4316f009c]
2024-03-20 08:25:00 -04:00
Aryan Salmanpour 81952dd5a3 Fix CTEST for video_decodeRGB-H265 - copy missing resize_kernels.h/cpp into destination location (#288)
[ROCm/rocdecode commit: 5e9000a508]
2024-03-19 11:52:50 -04:00
Rajy Rawther 5ac584fad5 rocDecode resize sample implementation (#285)
* WIP: resize kernels

* hipified kernels for scaling from cuda

* updated videodecodeRGB sample for scaling

* added stream parameter to kernels

* add scale kernels using tex2d and NN

* enable tex2D kernels

* add NN resize kernels

* fixed scaling kernels

* fixed tex2D scaling kernel for UV scaling

* minor formatting

* address review comments

---------

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

[ROCm/rocdecode commit: 39e274d02d]
2024-03-18 08:32:19 -04:00
Kiriti Gowda f5c3feacfe README - package install fix
[ROCm/rocdecode commit: 4fcd988ec8]
2024-03-12 13:10:57 -07:00
Kiriti Gowda 7853d45511 LibDRM - Updates & Fixes (#286)
* LibDRM - Updates

* LibDRM - Updates & fixes

[ROCm/rocdecode commit: 2bde7e44f1]
2024-03-12 15:35:44 -04:00
Lakshmi Kumar 4978dac0c0 Bug Fix - Batch sample (#283)
* bug fix for new dec creation

* move bit depth change after creating new dec

* codec update for every new dec

[ROCm/rocdecode commit: cca5f22a9a]
2024-03-12 13:27:34 -04:00
jeffqjiangNew 9e64945bdf Fixed several issues with cropping. (#275)
* * 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>

[ROCm/rocdecode commit: e4614de461]
2024-03-11 22:35:11 -04:00
jeffqjiangNew 158a1a900c * rocDecode/AVC: Fixed an issue in reference list modification. We need to search all reference buffers in DPB, instead of the list of the current slice, for the replacement. (#284)
[ROCm/rocdecode commit: 44c14236ae]
2024-03-11 20:48:10 -04:00