mirror of
https://github.com/androidx/media.git
synced 2025-04-30 06:46:50 +08:00

This is because the replay cache needs to clear the cache after one mediaItem is fully played. That is, if the last two frames are cached, we need to wait until they are both rendered before receiving inputs from the next input stream because the texture size might change. And when the texture size changes, we teardown all previous used textures, and this causes a state confusion in the shader program in that, the cache thinks one texture id is in-use (because it's not released) but the baseGlShaderProgram texturePool thinks it's already free (as a result of size change) Also fixes an issue that, if replaying a frame after EOS is signalled, the EOS signal is lost because we flush the pipeline. PiperOrigin-RevId: 745191032
Effect module
Provides functionality for applying effects to video frames.
Getting the module
The easiest way to get the module is to add it as a gradle dependency:
implementation 'androidx.media3:media3-effect: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.