Closed
Description
Currently, elements in the https://github.com/membraneframework/membrane_opus_plugin don't rewrite timestamps:
- The parser generates timestamps based on frame duration
- The encoder and decoder ignore timestamps
The desired behaviour would be:
- The decoder should set the output PTS of each output buffer to the PTS of the corresponding input buffer
- The parser should have a
generate_best_effort_timestamps
option and generate PTS only if it's set to true - The encoder and parser (if
generate_best_effort_timestamps
is set to false) should set the output PTS in the following way:- If an input buffer generates multiple output buffers,
- the PTS of the first output buffer should be equal to the PTS of the input buffer
- the PTS of each subsequent output buffer should be increased by the frame duration
- If an output buffer is created out of multiple input buffers, the first of them should be treated as the origin of the output buffer
- If an input buffer generates multiple output buffers,
This is a part of #632