{"id":15035790,"url":"https://github.com/moneytoo/player","last_synced_at":"2026-02-10T00:11:43.774Z","repository":{"id":39696587,"uuid":"311451920","full_name":"moneytoo/Player","owner":"moneytoo","description":"▶ Simple and lightweight, yet polished and powerful Android video player based on ExoPlayer","archived":false,"fork":false,"pushed_at":"2025-05-08T21:18:42.000Z","size":304627,"stargazers_count":2056,"open_issues_count":39,"forks_count":213,"subscribers_count":27,"default_branch":"master","last_synced_at":"2025-05-08T22:27:01.081Z","etag":null,"topics":["android","android-video-player","androidx-media","exoplayer","exoplayer2","media","media3","player","video","video-player"],"latest_commit_sha":null,"homepage":"https://play.google.com/store/apps/details?id=com.brouken.player","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"unlicense","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/moneytoo.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2020-11-09T20:05:41.000Z","updated_at":"2025-05-08T21:18:46.000Z","dependencies_parsed_at":"2023-02-15T13:31:23.071Z","dependency_job_id":"c3f8cad8-ed66-4f76-9cc8-4986a2bf8919","html_url":"https://github.com/moneytoo/Player","commit_stats":{"total_commits":890,"total_committers":56,"mean_commits":"15.892857142857142","dds":"0.16179775280898878","last_synced_commit":"e0c747077549d79774a68bf3fcc216ca0d5b7ee8"},"previous_names":[],"tags_count":191,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/moneytoo%2FPlayer","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/moneytoo%2FPlayer/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/moneytoo%2FPlayer/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/moneytoo%2FPlayer/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/moneytoo","download_url":"https://codeload.github.com/moneytoo/Player/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":254083871,"owners_count":22011905,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["android","android-video-player","androidx-media","exoplayer","exoplayer2","media","media3","player","video","video-player"],"created_at":"2024-09-24T20:29:29.624Z","updated_at":"2026-02-10T00:11:43.746Z","avatar_url":"https://github.com/moneytoo.png","language":"Java","funding_links":["https://paypal.me/MarcelDopita"],"categories":[],"sub_categories":[],"readme":"# Just (Video) Player \n\n[![GitHub release (latest SemVer)](https://img.shields.io/github/v/release/moneytoo/Player.svg?logo=github\u0026label=GitHub\u0026cacheSeconds=3600)](https://github.com/moneytoo/Player/releases/latest)\n[![Google Play](https://img.shields.io/endpoint?color=green\u0026logo=google-play\u0026url=https%3A%2F%2Fplay.cuzi.workers.dev%2Fplay%3Fi%3Dcom.brouken.player%26l%3DGoogle%2520Play%26m%3Dv%24version)](https://play.google.com/store/apps/details?id=com.brouken.player)\n[![F-Droid](https://img.shields.io/f-droid/v/com.brouken.player.svg?logo=f-droid\u0026label=F-Droid\u0026cacheSeconds=3600)](https://f-droid.org/packages/com.brouken.player/)\n[![GitHub all releases](https://img.shields.io/github/downloads/moneytoo/Player/total?logo=github\u0026cacheSeconds=3600)](https://github.com/moneytoo/Player/releases/latest)\n[![Google Play](https://img.shields.io/endpoint?color=green\u0026logo=google-play\u0026url=https%3A%2F%2Fplay.cuzi.workers.dev%2Fplay%3Fi%3Dcom.brouken.player%26l%3Ddownloads%26m%3D%24totalinstalls)](https://play.google.com/store/apps/details?id=com.brouken.player)\n[![Google Play](https://img.shields.io/endpoint?color=green\u0026logo=google-play\u0026url=https%3A%2F%2Fplay.cuzi.workers.dev%2Fplay%3Fi%3Dcom.brouken.player%26l%3Drating%26m%3D%25E2%2598%2585%2520%24rating)](https://play.google.com/store/apps/details?id=com.brouken.player)\n[![Media3](https://img.shields.io/badge/Media3-1.6.0-007ec6?cacheSeconds=3600)](https://github.com/androidx/media/releases/tag/1.6.0)\n[![Weblate project translated](https://img.shields.io/weblate/progress/just-player?logo=weblate\u0026logoColor=white\u0026cacheSeconds=36000)](https://hosted.weblate.org/engage/just-player/)\n[![Subreddit subscribers](https://img.shields.io/reddit/subreddit-subscribers/JustPlayer?label=r%2FJustPlayer\u0026logo=reddit\u0026logoColor=white\u0026cacheSeconds=3600)](https://www.reddit.com/r/JustPlayer/)\n\nAndroid video player based on [Media3](https://github.com/androidx/media) (formerly [ExoPlayer](https://github.com/google/ExoPlayer)), compatible with Android 5+ and Android TV.\n\nIt uses ExoPlayer's ``ffmpeg`` extension with [all its audio formats](https://exoplayer.dev/supported-formats.html#ffmpeg-extension) enabled (it can handle even special formats like AC3, EAC3, DTS, DTS HD, TrueHD etc.).\n\nIt properly syncs audio with video track when using Bluetooth earphones/speaker. (I was not able to find any other nice ExoPlayer based video player so I created this one.)\n\n## Supported formats\n\n * **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, IAMF, MPEG-H\n * **Video**: H.263, H.264 AVC (Baseline Profile; Main Profile on Android 6+), H.265 HEVC, MPEG-4 SP, VP8, VP9, AV1\n * **Containers**: MP4, MOV, WebM, MKV, Ogg, MPEG-TS, MPEG-PS, FLV, AVI (🚧)\n * **Streaming**: DASH, HLS, SmoothStreaming, RTSP\n * **Subtitles**: SRT, SSA/ASS ([limited styling](https://github.com/google/ExoPlayer/issues/8435)), TTML, VTT, DVB\n\nHDR (HDR10+ and Dolby Vision) video playback on compatible/supported hardware.\n\nAC-4 audio is supported on devices providing such system decoder (e.g. Samsung Galaxy A, S and Z series running Android 11 or later).\n\n## Screenshots\n\n\u003cimg src=\"https://raw.githubusercontent.com/moneytoo/Player/master/fastlane/metadata/android/en-US/images/phoneScreenshots/1.png\" width=\"806\"\u003e \u003cimg src=\"https://raw.githubusercontent.com/moneytoo/Player/master/fastlane/metadata/android/en-US/images/phoneScreenshots/2.png\" width=\"400\"\u003e \u003cimg src=\"https://raw.githubusercontent.com/moneytoo/Player/master/fastlane/metadata/android/en-US/images/phoneScreenshots/4.png\" width=\"400\"\u003e\n\n## Features\n\n * Audio/subtitle track selection\n * Playback speed control\n * Horizontal swipe and double tap to quickly seek\n * Vertical swipe to change brightness (left) / volume (right)\n * Pinch to zoom (Android 7+)\n * PiP (Picture in Picture) on Android 8+ (resizable on Android 11+)\n * Resize (fit/crop)\n * Volume boost\n * Auto frame rate matching on Android TV/boxes (Android 6+)\n * Post-playback actions (delete file/skip to next)\n * Touch lock (long tap)\n * App shortcut for direct access to file chooser (Android 7.1+)\n * 3rd party equalizer / audio processing support (e.g. [Wavelet](https://github.com/Pittvandewitt/Wavelet))\n * Media Session and Audio Focus support\n * Pause playback when disconnecting headphones\n * No ads, tracking or excessive permissions\n\nSome advanced features can be enabled or configured in settings. To access it, long press the ⚙️ gear icon. (Alternatively, you can also enter this settings from App info screen.)\n\n * Default audio tracks. Set specific language, prefer device language, media file defaults.\n * File access mode. Use of Storage Access Framework / MediaStore / legacy file access.\n * Decoder priority. Prefer device or app decoders.\n * Auto frame rate matching. (On Android 11+ and \"compatible\" displays, ExoPlayer supports [seamless refresh rate switching](https://source.android.com/devices/graphics/multiple-refresh-rate))\n * [Tunneled playback](https://medium.com/google-exoplayer/tunneled-video-playback-in-exoplayer-84f084a8094d). Enabling tunneling can improve playback of 4K/HDR content on Android TV.\n * Playback of Dolby Vision profile 7 (UHD Blu-ray) as HDR HEVC\n * Auto picture-in-picture. When you leave Just Player through the home button and video is playing, PiP will be activated automatically.\n * Skip silence\n * Repeat toggle\n\n**`WRITE_SETTINGS` (\"Modify system settings\") permission**: When the system file chooser is opened, it will always use current system orientation, even if the Player app sets its own. Granting this permission via adb (`adb shell pm grant com.brouken.player android.permission.WRITE_SETTINGS`) or App info screen will allow this app to temporarily enable Auto-rotate to at least partially mitigate [this imperfection](https://issuetracker.google.com/issues/141968218).\n\nDonate: [PayPal](https://paypal.me/MarcelDopita) | [Bitcoin](https://live.blockcypher.com/btc/address/bc1q9u2ezgsnug995fv0m4vaxa90ujjwlucp78w4n0) | [Litecoin](https://live.blockcypher.com/ltc/address/LLZ3fULGwxbs6W9Vf7gtu1EjZvviCka7zP)\n\nTranslate: [Weblate](https://hosted.weblate.org/engage/just-player/)\n\n## Download\n\n[\u003cimg src=\"https://play.google.com/intl/en_us/badges/static/images/badges/en_badge_web_generic.png\" alt=\"Get it on Google Play\" height=\"75\"\u003e](https://play.google.com/store/apps/details?id=com.brouken.player)\n[\u003cimg src=\"https://fdroid.gitlab.io/artwork/badge/get-it-on.png\" alt=\"Get it on F-Droid\" height=\"75\"\u003e](https://f-droid.org/packages/com.brouken.player/)\n[\u003cimg src=\"https://accrescent.app/badges/get-it-on.png\" alt=\"Get it on Accrescent\" height=\"75\"\u003e](https://accrescent.app/app/com.brouken.player)\n[\u003cimg src=\"https://brouken.com/img/get-it-on-obtainium.png\" alt=\"Get it on Obtainium\" height=\"75\"\u003e](http://apps.obtainium.imranr.dev/redirect.html?r=obtainium://add/https://github.com/moneytoo/Player)\n[\u003cimg src=\"https://raw.githubusercontent.com/andOTP/andOTP/master/assets/badges/get-it-on-github.png\" alt=\"Get it on GitHub\" height=\"75\"\u003e](https://github.com/moneytoo/Player/releases/latest)\n[\u003cimg src=\"https://brouken.com/img/galaxy-store.png\" alt=\"Available on Galaxy Store\" height=\"75\"\u003e](https://galaxystore.samsung.com/detail/com.brouken.player)\n[\u003cimg src=\"https://brouken.com/img/huawei-appgallery.png\" alt=\"Explore it on AppGallery\" height=\"75\"\u003e](https://appgallery.cloud.huawei.com/ag/n/app/C104147921)\n[\u003cimg src=\"https://brouken.com/img/get-it-on-mi_app_mall.png\" alt=\"Get it on Mi App Mall\" height=\"75\"\u003e](https://global.app.mi.com/details?id=com.brouken.player)\n[\u003cimg src=\"https://brouken.com/img/get-it-on-aptoide.png\" alt=\"Get it on Aptoide\" height=\"75\"\u003e](https://just-player-marcel-dopita.en.aptoide.com/app)\n[\u003cimg src=\"https://brouken.com/img/get-it-on-amazon.png\" alt=\"available at amazon\" height=\"75\"\u003e](https://www.amazon.com/gp/product/B091N8TTJH)\n\nOther links/channels: application thread on [XDA Developers](https://forum.xda-developers.com/t/app-5-0-just-video-player-no-bluetooth-lag-exoplayer-ffmpeg-audio-codecs.4189183/), subreddit on [reddit](https://www.reddit.com/r/JustPlayer/), entry on [AlternativeTo](https://alternativeto.net/software/just-video-player/about/), git mirror on [GitLab](https://gitlab.com/moneytoo/Player)\n\n## ❓FAQ\n\n### How do I open subtitle file (e.g. .srt)?\n\nTo 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.\n\n💡📺 Because of [limitations on Android TV](https://github.com/moneytoo/Player/issues/248#issuecomment-1019565204), Just Player is also able to open subtitle files from external file managers. You can open video file from your file manager, then return back and also  open subtitle file in Just Player. Subtitle will be available in the last selected video.\n\nJust Player is also able to detect some subtitle files when accessing videos over HTTP/HTTPS. Just use the [same naming](https://github.com/moneytoo/Player/issues/173) for video files as well as subtitles (e.g. `video.mkv` and `video.srt`).\n\n### How do I change subtitle font, size or color?\n\nOpen system [Caption preferences](https://support.google.com/accessibility/android/answer/6006554) on your device (usually in the _Accessibility_ section of _Settings_) and you will be able to fully customize the subtitle style.\n\nTo quickly access the system _Caption preferences_ screen, long tap the subtitle button.\n\n\u003cimg src=\"https://raw.githubusercontent.com/moneytoo/Player/master/fastlane/metadata/android/en-US/images/readmeScreenshots/caption_preferences_1.png\" width=\"140\"\u003e \u003cimg src=\"https://raw.githubusercontent.com/moneytoo/Player/master/fastlane/metadata/android/en-US/images/readmeScreenshots/caption_preferences_2.png\" width=\"140\"\u003e\n\n### Are there any media formats it CANNOT play?\n\nUnfortunately, upstream ExoPlayer doesn't handle some older formats like ~~[AVI container](https://github.com/google/ExoPlayer/issues/2092)~~, WMV or [Theora](https://github.com/google/ExoPlayer/issues/4970). Majority of devices also cannot handle [10-bit AVC](https://github.com/moneytoo/Player/issues/87#issuecomment-816228143).\n\nJust Player focuses on playing videos so audio only playback isn't officialy supported ([request](https://github.com/moneytoo/Player/issues/55)).\n\n### How to view detailed video information (like resolution, bitrate etc.)?\n\nInstall app like [MediaInfo](https://play.google.com/store/apps/details?id=net.mediaarea.mediainfo) (or APK from [MediaArea.net](https://mediaarea.net/en/MediaInfo/Download/Android)). Then, to quickly open MediaInfo from Just Player, long press the video name/title.\n\n### I prefer using media library instead of a file chooser...\n\nJust Player uses system file chooser which already allows two different browsing modes: \n\n1. **Videos** - listing only device directories that contain videos\n\n    \u003cimg src=\"https://raw.githubusercontent.com/moneytoo/Player/master/fastlane/metadata/android/en-US/images/readmeScreenshots/files_1.png\" width=\"280\"\u003e\n\n2. **File browser** - full navigation in the device file system structure\n\n    \u003cimg src=\"https://raw.githubusercontent.com/moneytoo/Player/master/fastlane/metadata/android/en-US/images/readmeScreenshots/files_2.png\" width=\"280\"\u003e\n\nAlternatively, some people choose to use the media library function of\n[Nova Video Player](https://github.com/nova-video-player/aos-AVP) and integrate it with Just Player by enabling \"*Allow using another video player*\" feature. This also gives you convenient access to content on network storages (SMB, UPnP, FTP and SFTP).\n\n### How to access videos on network storages (SMB, WebDAV, SFTP, etc.)?\n\n1. The default system file chooser allows access to any remote storage using appropriate _Document Provider_. I highly recommend [CIFS Documents Provider](https://github.com/wa2c/cifs-documents-provider) for accessing Samba shares. There are also providers like [WebDAV Provider](https://github.com/alexbakker/webdav-provider)/[DAVx⁵](https://github.com/bitfireAT/davx5-ose) (WebDAV), [FileManagerUtils](https://github.com/rikyiso01/FileManagerUtils) (SFTP) and [rcx](https://github.com/x0b/rcx). Sadly, Document providers are not supported on Android TV.\n\n2. Open video directly from your favorite file explorer. _Solid Explorer_ works really well, especially if you also want to automatically load subtitles.\n\n### How do I open a streaming link, where do I enter an url?\n\nJust Player does not have any UI to enter internet addresses, but it is registered for handling all compatible streaming links. When opening/tapping links in other apps, Just Player should be generally offered as an option. (Though this may not work in all situations, especially on Android 12+.)\n\nAlternatively, select the text url in the source app, choose _Share_ and find Just Player to play it.\n\n### How to zoom in to get rid of black bars?\n\nIf your device has a touchscreen you can use the pinch-to-zoom gesture or just tap the Resize button for a Crop. **Android TV**: Long tap the Resize button to enter Zoom mode. Then use Up and Down keys for precise zoom.\n\n### What to do if Bluetooth audio is not in sync with video?\n\nJust pause and resume playback once again.\n\n## Other open source Android video players\n\nHere's a comparison table presenting all available and significant open source video players for Android I was able to find. Just Player is something like ~~80%~~ 90% feature complete. It will probably never have dozens of options or some rich media library UI. It will never truly compete with feature rich VLC. It just attempts to provide functional feature set and motive others to create greater players based on amazing ExoPlayer.\n\n| App name (source)                                                 | Media engine                                                                                                                                                            |\n| ----------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------- |\n| [Fermata Media Player](https://github.com/AndreyPavlenko/Fermata) | [MediaPlayer](https://developer.android.com/guide/topics/media/mediaplayer), [ExoPlayer](https://exoplayer.dev/) and [libVLC](https://www.videolan.org/vlc/libvlc.html) |\n| [Just (Video) Player](https://github.com/moneytoo/Player)         | [ExoPlayer](https://exoplayer.dev/)                                                                                                                                     |\n| [Kodi](https://github.com/xbmc/xbmc)                              | ?                                                                                                                                                                       |\n| [mpv](https://github.com/mpv-android/mpv-android)                 | [libmpv](https://github.com/mpv-player/mpv)                                                                                                                             |\n| [mpvKt](https://github.com/abdallahmehiz/mpvKt)                   | [libmpv](https://github.com/mpv-player/mpv)                                                                                                                             |\n| [Next Player](https://github.com/anilbeesetti/nextplayer)         | [ExoPlayer](https://exoplayer.dev/)                                                                                                                                     |\n| [Nova Video Player](https://github.com/nova-video-player/aos-AVP) | MediaPlayer                                                                                                                                                             |\n| [VLC](https://code.videolan.org/videolan/vlc-android)             | [libVLC](https://www.videolan.org/vlc/libvlc.html)                                                                                                                      |\n\nTo find other video players (including non-FOSS), check out [a list on IzzyOnDroid](https://android.izzysoft.de/applists/category/named/multimedia_video_player) or my list of [awesome F-Droid apps](https://github.com/moneytoo/awesome-fdroid).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmoneytoo%2Fplayer","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmoneytoo%2Fplayer","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmoneytoo%2Fplayer/lists"}