{"id":50684183,"url":"https://github.com/ales-drnz/mpv_studio","last_synced_at":"2026-06-08T21:02:35.646Z","repository":{"id":362610942,"uuid":"1253797664","full_name":"ales-drnz/mpv_studio","owner":"ales-drnz","description":"MPV Studio is the standalone reference client for the mpv_audio_kit engine: a cross-platform audio player with a full DSP rack, real-time visualizers, Jellyfin, Plex and Samba streaming, and a built-in mpv command console.","archived":false,"fork":false,"pushed_at":"2026-06-05T03:43:15.000Z","size":6687,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-06-05T05:13:56.042Z","etag":null,"topics":["jellyfin","libmpv","mpv","plex","samba","streaming"],"latest_commit_sha":null,"homepage":"","language":"Dart","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ales-drnz.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":null,"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,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2026-05-29T20:31:46.000Z","updated_at":"2026-06-05T03:43:19.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/ales-drnz/mpv_studio","commit_stats":null,"previous_names":["ales-drnz/mpv_studio"],"tags_count":null,"template":false,"template_full_name":null,"purl":"pkg:github/ales-drnz/mpv_studio","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ales-drnz%2Fmpv_studio","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ales-drnz%2Fmpv_studio/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ales-drnz%2Fmpv_studio/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ales-drnz%2Fmpv_studio/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ales-drnz","download_url":"https://codeload.github.com/ales-drnz/mpv_studio/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ales-drnz%2Fmpv_studio/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":34080026,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-06-08T02:00:07.615Z","response_time":111,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"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":["jellyfin","libmpv","mpv","plex","samba","streaming"],"created_at":"2026-06-08T21:02:34.835Z","updated_at":"2026-06-08T21:02:35.641Z","avatar_url":"https://github.com/ales-drnz.png","language":"Dart","funding_links":["https://www.patreon.com/cw/ales_drnz","https://www.buymeacoffee.com/ales.drnz"],"categories":[],"sub_categories":[],"readme":"# MPV Studio\n\n#### Cross-platform audio player built on mpv_audio_kit.\n\n[![](https://img.shields.io/badge/built%20with-mpv__audio__kit-orange.svg?style=for-the-badge)](https://pub.dev/packages/mpv_audio_kit)\n[![](https://img.shields.io/badge/Flutter-3.27+-blue.svg?style=for-the-badge\u0026logo=flutter\u0026logoColor=white)](https://flutter.dev)\n[![](https://img.shields.io/github/stars/ales-drnz/mpv_studio?style=for-the-badge\u0026logo=github\u0026logoColor=white)](https://github.com/ales-drnz/mpv_studio)\n[![](https://img.shields.io/discord/1485588004029333516?style=for-the-badge\u0026logo=discord\u0026logoColor=white)](https://discord.gg/g2Qf4Mq9MP)\n[![](https://img.shields.io/badge/Patreon-F96854?style=for-the-badge\u0026logo=patreon\u0026logoColor=white)](https://www.patreon.com/cw/ales_drnz)\n[![](https://img.shields.io/badge/Buy%20Me%20a%20Coffee-FFDD00?style=for-the-badge\u0026logo=buy-me-a-coffee\u0026logoColor=black)](https://www.buymeacoffee.com/ales.drnz)\n\n\u003ctable\u003e\n\u003ctr\u003e\n\u003ctd valign=\"middle\" width=\"90\"\u003e\u003cimg src=\"https://raw.githubusercontent.com/ales-drnz/mpv_studio/main/assets/mpv_studio.png\" width=\"70\" alt=\"logo\"\u003e\u003c/td\u003e\n\u003ctd valign=\"middle\"\u003e\u003cb\u003eMPV Studio\u003c/b\u003e is the standalone reference client for the \u003ca href=\"https://pub.dev/packages/mpv_audio_kit\"\u003e\u003ccode\u003empv_audio_kit\u003c/code\u003e\u003c/a\u003e engine: a cross-platform audio player with a full DSP rack, real-time visualizers, Jellyfin, Plex and Samba streaming, and a built-in mpv command console.\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/table\u003e\n\n---\n\n## Platforms\n\n| Platform  | Minimum | Architectures |\n| :--- | :--- | :--- |\n| **Android** | 7.0 (SDK 24) | arm64-v8a, armeabi-v7a, x86_64 |\n| **iOS** | 15.0 | arm64, x86_64 |\n| **macOS** | 12.0 | arm64, x86_64 |\n| **Windows**| 10 | arm64, x86_64 |\n| **Linux** | Ubuntu 24.04 | aarch64, x86_64 |\n\n---\n\n## Contents\n\n*   [Guide](#guide)\n    \u003cdetails\u003e\n    \u003csummary\u003e\u003ca href=\"#1-playback\"\u003e\u003cb\u003e1. Playback\u003c/b\u003e\u003c/a\u003e\u003c/summary\u003e\n\n    * [1.1 Now playing](#11-now-playing)\n    * [1.2 Visualizers](#12-visualizers)\n\n    \u003c/details\u003e\n\n    \u003cdetails\u003e\n    \u003csummary\u003e\u003ca href=\"#2-queue\"\u003e\u003cb\u003e2. Queue\u003c/b\u003e\u003c/a\u003e\u003c/summary\u003e\n    \u003c/details\u003e\n\n    \u003cdetails\u003e\n    \u003csummary\u003e\u003ca href=\"#3-stream\"\u003e\u003cb\u003e3. Stream\u003c/b\u003e\u003c/a\u003e\u003c/summary\u003e\n\n    * [3.1 Jellyfin](#31-jellyfin)\n    * [3.2 Plex](#32-plex)\n\n    \u003c/details\u003e\n\n    \u003cdetails\u003e\n    \u003csummary\u003e\u003ca href=\"#4-effects\"\u003e\u003cb\u003e4. Effects\u003c/b\u003e\u003c/a\u003e\u003c/summary\u003e\n\n    * [4.1 The DSP rack](#41-the-dsp-rack)\n    * [4.2 Interactive controls](#42-interactive-controls)\n\n    \u003c/details\u003e\n\n    \u003cdetails\u003e\n    \u003csummary\u003e\u003ca href=\"#5-settings\"\u003e\u003cb\u003e5. Settings\u003c/b\u003e\u003c/a\u003e\u003c/summary\u003e\n    \u003c/details\u003e\n\n    \u003cdetails\u003e\n    \u003csummary\u003e\u003ca href=\"#6-console\"\u003e\u003cb\u003e6. Console\u003c/b\u003e\u003c/a\u003e\u003c/summary\u003e\n    \u003c/details\u003e\n\n    \u003cdetails\u003e\n    \u003csummary\u003e\u003ca href=\"#7-building-from-source\"\u003e\u003cb\u003e7. Building from source\u003c/b\u003e\u003c/a\u003e\u003c/summary\u003e\n\n    * [7.1 Requirements](#71-requirements)\n    * [7.2 Run](#72-run)\n\n    \u003c/details\u003e\n*   [Project background](#project-background)\n\n---\n\n## Guide\n\n### 1. Playback\n\n\u003cp align=\"center\"\u003e\n  \u003cimg src=\"https://raw.githubusercontent.com/ales-drnz/mpv_studio/main/imgs/playback.gif\" width=\"100%\"\u003e\n\u003c/p\u003e\n\nThe home screen: cover art, metadata and transport bound to mpv_audio_kit's play-pause **intent**, so the controls never flicker while you scrub.\n\n\n#### 1.1 Now playing\n\nCover art, track info, a scrubbable seekbar, and a volume control, driven entirely by the engine's reactive streams.\n\n#### 1.2 Visualizers\n\nThree real-time meters fed by mpv_audio_kit's FFT and PCM streams: a log-spaced **spectrum** curve, a **VU** meter, and a progressive **waveform** seekbar that fills in as network tracks decode.\n\n---\n\n### 2. Queue\n\n\u003cp align=\"center\"\u003e\n  \u003cimg src=\"https://raw.githubusercontent.com/ales-drnz/mpv_studio/main/imgs/queue.gif\" width=\"100%\"\u003e\n\u003c/p\u003e\n\nA reorderable playlist with drag-and-drop, gapless transitions, and a determinate prefetch indicator for the next track.\n\n---\n\n### 3. Stream\n\n\u003cp align=\"center\"\u003e\n  \u003cimg src=\"https://raw.githubusercontent.com/ales-drnz/mpv_studio/main/imgs/stream.gif\" width=\"100%\"\u003e\n\u003c/p\u003e\n\nBrowse and play from self-hosted media servers. Each library tab pages lazily as you scroll.\n\n#### 3.1 Jellyfin\n\nConnects to a Jellyfin server and streams its libraries directly (HLS), seeking through transcoded sources.\n\n#### 3.2 Plex\n\nResolves Plex transcode URLs lazily through an `on_load` hook and a `/decision` session manager, and reports playback progress back to the server.\n\n---\n\n### 4. Effects\n\n\u003cp align=\"center\"\u003e\n  \u003cimg src=\"https://raw.githubusercontent.com/ales-drnz/mpv_studio/main/imgs/effects.gif\" width=\"100%\"\u003e\n\u003c/p\u003e\n\nA live DSP rack on top of mpv_audio_kit's `AudioEffects` bundle: toggle and tune effects and hear the change immediately.\n\n#### 4.1 The DSP rack\n\n18-band graphic EQ, compressor, loudness normalization, headphone crossfeed, crystalizer, stereo tools, bass and treble, and more.\n\n#### 4.2 Interactive controls\n\nEach effect renders its own live diagram (a compressor curve, a frequency response curve, a crossfeed diagram, a stereo scope, a loudness gauge), driven by per-filter PCM taps so the visualization tracks the actual signal.\n\n---\n\n### 5. Settings\n\n\u003cp align=\"center\"\u003e\n  \u003cimg src=\"https://raw.githubusercontent.com/ales-drnz/mpv_studio/main/imgs/settings.gif\" width=\"100%\"\u003e\n\u003c/p\u003e\n\nEvery mpv subsystem grouped into one screen: audio engine and output, audio track, A-B loop, chapters, demuxer cache, hooks, OS media session, and streaming. Choices persist across launches.\n\n---\n\n### 6. Console\n\n\u003cp align=\"center\"\u003e\n  \u003cimg src=\"https://raw.githubusercontent.com/ales-drnz/mpv_studio/main/imgs/console.gif\" width=\"100%\"\u003e\n\u003c/p\u003e\n\nA built-in mpv command console with a command catalog, autocomplete suggestions, and the live engine log, captured from boot, so it's never empty when you open it.\n\n---\n\n### 7. Building from source\n\n#### 7.1 Requirements\n\n- **Flutter** 3.27 or newer (Dart `^3.6.0`).\n- The native toolchain for your target platform (Xcode for Apple, Android SDK and NDK for Android, the desktop build tools for Linux and Windows).\n\n#### 7.2 Run\n\n```bash\nflutter pub get\nflutter run -d macos        # or windows, linux, \u003candroid-device\u003e, \u003cios-device\u003e\n```\n\nTo build a release artifact, use the standard `flutter build \u003cplatform\u003e`.\n\n---\n\n## Project background\n\nThe app was implemented through the use of Claude Code.\n\n---\n\n*Developed by Alessandro Di Ronza*\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fales-drnz%2Fmpv_studio","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fales-drnz%2Fmpv_studio","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fales-drnz%2Fmpv_studio/lists"}