mirror of
https://github.com/samsonjs/media.git
synced 2026-04-05 11:15:46 +00:00
The join mode is used for two cases: surface switching and mid-playback enabling of video. In both cases, we want to pretend to be ready despite not having rendered a new "first frame". So far, we also avoided force-rendering the first frame immediately because it causes a stuttering effect for the mid-playback enable case. The surface switch case doesn't have this stuttering issue as the same codec is used without interruption. Not force-rendering the frame immediately causes the first-frame rendered callback to arrive too early though, which may lead to cases where apps hide shutter views too quickly. This problem can be solved by only avoiding the force-render for the mid-playback enabling case, but not for the surface switching case. PiperOrigin-RevId: 622105916 |
||
|---|---|---|
| .. | ||
| src | ||
| build.gradle | ||
| proguard-rules.txt | ||
| README.md | ||
ExoPlayer module
This module provides ExoPlayer, the Player implementation for local media
playback on Android.
Getting the module
The easiest way to get the module is to add it as a gradle dependency:
implementation 'androidx.media3:media3-exoplayer:1.X.X'
where 1.X.X is the version, which must match the version of the other media
modules being used.
Alternatively, you can clone this GitHub project and depend on the module locally. Instructions for doing this can be found in the top level README.