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
Showing
with
14 additions
and
29 deletions
Please
register
or
sign in
to comment