- Add
ConversionMode
enum to use withDoviRpu::convert_with_mode
.
- Breaking: Made
GenerateConfig::level6
optional. - Added
profile
toGenerateConfig
to support profile 8.1 and 8.4.
- Add
DoviRpu::convert_to_cmv40
helper method. - Add
DoviRpu::subprofile
field, for profile 7 FEL or MEL.
- Add support for compressed RPU format.
- Add
RpuDataHeader::nlq_pred_pivot_value
field, parsed for profile 4 and 7.
- Updated
bitvec
dependency to 1.0.0. - Allowed noop conversion when converting a profile 8 RPU with mode 2.
- Removed
last_byte
field fromDoviRpu
, replaced bytrailing_bytes
Vec.- Fixes parsing when the NAL has multiple trailing 0 bytes.
- Add support for variable length blocks: L8, L9, L10.
- Add L9 metadata by default when generating CM v4.0 RPUs.
- Add support for L255 block in DM v1 payload.
XML parser:
- Improve specific version support up to XML version 5.1.0.
- Add L10/L11 metadata parsing from XML.
- Fixed deserialize default value for
GenerateConfig
.cm_version
field. - Added
default_metadata_blocks
toGenerateConfig
struct. - Removed
target_nits
field fromGenerateConfig
. Use default blocks.
Changed DM data logic to write the number of blocks and align even if there are none.
Fix bug where metadata blocks were reordered after parsing, altering the final CRC32.
A bunch of breaking changes to add CMv4.0. Reworked extension metadata, different DM data payloads.
C API:
- Renamed
st2094_10_metadata
todm_data
inDoviVdrDmData
. - Added more levels to
dm_data
struct.
Fixed L3/L4 metadata block sizes.
Renamed ExtMetadataBlock
functions:
length
->length_bytes
bits
->length_bits
Conditional initializations of Vec
s in RpuDataMapping
and RpuDataNlq
structs.
- Represents the actual parsed metadata better, instead of being defaulted to 0.
Added guessed_profile
field to C API DoviRpuDataHeader
struct.