Commit gráf

25 Commit-ok

Szerző SHA1 Üzenet Dátum
jeffqjiangNew 04fe74f390 * rocDecode: Updated Copyright message for 2024. (#160) 2024-01-09 20:47:16 -05:00
jeffqjiangNew ccd813a2da 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_.
2024-01-09 10:51:30 -05:00
Rajy Rawther a5211189f5 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
2023-12-19 08:49:17 -05:00
jeffqjiangNew 0fbd030b5d 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.
2023-12-15 15:54:43 -05:00
Pavel Tcherniaev 5930f15c1a added help for arguments in case user doesn't give any arguments (#138) 2023-12-13 13:55:40 -05:00
jeffqjiangNew 4ca51e3314 * rocDecode/HEVC: Added formating of the MD5 digest output. (#122) 2023-12-06 10:54:41 -05:00
Aryan Salmanpour f008b52403 Fix a build error in videodecode sample (#119) 2023-12-05 12:01:17 -05:00
jeffqjiangNew 583e72720a Added the command option "-md5_check" to compare the MD5 of the decoded YUV to the reference MD5. This facilitates decoder conformance test automation. (#117)
* * rocDecode: Added a command option "-md5_check" to compare the MD5 of the decoded YUV to the reference MD5. This ficilitates decoder conformance test automation.

* * rocDecode/HEVC: Changed file and string operation from C code to C++ code.

* * rocDecode/HEVC: Updated README.md for videoDecode sample.
2023-12-05 11:40:39 -05:00
Lakshmi Kumar 69a2afd341 Adding Test script (#113)
* test script

* code clean up + csv file

* add readme

* deleting unnecesasry files

* spelling correction

* moving tests to smaples

* Delete tests directory

* review comments
2023-12-05 08:43:33 -05:00
Aryan Salmanpour e001d78859 remove the b_low_latency_ from the RocVideoDecoder class (#111) 2023-11-30 22:09:13 -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
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
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
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
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
Aryan Salmanpour 28c86ba813 update the videodecode sample to call GetFrame/ReleaseFrame regradless of dumping frames (#68) 2023-11-16 12:08:15 -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 d163eb1764 Rr/add low latency (#59)
* added picture_index associated with frame and fixed bug

* added option to force low_latency display

* add force_zero_latency option for videodecode sample
2023-11-13 13:53:19 -05:00
Rajy Rawther 55ebf353cc fix exception handling to gracefully exit (#49)
* fix exception handling to gracefully exit

* addressed review comments
2023-11-10 15:44:40 -05:00
Kiriti Gowda d34d85027c FFMPEG - Updates (#33)
* FFMPEG - Updates

* Readme - Updates

* Sample - Install

* Install Sample Deps

* Samples - Updates

* Sample - Added missing header
2023-11-06 11:51:47 -05:00
Aryan Salmanpour 0d9b056ee5 Fix a bug in GetVideoCodecString function where it didn't return the correct codec string (#35) 2023-11-06 08:20:53 -05:00
Rajy Rawther 89a278bd1b roc_video_decode class update (#29)
* WIP: class implementation

* add more definitions

* rocvideodecode implementation

* formatting fixes

* address review comments

* rocvideodecode class update

* videodec sample app-enable all apis
2023-11-01 21:16:02 -04:00
Kiriti Gowda 2af10a5d80 Dynamic Link Libraries - updates (#23)
* DRM - deps updates

* Link Libraries - Updates & cleanup

* LibDRM - Find in SLES fix

* Make Test - Fix Failures
2023-10-25 18:56:36 -04:00
Aryan Salmanpour b05e69b953 clean up the VideoDemuxer class to make it follow the Google c++ style (#7) 2023-09-15 14:19:14 -04:00
Aryan 1ba367988d Add initial cmake support for building the rocdecode library 2023-07-26 17:47:47 -04:00