Move component initialization from Mp4Muxer.Builder to Mp4Muxer

PiperOrigin-RevId: 645004885
This commit is contained in:
sheenachhabra 2024-06-20 06:15:51 -07:00 committed by Copybara-Service
parent cb8f87e05e
commit 307655f6d5

View File

@ -167,27 +167,34 @@ public final class Mp4Muxer implements Muxer {
/** Builds an {@link Mp4Muxer} instance. */
public Mp4Muxer build() {
MetadataCollector metadataCollector = new MetadataCollector();
Mp4MoovStructure moovStructure =
new Mp4MoovStructure(metadataCollector, lastFrameDurationBehavior);
Mp4Writer mp4Writer =
new Mp4Writer(
return new Mp4Muxer(
fileOutputStream,
moovStructure,
lastFrameDurationBehavior,
annexBToAvccConverter == null ? AnnexBToAvccConverter.DEFAULT : annexBToAvccConverter,
sampleCopyEnabled,
attemptStreamableOutputEnabled);
return new Mp4Muxer(mp4Writer, metadataCollector);
}
}
private final Mp4Writer mp4Writer;
private final MetadataCollector metadataCollector;
private final Mp4Writer mp4Writer;
private Mp4Muxer(Mp4Writer mp4Writer, MetadataCollector metadataCollector) {
this.mp4Writer = mp4Writer;
this.metadataCollector = metadataCollector;
private Mp4Muxer(
FileOutputStream fileOutputStream,
@LastFrameDurationBehavior int lastFrameDurationBehavior,
AnnexBToAvccConverter annexBToAvccConverter,
boolean sampleCopyEnabled,
boolean attemptStreamableOutputEnabled) {
metadataCollector = new MetadataCollector();
Mp4MoovStructure moovStructure =
new Mp4MoovStructure(metadataCollector, lastFrameDurationBehavior);
mp4Writer =
new Mp4Writer(
fileOutputStream,
moovStructure,
annexBToAvccConverter,
sampleCopyEnabled,
attemptStreamableOutputEnabled);
}
/**