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

Instead of using a long frameDurationUs with Math.floor, use a double frameDurationUs with Math.round, Before, playing an image with 30 fps over 1 second would result in the final timestamp not being aligned to the expected 1 second timestamp. Over long periods of time, this can lead to significant timestamp drift. Additionally, for TimestampWrapper and constrained multi-asset, where TimestampWrapper begins the 2nd effect on the 2nd asset's startTimeUs, this floor() behavior can lead to the first few frames of the 2nd asset using the first asset's effects, due to timestamps being mismatched. PiperOrigin-RevId: 516529240
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.