Skip to content

Comments

feat: add TestVector optional decoder parameters#321

Open
msabiniok wants to merge 1 commit intomasterfrom
RDI-3112
Open

feat: add TestVector optional decoder parameters#321
msabiniok wants to merge 1 commit intomasterfrom
RDI-3112

Conversation

@msabiniok
Copy link
Contributor

adding the capability to include an optional decoder parameters set for a specfic test vector in the test suite definition. optional parameters are part of Decoder class decode function abstraction and are applied in Gstreamer(Decoder) and Ffmpeg(Decoder) classes implementations. It's child class responsibility to handle the optional parameters.

@msabiniok msabiniok force-pushed the RDI-3112 branch 7 times, most recently from 9512441 to 767774e Compare November 26, 2025 17:19
adding the capability to include an optional decoder parameters set
for a specfic test vector in the test suite definition.
optional parameters are utilized in Decoder class decode function abstraction
and are applied in Gstreamer(Decoder) and Ffmpeg(Decoder) classes implementations.
It's child class responsibility to handle the optional parameters.
decoder_params = ""
if optional_params:
for key, value in optional_params.items():
decoder_params += f" {key}={value} "
Copy link
Contributor

@ylatuya ylatuya Feb 13, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Optional parameter names and values can't be translated 1-to-1 to an implementation's property name and value.

If a test vector requires a parameter to be configured, there is no guarantee that the ffmpeg and gstreamer decoders for that codec will use the same property name. The mapping from the optional parameter key name to the property name must be done in the decoder's implementation.

Let's imagine there is a test vector for AV1 that requires enabling a feature named cool_feature. The test vector will define cool_feature = true. The ffmpeg av1 decoder will map this into enable_cool_feature = 1 and the GStreamer AV1 decoder will map this into cool_feature_enabled = True.

The mapping from optional_params into a decoder property must be done in the decoder implementation, not in a generic way in the base class.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants