Skip to content

[NON-BE][NON-IO] Complete OMASA EXT output implementation

Reason why this change is needed

  • OMASA decoding to EXT output is currently supported only for the discrete object mode ISM_MASA_MODE_DISC. The support is missing for the other 3 modes and should be completed.

Description of the change

  • All OMASA modes now support EXT output:
    • ISM_MODE_NONE -> output MASA transports including the pre-rendered objects, MASA metadata, and a correct number of empty object signals and metadata files
    • ISM_MASA_MODE_MASA_ONE_OBJ -> render the separate object into the MASA with the other objects, output the MASA transports, MASA metadata, and a correct number of empty object signals and metadata files
    • ISM_MASA_MODE_PARAM_ONE_OBJ-> the objects mixed into MASA transports are separated, the output consists of the MASA transport, MASA metadata, the correct number of reconstructed objects and associated metadata
    • ISM_MASA_MODE_DISC -> unmodified: output MASA transports, MASA metadata, objects, and object metadata

Affected operating points

  • OMASA bitstream in pre-rendering MASA-only mode ISM_MODE_NONE is non-BC because of the added signalling of the number of objects.
    • The added signalling of the number of objects in the ISM_MODE_NONE mode causes the bitstream in that mode to be non-interoperable between the codec versions with and without this MR. This is visible in interop tests at low bitrates or bitrate switching, both using ISM_MODE_NONE.
  • Other bitstreams are BE compared to the previous state
  • Decoding OMASA to non-EXT output is BE with the previous state
  • Decoding OMASA to EXT output is now supported in all modes (earlier, no output)
Edited by Jouni Paulus

Merge request reports

Loading