コミットグラフ

240 コミット

作成者 SHA1 メッセージ 日付
Kiriti Gowda 433ca3a564 Package - Host package updates (#671)
* rocDecode host - Package

* Host Package - Added

* Readme - Host updates

* Changelog - Updates
2025-11-14 13:23:51 -08:00
Jeff Jiang 60e6c585ff Added logging control (#667)
* * rocDecode: Added logging control
 - Message output from the core components is now controlled by the logging level, which can be set by an environment variable or other methods.

* * rocDecode/Logging control: Fixed a typo.

* * rocDecode/Logging control: Removed reference to the logger class from RocVideoDecoder utility, which results in build error on non-source install environment.

* * rocDecode/Logging control: Improved some wording in the docs.
2025-10-31 20:50:33 -04:00
Kiriti Gowda 4d090e8aa0 Compiler - Location update (#664) 2025-10-07 15:05:46 -07:00
Kiriti Gowda 48171900a3 Find package - rocdecode-host (#650)
* Find package - rocdecode-host

* Cleanup

---------

Co-authored-by: Kiriti <kiriti@santiago.amd.com>
2025-09-15 12:10:04 -07:00
Lakshmi Kumar ab64ac38fa FFmpeg version support for 5.1 and 6.1 (#646)
* add support for ffmpeg versions 5.1 & 6.1

* avcodec variable version support

* update for ffmpeg 6.1

* edit comments

---------

Co-authored-by: Kiriti Gowda <kiritigowda@gmail.com>
2025-09-08 21:17:41 -07:00
Kiriti Gowda b4ec9ca411 rocdecode host - Fix build and install (#641)
* rocdecode host - Fix build and install

* CMakeLists - fix

* Chnagelog -updates

* Update CHANGELOG.md
2025-09-02 10:11:45 -07:00
Rajy Rawther 253e604c7b fixed build issues with FFMpeg AVCodec version >=59 changes (#636)
* fixed build issues with FFMpeg AVCodec version >=59 changes

* fixed mistake of pushing stashed change

---------

Co-authored-by: Kiriti Gowda <kiritigowda@gmail.com>
2025-08-28 09:28:12 -07:00
Jeff Jiang 84257d513a AV1: Added 12-bit AV1 decode support. (#631)
* * rocDecode/AV1: Added 12-bit AV1 decode support.
 - The feature is only enabled for VAAPI version 1.23.0 and up.
 - Added MD5 calculation for 12-bit video output.

* * rocDecode: Bumped version up to 1.2.0 and updated change log.

* * rocDecode: Updated change log based on review.
2025-08-21 10:40:17 -04:00
Rajy Rawther d9690d1715 set min: number of decoded surfaces to non-zero value for ffmpeg based decoding (#627) 2025-08-08 10:11:10 -04:00
Rajy Rawther 3b280ac7c3 ffmpeg decode utility class cleanup (#616)
* cleaned up ffmpeg decode utility class to use rocdecode host lib

* added changelog for the PR

* address review comments for FFMPEG dependancy in cmake

* Update CHANGELOG.md

Co-authored-by: spolifroni-amd <Sandra.Polifroni@amd.com>

* addressed review comments

* update version in Cmake

---------

Co-authored-by: spolifroni-amd <Sandra.Polifroni@amd.com>
2025-07-28 09:59:47 -04:00
arvindcheru eb487c3204 Add softlink for rocdecode-host library target (#614) 2025-07-03 15:35:31 -04:00
Kiriti Gowda 23c17cc150 Find rocdecode - Updates for ROCm 7.0 (#610)
* rocDecode - Version 1.0.0

* Find package - config updates

* CMakeLists - Updates and config fix

* CMakelists - updates

* Samples - link to rocdecode_LIBRARY rocdecode::rocdecode

---------

Co-authored-by: Kiriti <kiriti@santiago.amd.com>
2025-06-24 17:39:49 -04:00
Lakshmi Kumar 9283abc629 Set video_signal_description struct to 0 by default (#605)
* Update avc_parser.cpp

* Update hevc_parser.cpp
2025-06-19 08:53:53 -04:00
Rajy Rawther 83734ec42e Option to disable building of rocdecode host based library (#603) 2025-06-12 08:28:44 -04:00
Aryan Salmanpour bf4922060d Utils - Remove the call to rocDecGetDecodeStatus after rocDecGetVideoFrame (#600)
* Utils - Remove the call to rocDecGetDecodeStatus after rocDecGetVideoFrame

* Remove other occurrences of rocDecGetDecodeStatus that are not necessary

* Update the description of the rocDecGetDecodeStatus and rocDecGetVideoFrame APIs

* Add missing including thread in avcodec_videodecoder.h for fixing the Azure build issue
2025-06-11 11:44:20 -04:00
Aryan Salmanpour 089abe7435 Remove the call to vaQuerySurfaceStatus before vaSyncSurface (#599) 2025-06-09 15:54:28 -04:00
Rajy Rawther 3ddb12f075 FFMpeg decoder rocdecode integration (#583)
* initial commit

* initial implementation for host based decoder

* minor change

* cmake changes and added new sample

* rocdecDecode sample implementation

* rocdecode sample changes working

* working version of avcodec decoder and sample

* Add end of stream handling for repeated decoding with reconfigure

* reorg files and added changelog

* update readme

* revert file

* remove unused class members

* addressed reviw comment for changelog

* fix sample to work on more video files

* resolved review comments

* bumped version to 0.14.0

* fixed build warnings

* addressed review comments

* addressed review comments

* addressed review comments

* fixed readme to match .cpp file options for parameters

* updated review comments, readme, and added test data for the sample

* fixed bug for saving frame for 10 bit videos

* addressed review comments

* addressed all the new review comments
2025-06-07 13:12:57 -04:00
jeffqjiangNew 24b0c59d71 VP9 error resilience: Added uncompressed and compressed header size checks. (#592)
* * VP9 error resilience: Added uncompressed and compressed header size checks.

* * Minor format change.
2025-05-21 10:04:16 -04:00
jeffqjiangNew e3ab17c09e * VP9 error resilience: Added syntax error handling. (#587)
- Added VP9 stream stream syntax error detection and handling.
 - Updated change log.
 - Bumped rocDecode version to 0.13.1.
2025-05-14 17:12:50 -04:00
jeffqjiangNew 17ef0c2d56 * AV1 error resilience: Added invalid stream syntax element checks in various places. (#582)
- Added checks for allowed values for various stream syntax elements, according to AV1 specification.
2025-05-09 14:35:08 -04:00
jeffqjiangNew a861d6f1d2 Error resilience: Added a few error handling measures. (#581)
* * Error resilience: Added a few error handling measures.
 - AV1: Added check flags to sequence header and frame header to indicate if the headers are parsed without errors. The flags are used to check if the parsing process which refers to the headers can proceed or stop.
 - AV1: Added divide by 0 check on tile columns in tile group parsing.
 - AV1: Added invalid OBU size check in AV1 elementary stream parsing in bitstream reader.
 - All codecs: Added divide by 0 check in display aspect ratio calculation.

* * Error resilience: Fixed a typo in an error message.
2025-05-06 12:02:51 -04:00
jeffqjiangNew 41338c40f3 AV1 error resilience: Added tile size error detection and handling. (#580)
* * AV1 error resilience: Added tile size error detection and handling. Also added additional update to change log for PR#574.

* * Wording change in change log.

* * Updated change log based on review comments.
2025-05-05 12:01:56 -04:00
jeffqjiangNew d751b24ed5 * Roc decoder utility: Do not throw exceptions on picture decode or decoder reconfig errors. (#577)
- This allows the decoder to be able to handle more AV1 error streams.
2025-05-01 12:50:28 -04:00
jeffqjiangNew e85ae200e5 AV1 error resilience: Treated OBU header syntax errors as non-critical. Added invalid OBU size detection and handling. (#570)
* * AV1 error resilience: Treated OBU header syntax errors as non-critical. Added invalid OBU size detection and handling.

* * AV1 error resilience: Minor change.
2025-04-25 13:57:37 -04:00
Aryan Salmanpour ed556199b0 close the drm_fd in the VaContext destructor (#560) 2025-04-14 19:13:57 -04:00
jeffqjiangNew 03f73357c7 * AVC: Disabled support for gaps in frame_num. (#559) 2025-04-14 16:23:15 -04:00
Aryan Salmanpour 0f89c55157 Add extra error checking during decoder reconfiguration (#558) 2025-04-14 14:36:08 -04:00
jeffqjiangNew 193423300f AVC error resilience: Treat reference list setup errors as non-critical. Also minor wording correction in sample script output. (#557)
* * AVC error resilience: Treat reference list setup errors as non-critical. Also minor wordking correction in sample script output.

* * AVC error resilience: Minor change.

---------

Co-authored-by: Kiriti Gowda <kiritigowda@gmail.com>
2025-04-12 09:11:33 -04:00
jeffqjiangNew 3d1a1b638e AVC: Added support for in stream DPB buffer size change. (#553)
* * AVC: Added support for in stream DPB buffer size change.

* * AVC: Updated change log.

---------

Co-authored-by: Kiriti Gowda <kiritigowda@gmail.com>
2025-04-09 20:57:52 -04:00
Aryan Salmanpour d80f807b1a Code Clean up - remove unused API (#552)
* Code Clean up - remove unused API

* clean up
2025-04-09 13:49:04 -04:00
jeffqjiangNew 9127f2ccba * AVC: Fixed an issue in video size change cases, where the remaining decoded buffers of the previous video size in DPB are not output. (#550)
- We need to flush DPB before decoder reconfiguration.

Co-authored-by: Kiriti Gowda <kiritigowda@gmail.com>
2025-04-07 20:34:01 -04:00
jeffqjiangNew 0cb7c4594c AVC error resilience: Added bitstream syntax error handling. (#549)
* * AVC error resilience: Added syntax error detection in SPS, PPS, and slice header parsing.

* * AVC error resilience: Added NAL unit size check before parsing.

* * AVC error resilience: Added parsing error handling.

* * AVC error resilience: Updated change log.
2025-04-07 16:16:49 -07:00
jeffqjiangNew d10eacf05f * HEVC error resilience: Adjusted the range check for the total reference picture number so more errors can be detected. Also fixed a build warning of avc_parser.cpp in debug mode. (#548) 2025-03-31 19:04:34 -04:00
jeffqjiangNew fc01d72aea * rocDecode/HEVC error resilience: Added dependant slice error handling. (#547) 2025-03-28 16:35:03 -04:00
jeffqjiangNew 93711b5127 HEVC Error resilience: Added invalid syntax detection in SPS, PPS, and slice header parsing. (#542)
* * rocDecode/HEVC Error resilience: Added invaid syntax detection in SPS, PPS, and slice header parsing.

* * rocDecode/HEVC error resilience: Minor indent change.
2025-03-26 08:16:36 -04:00
Lakshmi Kumar 0b1865e8b8 Fix warnings (#536)
* fix warnings

* remove warning

---------

Co-authored-by: Kiriti Gowda <kiritigowda@gmail.com>
2025-03-20 09:12:16 -04:00
jeffqjiangNew 5988eb16b6 HEVC: Added DPB size change handling through decoder reconfiguration. (#531)
* * rocDecode/HEVC: Added DPB size change handling through decoder reconfiguration.

* * rocDecode/HEVC: Minor fix.
2025-03-18 17:19:01 -04:00
Kiriti Gowda 6b026af151 CMake config - updates and fixes (#532)
* CMake Config - updates and fixes

* Version - Updates

* Changelog - updates

* Update CHANGELOG.md

Co-authored-by: spolifroni-amd <Sandra.Polifroni@amd.com>

---------

Co-authored-by: spolifroni-amd <Sandra.Polifroni@amd.com>
2025-03-17 12:38:01 -04:00
Aryan Salmanpour d8e285ce1b Remove unused VA_CHECK_VERSION (#530) 2025-03-13 10:43:57 -04:00
jeffqjiangNew ab7546930f HEVC: Added bit depth change support in decoder reconfiguration. (#527)
* * rocDecode/HEVC: Added bit depth change support in decoder reconfiguration.

* * rocDecode/HEVC: Removed a comment line.

* * rocDecode/HEVC: Updated change log.

* * rocDecode/HEVC: Used the reserved space in RocdecReconfigureDecoderInfo structure for bit_depth_minus_8 field to be backward compatible. Added bit depth to the new sequence file name when we dump output in decoder reconfiguration case.

* * rocDecode/HEVC: Added bit depth change support in decoder reconfiguration.

* * rocDecode/HEVC: Removed a comment line.

* * rocDecode/HEVC: Updated change log.

* * rocDecode/HEVC: Used the reserved space in RocdecReconfigureDecoderInfo structure for bit_depth_minus_8 field to be backward compatible. Added bit depth to the new sequence file name when we dump output in decoder reconfiguration case.

* * rocDecode/HEVC: Changes based on review comments.

* * rocDecode: Fixed a bug related to 422 surface format assignment.

* * rocDecode: Fixed build warnings with some sample apps.
2025-03-13 09:29:25 -04:00
jeffqjiangNew ac74540c19 * rocDecode/HEVC error resilience: Fixed a vulnerability with active PPS id. We should not assign the current active PPS id to an invalid value. (#529) 2025-03-12 17:49:52 -04:00
jeffqjiangNew 263b57fde9 Added syntax error handling in VPS parsing. (#526)
* * rocDecode/HEVC: Added error handling in VPS parsing.

* * rocDecode/HEVC: Updated change log.

* * rocDecode/Error resilience: Improved syntax error check logging: add the parameter name.
2025-03-10 09:15:12 -04:00
jeffqjiangNew 27adeb8c47 Error resilience: Added HEVC slice syntax error handle for some corrupted streams. (#525)
* * rocDecode/Error resilience: Added HEVC slice syntax error handle for some corrupted streams.
 - Detect out of range total reference numbers.

* * rocDecode/Error resilience: Added additional checks for HEVC reference parameters.

* * rocDecode/Error resilence: Corrected checked range.
2025-03-05 08:44:59 -05:00
jeffqjiangNew 5f779a6eb7 * rocDecoder/Bitstream reader: Added stream type detection optimization. (#522)
- During stream type evaluation, when we have a high confidence score, we stop and finalize, to avoid unnecessary exhaustive type search.
2025-03-03 09:31:49 -05:00
jeffqjiangNew a5863bceba VP9: Added VP9 IVF container detection and picture data parsing support to bitstream reader. (#519)
* * rocDecode/VP9: Added VP9 IVF containter detection and picture data parsing.

* * rocDecode/VP9 bitstream reader: Wording changes based on review comment.

* * rocDecode/VP9 IVF parser: Updated change log based on review comment.

* * rocDecode/VP9 IVF parser: Bumped up rocDecode version to 0.11.0.

* * rocDecode/VP9: Added VP9 IVF containter detection and picture data parsing.

* * rocDecode/VP9 bitstream reader: Wording changes based on review comment.

* * rocDecode/VP9 IVF parser: Updated change log based on review comment.

* * rocDecode/VP9 IVF parser: Bumped up rocDecode version to 0.11.0.

* * rocDecode/VP9 IVF parsing: Minor name correction.
2025-02-28 18:11:10 -05:00
jeffqjiangNew a78f6730c8 * rocDecode: Fix a typo in new sequence callback function name. (#520) 2025-02-25 20:43:46 -05:00
jeffqjiangNew 2af7bbf4e7 VP9: Added support for video size change (scaling down) on inter frames. (#508)
* * rocDecode/VP9: Added support for video size change (scaling down) on inter frames.
 - A new reconfigure mode is added, where we keep the existing VAAPI surfaces and context, and work on the smaller images and store the images in the surfaces.

* * rocDecode/VP9 resize: Added changes based on review comments.
2025-02-12 17:18:09 -05:00
Aryan Salmanpour 320d1422af remove unused code (#504) 2025-02-03 13:21:43 -05:00
Aryan Salmanpour bca75cf2b7 Eliminate the use of std::fs (#497) 2025-01-27 08:10:11 -05:00
jeffqjiangNew 46a344259b Create separate VA display for each decoder instance. (#496)
* * rocDecode: Experiment per decode instance va display.

* * rocDecode/Perf: Removed comments.

* * rocDecode/VA context: Minor changes based on review comment.
2025-01-23 15:28:41 -08:00