diff --git a/libraries/exoplayer/src/main/java/androidx/media3/exoplayer/audio/DecoderAudioRenderer.java b/libraries/exoplayer/src/main/java/androidx/media3/exoplayer/audio/DecoderAudioRenderer.java index 5c0bb4b7fc9..309c4aa323b 100644 --- a/libraries/exoplayer/src/main/java/androidx/media3/exoplayer/audio/DecoderAudioRenderer.java +++ b/libraries/exoplayer/src/main/java/androidx/media3/exoplayer/audio/DecoderAudioRenderer.java @@ -447,6 +447,12 @@ private boolean drainOutputBuffer() .buildUpon() .setEncoderDelay(encoderDelay) .setEncoderPadding(encoderPadding) + .setMetadata(inputFormat.metadata) + .setId(inputFormat.id) + .setLabel(inputFormat.label) + .setLanguage(inputFormat.language) + .setSelectionFlags(inputFormat.selectionFlags) + .setRoleFlags(inputFormat.roleFlags) .build(); audioSink.configure(outputFormat, /* specifiedBufferSize= */ 0, /* outputChannels= */ null); audioTrackNeedsConfigure = false; diff --git a/libraries/exoplayer/src/main/java/androidx/media3/exoplayer/audio/MediaCodecAudioRenderer.java b/libraries/exoplayer/src/main/java/androidx/media3/exoplayer/audio/MediaCodecAudioRenderer.java index 793577a446e..c70734b9d4c 100644 --- a/libraries/exoplayer/src/main/java/androidx/media3/exoplayer/audio/MediaCodecAudioRenderer.java +++ b/libraries/exoplayer/src/main/java/androidx/media3/exoplayer/audio/MediaCodecAudioRenderer.java @@ -562,6 +562,12 @@ protected void onOutputFormatChanged(Format format, @Nullable MediaFormat mediaF .setPcmEncoding(pcmEncoding) .setEncoderDelay(format.encoderDelay) .setEncoderPadding(format.encoderPadding) + .setMetadata(format.metadata) + .setId(format.id) + .setLabel(format.label) + .setLanguage(format.language) + .setSelectionFlags(format.selectionFlags) + .setRoleFlags(format.roleFlags) .setChannelCount(mediaFormat.getInteger(MediaFormat.KEY_CHANNEL_COUNT)) .setSampleRate(mediaFormat.getInteger(MediaFormat.KEY_SAMPLE_RATE)) .build();