Files
rocm-systems/CHANGELOG.md
T
jeffqjiangNew e62aa3e09b Added the bit stream reader feature. (#433)
* * rocDecode/ES parser: Added elementary stream file parser for HEVC and AVC.

* * rocDecode/ES parser: Added elementary stream file parser for AV1. Also cleaned up the bitstream ring buffer code.

* * rocDecode/ES parser: Added the IVF container file parser for AV1. Also fixed a bug in fill ring buffer function.

* * rocDecode/ES file parder: Added supported stream type detection.
 - The stream type detection checks the unique syntax patterns of the stream type and calculate the likeliheed score. Based on the score, the most likely type is determined.
 - The current supported stream types are: AVC/HEVC/AV1 elementary streams, IVF AV1 streams.

* * rocDecode/ES file parser: Fixed an AVC decode regression due to a copy and paste error.

* * rocDecode/ES file parser: Added bit depth parsing for codec support check; Added stronger AV1 detection for IVF AV1 stream type.

* * rocDecode/ES file parser: Removed debugging logs.

* * rocDecode/ES file parser: Added exmaple code to use the built-in file parser.

* * rocDecode/Bitstream reader: Renamed the elementary parser feature to bitstream reader and re-organized the code.
 - Moved the bitstream reader code to rocDecode core lib from utility.
 - Added bitstream reader interface in parallel with rocDecode parser and decoder interfaces.

* * rocDecode/Bitstream reader: Added sample to use bitstream reader, instead of FFMPEG demuxer, to get picture data. Also reverted the original sample app back to using FFMPEG demuxer only.

* * rocDecode/Bitstream reader: Renamed the new sample app.

* * rocDecode/Bitstream reader: FFMPEG dependency reduction.
 - Moved MD5 functions out of RocVideoDecoder utility class. This removed RocVideoDecoder's dependency on FFMPEG.
 - Added the new MD5 utility, which depends on FFMPEG lib. MD5 message digest generation is now performed in the MD5 utility.
 - Modified decode sampples that uses MD5 generation function.
 - Removed FFMPEG dependency from video decoder basic sample.

* * rocDecode/Bitstream reader: Added option to use bitstream reader to video decode sample and conformance test script. Added the missing destroy bitstream reader call in video decode basic sample.

* * rocDecode/Bitstream reader: Minor format change. No functional changes.

* * rocDecode/Bitstream reader: Added handling of unsupported stream file type by the bitstream reader to decode sample apps.

* * rocDecode/Bitstream reader: Fixed build errors of several samples.

* * rocDecode/Bitstream reader: Added changes based on review comments.

* * rocDecode/Bitstream reader: File name changes based on review comments.

* * rocDecode/Bitstream reader: Moved MD5 code into single header file. Added changes based on review comments.

* * rocDecode/Bitstream reader: Removed redundant path.

* * rocDecode/Bitstream reader: Changed rocDecode version to 0.10.0. Added minor changes based on review comments.

---------

Co-authored-by: Kiriti Gowda <kiritigowda@gmail.com>
2024-12-05 09:46:24 -05:00

4.4 KiB

Changelog for rocDecode

Full documentation for rocDecode is available at https://rocm.docs.amd.com/projects/rocDecode/en/latest/

(Unreleased) rocDecode 0.10.0

Added

  • The new bitstream reader feature. The bitstream reader contains a few built-in stream file parsers, including elementary stream file parser and IVF container file parser. Currently the reader can parse AVC, HEVC and AV1 elementary stream files and AV1 IVF container files. More format support will be added in the future.
  • A new sample app, called videodecoderaw which uses the bitstream reader instead of FFMPEG demuxer to get picture data.

Changed

  • Moved MD5 code out of roc video decode utility.

Removed

Resolved issues

Tested configurations

  • Linux
    • Ubuntu - 22.04 / 24.04
    • RHEL - 8 / 9
    • SLES - 15 SP5
  • ROCm: 6.3.0
  • libva-amdgpu-dev - 2.16.0
  • mesa-amdgpu-va-drivers - 1:24.3.0
  • FFmpeg - 4.4.2 / 6.1.1
  • rocDecode Setup Script - V2.4.0

(Unreleased) rocDecode 0.9.0

Changed

  • AMD Clang++ is now the default CXX compiler.
  • rocDecode-setup.py setup script updates to common package install: Setup no longer installs public clang package.

Removed

Resolved issues

Tested configurations

  • Linux
    • Ubuntu - 22.04 / 24.04
    • RHEL - 8 / 9
    • SLES - 15 SP5
  • ROCm: 6.3.0
  • libva-amdgpu-dev - 2.16.0
  • mesa-amdgpu-va-drivers - 1:24.3.0
  • FFmpeg - 4.4.2 / 6.1.1
  • rocDecode Setup Script - V2.4.0

rocDecode 0.8.0 for ROCm 6.3

Changed

  • Clang is now the default CXX compiler.
  • The new minimum supported version of va-api is 1.16.
  • New build and runtime options have been added to the rocDecode-setup.py setup script.
  • Added FFMpeg based software decoding into utils.
  • Modified videodecode sample to allow FFMpeg based decoding

Removed

  • Make tests have been removed. CTEST is now used for both Make tests and package tests.
  • mesa-amdgpu-dri-drivers has been removed as a dependency on RHEL and SLES.

Resolved issues

  • Fixed a bug in the size of output streams in the videoDecodeBatch sample.

rocDecode 0.7.0

Added

  • Clang - Default CXX compiler
  • Parser - Add new API rocDecParserMarkFrameForReuse()

Optimized

  • Setup Script - Build and runtime install options

Changed

  • CTest - Core tests for make test and package test

Resolved issues

  • Sample - Bugfix for videoDecodeBatch

Tested configurations

  • Linux
    • Ubuntu - 20.04 / 22.04
    • RHEL - 8 / 9
    • SLES - 15 SP5
  • ROCm:
    • rocm-core - 6.2.0.60200-66
    • amdgpu-core - 1:6.2.60200-2009582
  • libva-dev - 2.7.0-2 / 2.14.0-1
  • mesa-amdgpu-va-drivers - 1:24.2.0.60200-2009582
  • FFmpeg - 4.2.7 / 4.4.2-0
  • rocDecode Setup Script - V2.2.0

rocDecode 0.6.0

Additions

  • FFMPEG V5.X Support
  • Mariner - Build Support

Optimizations

  • Setup Script - Error Check install

Changes

  • Dependencies - Updates to core dependencies
  • LibVA Headers - Use public headers
  • mesa-amdgpu-va-drivers - RPM Package available on RPM from ROCm 6.2

Fixes

  • Package deps
  • RHEL/SLES - Additional required packages mesa-amdgpu-dri-drivers libdrm-amdgpu

Tested configurations

  • Linux
    • Ubuntu - 20.04 / 22.04
    • RHEL - 8 / 9
  • ROCm:
    • rocm-core - 6.1.0.60100-64
    • amdgpu-core - 1:6.1.60100-1741643
  • libva-dev - 2.7.0-2 / 2.14.0-1
  • mesa-amdgpu-va-drivers - 1:24.1.0
  • mesa-amdgpu-dri-drivers - 24.1.0.60200
  • FFmpeg - 4.2.7 / 4.4.2-0
  • rocDecode Setup Script - V2.1.0

rocDecode 0.5.0

Changes

  • Changed setup updates
  • Added AMDGPU package support
  • Optimized package dependencies
  • Updated README

Fixes

  • Minor bug fix and updates

Tested configurations

  • Linux distribution
    • Ubuntu - 20.04 / 22.04
  • ROCm:
    • rocm-core - 6.1.0.60100-28
    • amdgpu-core - 1:6.1.60100-1731559
  • FFMPEG - 4.2.7 / 4.4.2-0
  • rocDecode Setup Script - V1.4

rocDecode 0.4.0

Changes

  • Added CTest - Tests for install verification
  • Added Doxygen - Support for API documentation
  • Changed setup updates
  • Optimized CMakeList Cleanup
  • Added README

Fixes

  • Minor bug fix and updates

Tested configurations

  • Linux distribution
    • Ubuntu - 20.04 / 22.04
  • ROCm:
    • rocm-core - 5.6.1.50601-93
    • amdgpu-core - 1:5.6.50601-1649308
  • FFMPEG - 4.2.7 / 4.4.2-0
  • libva-dev - 2.7.0-2 / 2.14.0-1
  • rocDecode Setup Script - V1.1