From f3eb427ac39aabe971585259c65fbbb92b901f41 Mon Sep 17 00:00:00 2001 From: Mikhail Nevskiy Date: Thu, 23 Apr 2026 15:02:01 +0300 Subject: [PATCH] docs(yandex): Media Types, My Wave / Wave Modes / My Presets, Device Flow auth MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Brings the Yandex Music source page in line with ma-provider-yandex-music v3.4.0 (https://github.com/trudenboy/ma-provider-yandex-music, shipped via music-assistant/server#3606): - Media Types adds Podcasts and Audiobooks (v3.1–v3.3 landed those library types with library sync, browse, streaming and in v3.3 cross-device resume-point sync for audiobooks). - Login Method now Device Flow / QR Code / Token (v3.0 added Device Flow and QR; the old single-token path stays as advanced). - Other section calls out the v3.4 rotor-session work: long-lived My Wave session, the 11 one-click Wave Modes, user-defined My Presets, and the behaviour where Radio Mode continues the active wave instead of branching. - Configuration section rewritten around the three auth methods. - Settings lists the new 'Remember session' toggle and the wave presets builder. - Known Issues notes that Yandex Listening History is only written from an Ynison WebSocket session, so regular MA playback isn't visible there without the companion plugin — avoids the FAQ that kept coming up during v3.4 rollout. --- .../docs/music-providers/yandex-music.md | 37 +++++++++++++++---- 1 file changed, 30 insertions(+), 7 deletions(-) diff --git a/src/content/docs/music-providers/yandex-music.md b/src/content/docs/music-providers/yandex-music.md index 6c1e83ae2..f6f659d05 100644 --- a/src/content/docs/music-providers/yandex-music.md +++ b/src/content/docs/music-providers/yandex-music.md @@ -24,12 +24,12 @@ This source is built on top of the [yandex-music-api](https://github.com/Marshal | | | |:-----------------------|:---------------------:| | Self-Hosted Local Media | No | -| Media Types Supported | Artists, Albums, Tracks, Playlists | +| Media Types Supported | Artists, Albums, Tracks, Playlists, Podcasts, Audiobooks | | [Recommendations](/ui/#view---discover) Supported | Yes | | Lyrics Supported | Yes | | [Radio Mode](/ui/#track-menu) | Yes | | Maximum Stream Quality | Lossless FLAC (with Plus subscription) | -| Login Method | Token | +| Login Method | Device Flow / QR Code / Token | ### Other @@ -39,27 +39,50 @@ This source is built on top of the [yandex-music-api](https://github.com/Marshal - Browse is available to explore the Yandex Music catalogue - Lyrics are displayed when available (synced line-by-line when provided by the service, otherwise plain text) - Personalized recommendations (My Wave, Made for You, Chart, New Releases and more) appear in the Recommendations section on the Home screen -- Similar tracks are available from the track context menu (used by Radio Mode) +- **My Wave** personalised radio with Yandex's long-lived rotor session (signals like/dislike, skips and full plays back to the recommendation algorithm) +- **Wave Modes** — 11 one-click presets for My Wave (Discover / Favorites / Popular, Calm / Active / Fun / Sad, Russian / Non-Russian / Without Words) +- **My Presets** — save your own named combinations of diversity, mood and language, re-launch them from Browse without fiddling with settings +- Similar tracks are available from the track context menu (used by Radio Mode); when a wave track plays, Radio Mode continues the same Yandex-curated session instead of branching into an unrelated similar-tracks stream +- **Podcasts** are synced from your Yandex library, browsable with episodes, and stream natively +- **Audiobooks** are synced, browsable with chapters, and stream natively. Playback position round-trips between Music Assistant and Yandex's own apps, so resume points stay in sync - Multiple Yandex Music accounts can be added simultaneously ## Configuration -Configuration requires obtaining an OAuth token from Yandex Music. +The source supports three authentication methods. Device Flow is the recommended path — it's non-interactive, works on headless setups, and produces refreshable credentials. -### Obtaining the Token +### Option 1: Device Flow (recommended) + +1. In Music Assistant, add the Yandex Music source and click **Login with device code** +2. A short verification URL and user code appear — open the URL on any device (phone, another computer) and enter the code +3. Approve the request in your Yandex account +4. Music Assistant receives the tokens automatically and finishes setup. Session tokens auto-refresh — no periodic re-login required. + +### Option 2: QR Code + +1. In Music Assistant, add the Yandex Music source and click **Login with QR code** +2. Scan the QR with the Yandex app on your phone (signed into the account you want) +3. Approve in the app — Music Assistant picks up the credentials + +### Option 3: Manual OAuth Token (advanced) + +For headless setups where neither device flow nor QR works: 1. Open your browser and navigate to [Yandex OAuth](https://oauth.yandex.ru/authorize?response_type=token&client_id=23cabbbdc6cd418abb4b39c32c41195d) 2. Log in with your Yandex account if prompted 3. After authorization, you will be redirected to a URL containing `access_token=YOUR_TOKEN` 4. Copy the token value (the part after `access_token=` and before `&`) -5. Paste this token into the Music Assistant Yandex Music source configuration +5. Paste this token into the Music Assistant Yandex Music source configuration (under advanced settings) ### Settings - **Audio quality**: Select preferred audio quality. Options: `Efficient (AAC ~64 kbps)`, `Balanced (AAC ~192 kbps)` (default), `High (MP3 320 kbps)`, `Lossless (FLAC)` (requires Yandex Music Plus subscription) +- **Remember session**: keeps the refresh token so tokens renew automatically (on by default for Device Flow / QR) +- **My Wave custom presets**: advanced-settings builder for saving named wave combinations (name + up to three dropdowns). Saved entries surface under **Radio → My Presets** in Browse ## Known Issues / Notes -- The token may expire and need to be refreshed periodically +- Manually-obtained OAuth tokens expire and need to be refreshed periodically; Device Flow / QR setups auto-refresh - Lossless FLAC quality requires an active Yandex Music Plus subscription; without it the source falls back to the highest available quality - Lossless FLAC streams are fetched in 4 MB windows to work around Yandex CDN per-connection limits, ensuring uninterrupted playback for tracks of any length +- Tracks played through Music Assistant currently **do not** appear in the Yandex Listening History feed — that feed is only written from an active Ynison WebSocket session. If you need Yandex-side history, play through the native Yandex app (or the companion [Yandex Music Connect (Ynison)](https://music-assistant.io/plugins/yandex-ynison/) plugin)