mirror of
https://github.com/samsonjs/media.git
synced 2026-04-27 15:07:40 +00:00
Connect produceFragmentedMp4CheckBox to useMedia3Muxer
Connected `produceFragmentedMp4CheckBox` to `useMedia3Muxer` checkbox since producing fragmented MP4 is contingent on using Media3 Muxer. 1. If both were unchecked, `useMedia3Muxer` gets checked when `produceFragmentedMp4CheckBox` is checked. 2. If both were checked, `produceFragmentedMp4CheckBox` gets unchecked when `useMedia3Muxer` is unchecked. PiperOrigin-RevId: 683948863
This commit is contained in:
parent
e234076fdc
commit
12f34c337e
2 changed files with 17 additions and 8 deletions
|
|
@ -302,6 +302,18 @@ public final class ConfigurationActivity extends AppCompatActivity {
|
||||||
abortSlowExportCheckBox = findViewById(R.id.abort_slow_export_checkbox);
|
abortSlowExportCheckBox = findViewById(R.id.abort_slow_export_checkbox);
|
||||||
useMedia3Muxer = findViewById(R.id.use_media3_muxer_checkbox);
|
useMedia3Muxer = findViewById(R.id.use_media3_muxer_checkbox);
|
||||||
produceFragmentedMp4CheckBox = findViewById(R.id.produce_fragmented_mp4_checkbox);
|
produceFragmentedMp4CheckBox = findViewById(R.id.produce_fragmented_mp4_checkbox);
|
||||||
|
useMedia3Muxer.setOnCheckedChangeListener(
|
||||||
|
(buttonView, isChecked) -> {
|
||||||
|
if (!isChecked) {
|
||||||
|
produceFragmentedMp4CheckBox.setChecked(false);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
produceFragmentedMp4CheckBox.setOnCheckedChangeListener(
|
||||||
|
(buttonView, isChecked) -> {
|
||||||
|
if (isChecked) {
|
||||||
|
useMedia3Muxer.setChecked(true);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
ArrayAdapter<String> hdrModeAdapter =
|
ArrayAdapter<String> hdrModeAdapter =
|
||||||
new ArrayAdapter<>(/* context= */ this, R.layout.spinner_item);
|
new ArrayAdapter<>(/* context= */ this, R.layout.spinner_item);
|
||||||
|
|
|
||||||
|
|
@ -84,10 +84,8 @@ import androidx.media3.exoplayer.DefaultLoadControl;
|
||||||
import androidx.media3.exoplayer.ExoPlayer;
|
import androidx.media3.exoplayer.ExoPlayer;
|
||||||
import androidx.media3.exoplayer.audio.SilenceSkippingAudioProcessor;
|
import androidx.media3.exoplayer.audio.SilenceSkippingAudioProcessor;
|
||||||
import androidx.media3.exoplayer.util.DebugTextViewHelper;
|
import androidx.media3.exoplayer.util.DebugTextViewHelper;
|
||||||
import androidx.media3.muxer.Muxer;
|
|
||||||
import androidx.media3.transformer.Composition;
|
import androidx.media3.transformer.Composition;
|
||||||
import androidx.media3.transformer.DefaultEncoderFactory;
|
import androidx.media3.transformer.DefaultEncoderFactory;
|
||||||
import androidx.media3.transformer.DefaultMuxer;
|
|
||||||
import androidx.media3.transformer.EditedMediaItem;
|
import androidx.media3.transformer.EditedMediaItem;
|
||||||
import androidx.media3.transformer.EditedMediaItemSequence;
|
import androidx.media3.transformer.EditedMediaItemSequence;
|
||||||
import androidx.media3.transformer.Effects;
|
import androidx.media3.transformer.Effects;
|
||||||
|
|
@ -325,14 +323,13 @@ public final class TransformerActivity extends AppCompatActivity {
|
||||||
transformerBuilder.setMaxDelayBetweenMuxerSamplesMs(C.TIME_UNSET);
|
transformerBuilder.setMaxDelayBetweenMuxerSamplesMs(C.TIME_UNSET);
|
||||||
}
|
}
|
||||||
|
|
||||||
Muxer.Factory muxerFactory = new DefaultMuxer.Factory();
|
|
||||||
if (bundle.getBoolean(ConfigurationActivity.USE_MEDIA3_MUXER)) {
|
if (bundle.getBoolean(ConfigurationActivity.USE_MEDIA3_MUXER)) {
|
||||||
muxerFactory = new InAppMuxer.Factory.Builder().build();
|
transformerBuilder.setMuxerFactory(
|
||||||
|
new InAppMuxer.Factory.Builder()
|
||||||
|
.setOutputFragmentedMp4(
|
||||||
|
bundle.getBoolean(ConfigurationActivity.PRODUCE_FRAGMENTED_MP4))
|
||||||
|
.build());
|
||||||
}
|
}
|
||||||
if (bundle.getBoolean(ConfigurationActivity.PRODUCE_FRAGMENTED_MP4)) {
|
|
||||||
muxerFactory = new InAppMuxer.Factory.Builder().setOutputFragmentedMp4(true).build();
|
|
||||||
}
|
|
||||||
transformerBuilder.setMuxerFactory(muxerFactory);
|
|
||||||
|
|
||||||
if (bundle.getBoolean(ConfigurationActivity.ENABLE_DEBUG_PREVIEW)) {
|
if (bundle.getBoolean(ConfigurationActivity.ENABLE_DEBUG_PREVIEW)) {
|
||||||
transformerBuilder.setDebugViewProvider(new DemoDebugViewProvider());
|
transformerBuilder.setDebugViewProvider(new DemoDebugViewProvider());
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue