Pass Metadata to Muxer when adding a track.

PiperOrigin-RevId: 514575400
This commit is contained in:
samrobinson 2023-03-07 01:40:04 +00:00 committed by Rohit Singh
parent e12de4cc1f
commit 2d22604efe
5 changed files with 10 additions and 1 deletions

View file

@ -70,7 +70,7 @@ import org.checkerframework.dataflow.qual.Pure;
MuxerWrapper muxerWrapper, MuxerWrapper muxerWrapper,
FallbackListener fallbackListener) FallbackListener fallbackListener)
throws ExportException { throws ExportException {
super(firstPipelineInputFormat, /* streamStartPositionUs= */ streamOffsetUs, muxerWrapper); super(firstAssetLoaderInputFormat, /* streamStartPositionUs= */ streamOffsetUs, muxerWrapper);
silentAudioGenerator = new SilentAudioGenerator(firstPipelineInputFormat); silentAudioGenerator = new SilentAudioGenerator(firstPipelineInputFormat);
availableInputBuffers = new ConcurrentLinkedDeque<>(); availableInputBuffers = new ConcurrentLinkedDeque<>();

View file

@ -27,6 +27,7 @@ import androidx.annotation.Nullable;
import com.google.android.exoplayer2.C; import com.google.android.exoplayer2.C;
import com.google.android.exoplayer2.Format; import com.google.android.exoplayer2.Format;
import com.google.android.exoplayer2.decoder.DecoderInputBuffer; import com.google.android.exoplayer2.decoder.DecoderInputBuffer;
import com.google.android.exoplayer2.metadata.Metadata;
import com.google.android.exoplayer2.util.MimeTypes; import com.google.android.exoplayer2.util.MimeTypes;
import com.google.android.exoplayer2.video.ColorInfo; import com.google.android.exoplayer2.video.ColorInfo;
import com.google.common.collect.ImmutableList; import com.google.common.collect.ImmutableList;
@ -49,6 +50,7 @@ import java.util.List;
private final long streamStartPositionUs; private final long streamStartPositionUs;
private final MuxerWrapper muxerWrapper; private final MuxerWrapper muxerWrapper;
private final @C.TrackType int outputTrackType; private final @C.TrackType int outputTrackType;
@Nullable private final Metadata metadata;
private boolean muxerWrapperTrackAdded; private boolean muxerWrapperTrackAdded;
@ -56,6 +58,7 @@ import java.util.List;
Format firstInputFormat, long streamStartPositionUs, MuxerWrapper muxerWrapper) { Format firstInputFormat, long streamStartPositionUs, MuxerWrapper muxerWrapper) {
this.streamStartPositionUs = streamStartPositionUs; this.streamStartPositionUs = streamStartPositionUs;
this.muxerWrapper = muxerWrapper; this.muxerWrapper = muxerWrapper;
this.metadata = firstInputFormat.metadata;
outputTrackType = getProcessedTrackType(firstInputFormat.sampleMimeType); outputTrackType = getProcessedTrackType(firstInputFormat.sampleMimeType);
} }
@ -94,6 +97,9 @@ import java.util.List;
if (inputFormat == null) { if (inputFormat == null) {
return false; return false;
} }
if (metadata != null) {
inputFormat = inputFormat.buildUpon().setMetadata(metadata).build();
}
try { try {
muxerWrapper.addTrackFormat(inputFormat); muxerWrapper.addTrackFormat(inputFormat);
} catch (Muxer.MuxerException e) { } catch (Muxer.MuxerException e) {

View file

@ -14,6 +14,7 @@ format 1:
channelCount = 1 channelCount = 1
sampleRate = 48000 sampleRate = 48000
pcmEncoding = 2 pcmEncoding = 2
metadata = entries=[TSSE: description=null: values=[Lavf56.1.0]]
sample: sample:
trackIndex = 1 trackIndex = 1
dataHashCode = 1868041800 dataHashCode = 1868041800

View file

@ -3,6 +3,7 @@ format 0:
channelCount = 1 channelCount = 1
sampleRate = 44100 sampleRate = 44100
pcmEncoding = 2 pcmEncoding = 2
metadata = entries=[TSSE: description=null: values=[Lavf56.1.0]]
sample: sample:
trackIndex = 0 trackIndex = 0
dataHashCode = 915609509 dataHashCode = 915609509

View file

@ -15,6 +15,7 @@ format 1:
channelCount = 2 channelCount = 2
sampleRate = 12000 sampleRate = 12000
pcmEncoding = 2 pcmEncoding = 2
metadata = entries=[smta: captureFrameRate=240.0, svcTemporalLayerCount=4, SlowMotion: segments=[Segment: startTimeMs=88, endTimeMs=879, speedDivisor=2, Segment: startTimeMs=1255, endTimeMs=1970, speedDivisor=8]]
sample: sample:
trackIndex = 1 trackIndex = 1
dataHashCode = -212376212 dataHashCode = -212376212