Android video player based on the ExoPlayer library. It uses ExoPlayer's FFmpeg extension with all its audio formats enabled (it can handle even special formats like AC3, EAC3, DTS, DTS HD, TrueHD etc.).
It properly syncs audio with the video track when using Bluetooth earphones/speaker.
* Audio: Vorbis, Opus, FLAC, ALAC, PCM/WAVE (μ-law, A-law), MP1, MP2, MP3, AMR (NB, WB), AAC (LC, ELD, HE; xHE on Android 9+), AC-3, E-AC-3, DTS, DTS-HD, TrueHD
* Video: H.263, H.264 AVC (Baseline Profile; Main Profile on Android 6+), H.265 HEVC, MPEG-4 SP, VP8, VP9, AV1
* Containers: MP4, MOV, WebM, MKV, Ogg, MPEG-TS, MPEG-PS, FLV
* Streaming: DASH, HLS, SmoothStreaming, RTSP
* Subtitles: SRT, SSA, ASS, TTML, VTT
HDR (HDR10+ and Dolby Vision) video playback on compatible/supported hardware.
To load external (non-embedded) subtitles, long press the file open action in the bottom bar. The first time you do that, you will be offered to select root video folder to enable automatic loading of external subtitles.
Open source / source code available: https://github.com/moneytoo/Player