media/libraries/transformer/src
samrobinson 65afd40622 Only init SpeedChangingAudioProcessor if Format.Metadata not null.
If the Metadata passed to SegmentSpeedProvider is null, then the
SegmentSpeedProvider will always return 1f from getSpeed.

Initializing a SpeedChangingAudioProcessor requires a SpeedProvider.
Once configured,this audioProcessor is always active, so buffers are
passed through it. Because getSpeed is always 1, the processor performs
a no-op, but still has to do a buffer copy for each buffer.

By not initializing the audio processor when metadata is null, this
copy can be skipped and the audio pipeline is more performant.

Note: This change does not affect the multiple media-item case, which
is not supported with speed changes, as per Transformer API
documentation.
PiperOrigin-RevId: 513261811
2023-03-02 13:21:41 +00:00
..
androidTest Fix broken test due to file not found. 2023-02-27 18:37:42 +00:00
main Only init SpeedChangingAudioProcessor if Format.Metadata not null. 2023-03-02 13:21:41 +00:00
test Only init SpeedChangingAudioProcessor if Format.Metadata not null. 2023-03-02 13:21:41 +00:00