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

Without this, 32-bit files fail to play with `Playback stuck buffering and not loading`. With this change, playback works on devices where the `MediaCodec` FLAC decoder supports 32-bit, and crashes on devices with a `MediaCodec` FLAC decoder that does not support 32-bit. A follow-up change will aim to transform the 'unsupported' case from a crash into a report that the track format is not supported. 32-bit support was only fully incorporated into the spec when RFC 9639 was [published in December 2024](https://xiph.org/flac/2024/12/19/rfc-9639-published.html), and it was been supported by `libflac` (for encode and decode) [since September 2022](https://xiph.org/flac/2022/09/09/flac-1-4-0-released.html). The original version of this `FlacExtractor` was written before either of these, so only supported up to 24-bit. Issue: androidx/media#2197 PiperOrigin-RevId: 737559285
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.