## 📝 Beta Release Notes
## V12.1-beta2
### New
- **DX340MAX: Special Tuning › AMP19 Tube** — a new Infinity DSP preset that voices the DX340MAX after a DX340 with the AMP19 card in Tube mode (Korg Nutube 6P1), tuned by ear against a real AMP19: warmer, fuller vocals that carry further, bigger instrument images, more body in the lower mids and clearer bass. Find it next to Tube / Vinyl in Now Playing's Infinity DSP, Pure and Android mode. While it is on, Tube, Vinyl, Chassis and Crossfeed show "Paused" and come back as they were when you switch it off; turning one of them on switches Special Tuning off. Best with Harmonic Velvet · Infinity FPGA Original · Infinity Stage Theatre.

## V12.1-beta1
### New
- **Infinity DSP: Ear Match** — a 3-minute test with your IEM: centre a soft noise in 10 bands (250 Hz–16 kHz), and the side you hear louder is turned down in those bands only (never boosted), with a linear-phase filter so both ears stay in time. One result per IEM, strength 0–100 %. Pure and Android mode wherever Tube / Vinyl work. Your results stay on this DAP — not in Listening Profiles, never uploaded or backed up.
- **Infinity DSP: DSD → PCM** — converts DSD64–DSD512 to hi-res PCM so Tube, Vinyl, Chassis, Crossfeed, Ear Match and the visualizer work on DSD (Pure: 352.8 kHz, 384 kHz for 48 kHz-family DSD). DSD Remaster turns off while it is on; EQ / PEQ still skip DSD. Off = native DSD, bit-perfect.
- **Add to Playlist from any track's ⋮ menu.**
- **Playlists: sort the tracks** by Playlist Order, A-Z or By Artist (view only).
### Fixes
- **Shuffle: songs play to the very end** — the last ~0.3 s of each track was cut at every non-gapless change (shuffle, gapless off, a change of format), 1–2 s with HRR. The pause between songs is about half a second longer. Gapless playback was not affected.
- **Playlists: drag to reorder with a normal press** — no long press first.
- **Library: A-Z is the same order on every list**, Qobuz / Tidal tracks saved to the Library included.
- **Tidal: no more `[wimpLink …]` tags** in artist biographies and playlist descriptions.
- **DX340: music starts ~20 s sooner after a reboot**; a play refused during that wait no longer leaves the Play button showing "playing" (and no longer opens the DAC early on DX340MAX in Android mode).
- **Qobuz / Tidal: the Now Playing heart shows the real state** — before you opened the Qobuz / Tidal tab, a double tap could un-love the track.
- **32-bit FLAC scans and plays** bit-perfect, with seeking and gapless — it used to stop the media scan, freeze the DAP or crash the app. ReplayGain analysis skips these files for now.
- **Mango OS: root and the Anantar module stay on** after two Mango OS starts in a row, and a restart inside Mango OS is now set up as Mango (ext4 microSD mounts).
- **Infinity DSP: a tap on an empty spot no longer opens the setting underneath.**
- **Infinity Pure: the microSD library comes back on its own** after Android restarts in the background (no more "No music found" until a reboot).
- **Now Playing: SACD ISO shows its DSD rate** ("ISO DSD64").
- **Android mode: native DSD no longer turns into loud noise** with Tube, Vinyl, Chassis, Crossfeed or Ear Match on.
- **48 kHz-family DSD shows the right badge** — DSD512, not "DSD557".

## V12.0-beta21
### New
- **Infinity DSP: a "Vivid" level for Tube and Vinyl, and a Chassis Presence setting** — the existing levels are tuned on high-end gear and can be hard to make out on modest headphones. Vivid keeps each effect's character and adds the low harmonics you actually hear at normal listening levels: Tube Intensity › Vivid (SET tubes add 2nd-harmonic warmth, push-pull tubes a 3rd-harmonic bite that compresses on peaks), Vinyl › Analog Harmonics › Vivid (broadband warmth on top of the cartridge model), and Chassis › Chassis Presence (Strict / Natural / Dramatic / Vivid — the material's ring and bleed, now adjustable). Lush, Rich and the previous chassis sound are unchanged.
- **Community: each shared profile shows its upload date, and a Mine chip lists only what you shared from this DAP.**
### Fixes
- **Big libraries: the app no longer runs out of memory after being reopened a few times** — every time the main screen was rebuilt (tapping the Dynamic Range / Normalization notification, swiping the app away from Recents while music kept playing, …) the old screen stayed in memory with a full copy of the song list. With 70,000+ songs that was about 70 MB per reopen, and the app crashed on the third. Reported with a 76,000-song library.
- **Radio: loud white noise in the left channel in Android mode** — with Tube / Vinyl / Chassis / Crossfeed on, a station's 16-bit audio was processed with the previous track's 24-bit layout, on every station, until something else was played. The effects now take the real format from the decoder. The same fix removes the short buzz at the start of some Tidal tracks (a track tagged HiRes that actually streams 16-bit, mostly when it followed another track gaplessly).
- **Infinity Pure: scrolling is as smooth as in Android mode** — the guard that keeps other apps from taking over the screen made every screen do extra accessibility work on each frame (about 2 ms per frame on DX340MAX). It still does its job, without that cost.
- **Battery percentages in the top bar could freeze until a restart** — D and A only moved when the system announced a change, and that announcement can stop coming (seen on a DX340 with the amp card fed from the DAP's own USB-C). The numbers are now also re-read from the battery gauge every few seconds while the screen is on.
- **DX320 / DX320MAX: a Listening Profile shared from a DX340 could switch on HRR or DSD Remaster** — neither exists on these models, and in Infinity Pure the player then went silent until the next reboot. Community downloads and profile apply now skip those two settings on models that don't have them.
- **Listening Profiles: the "Applying…" spinner read "Applying %s"** instead of the profile's name (most visible on profiles that reboot).
- **A crash no longer leaves a black, unresponsive screen in Infinity Pure** — the app used to stay dead in the background after a crash until a reboot; it now closes and comes straight back.
- **Rare crash right after launch** — some of the app's shared state was being created from a background task while the first screen was still drawing. Seen on DX320; now created up front.
- **DX320 / DX320MAX: smoother scrolling and quicker taps while music plays** — the big CPU cores now run at 1.96 GHz instead of 1.4 GHz while the screen is on (Library scrolling: janky frames 69 % → 58 %, worst frames 44 → 32 ms). About 8 % more current while playing with the screen on; nothing changes with the screen off.

## V12.0-beta20
### New
- **DX180: every Infinity DSP effect now works in Infinity Pure** — Tube, Vinyl, Chassis, Crossfeed, Invert Phase, the VU / Vinyl meter, DSD Remaster and HRR, just like on DX340. DSD Remaster and HRR are brand new on DX180, so start at a low volume the first time and let us know if you hear any noise or dropouts.
- **DX320 / DX320MAX: Infinity DSP effects now work in Infinity Pure** — Tube, Vinyl, Chassis, Crossfeed, Invert Phase and the VU / Vinyl meter. With every effect off, the sound is exactly the same as before. DSD Remaster and HRR are not available on these models.
- **The battery letters now tell you if the battery is really charging** — with the cable in, D and A are green while the battery charges and light blue when it doesn't (already full, stopped at the 80 % limit, or the charger is too weak). On DX340, DX340MAX and DX270; other models stay green whenever the cable is in.
### Fixes
- **Playing from Favourites showed "love_playlist" in Now Playing** — it now says "Favourites".

## V12.0-beta19
### New
- **Remove a track from your own Qobuz / Tidal playlist** — ⋮ › Remove from this Playlist on the playlist page.
### Fixes
- **DX320MAX / DX320: playback works again in Infinity Pure** — since beta18, playing a song right after a reboot could stall and the player stopped responding. Pure mode now reliably gets access to the DAC at boot.
- **Infinity Pure on DX320 / DX320MAX / DX180: playback gets real-time priority again** — since V11.0 the thread that feeds the DAC ran at normal priority, because the boost looked for a thread name the app no longer uses. DX340 / DX340MAX / DX270 / DX260MK2 were not affected.
- **Tidal / Qobuz: Add to Playlist in Now Playing lists your existing playlists** — only playlists already in the Library (or just created) showed up, so the ones under My Music › My Playlists were missing and search couldn't find them. "Create new playlist" there now creates it on Tidal / Qobuz instead of a local playlist.
- **Qobuz: track titles show their version** — "(2002 Remaster)", "(Radio Edit)", remix names, as in the Qobuz apps, so remix albums no longer list the same title over and over. Tracks already saved in the Library keep their old title until saved again.
- **Qobuz playlists show their owner** — your playlists say "BY <your name>" instead of "BY QOBUZ".
- **Track counts update right after adding to a Qobuz / Tidal playlist** — a new playlist showed 0 tracks.
- **Normalization: loved Qobuz / Tidal tracks no longer stay in the list** — they showed as missing ReplayGain and Run All could never clear them; streamed tracks are now left out.

## V12.0-beta18
### New
- **New splash screen** — the gold ∞ logo and Infinity Player wordmark on every DAP. Android 12+ adds a short shine; Android 11 (DX320) gets the logo instead of a black screen. The app never waits for it.
- **Library: heart filter** — on Albums, Artists and All Songs the heart beside the sort button shows only what you've loved; Play All / Shuffle follow it. Off again on the next launch.
- **Library: flip any sort** — the ⇅ button beside the sort menu reverses the order on every list and inside Year / Language / Genre / Hi-Res pages. The separate "Earliest", "DR low→high" and "By year ↑" entries are gone. Albums / Artists / Favourites remember the direction.
### Fixes
- **Boot animation: true black background** — the frames carried faint grey-blue noise from the GIF source, visible as a dim box on OLED screens. The background is now pure black.
- **Analog / Extreme boot profile: every setting now takes effect** — part of the profile could be silently lost at boot (interrupts not kept off the big cores, profile shown as OFF). Re-applied during this update.
- **Infinity Pure on DX180 / DX320 / DX320MAX / DX260MK2: lower idle CPU and heat** — the task that keeps the DAC device openable polled once a second (7–10 % of a core all day). It now reacts only when the audio device is actually touched; DX320 / DX320MAX keep their screen-off playback guard.

## V12.0-beta17
### Fixes
- **Qobuz / Tidal: no more frozen player after the connection dropped while paused** — the track now ends with "Playback Error" and playback moves on.
- **Status bar: D and A turn green while charging, like stock** — D follows the cable (no more going white at the 80 % charge limit); A now works on DX340 too.
- **Deep sleep: audio tuning and battery** — the interrupt layout is restored on wake instead of sitting on one core until the next play, and the small cores' idle state no longer stays off for the rest of the day after the first sleep.
- **Quieter kernel on every boot profile** — the Qualcomm diagnostics driver is no longer loaded, and the Default profile now drops kernel console/debug logging like Extreme and Analog (CPU and power behaviour stay stock). Applied on this update with one extra reboot; the FPGA mode chosen in the app is applied at the same time, on every profile.

## V12.0-beta16
### Fixes
- **AMP16 / AMP19: one channel no longer stays silent after switching to Tube** — the kernel programs the amp card's analog volume chip a few milliseconds after the tube relay clicks, over a bus with no acknowledge, so a lost write left that channel muted until the next volume change (also on stock firmware). The app now re-sends the volume 0.5 s, 1 s and 2.5 s after the switch, while the output is still muted.

## V12.0-beta15
### New
- **Autoplay for Tidal and Qobuz** — when the queue ends, similar tracks keep playing (like the Tidal app). The next ones are listed under the queue in the Queue page with a switch to turn it off; tap one to jump to it. A track tapped in Tidal or Qobuz search now plays on its own and continues with similar tracks instead of the whole result list.
- **Biography and genres for local artists** — from Last.fm, or TIDAL / Qobuz if signed in. Nothing is stored; nothing is fetched offline.
### Fixes
- **AI mix pages: Play is centred again**, also on Library albums and artists that can't be loved.
- **Now Playing closes with swipe down or Back** as before; the small bar at the top is gone.
- **Infinity Pure: search and Favourites on big libraries** — a search could spin forever and Favourites came back empty; the database now runs as in Android mode.
- **Smoother scrolling in lists with artwork** — Queue page, Library, Home cards and the mini player load row art at row size and no longer reload it mid-scroll.
- **Queue page stays put when you pick a track** — the list no longer jumps back to the top; the labels move to the new track instead.
- **Qobuz albums in the Library play in the right order** — run Qobuz › Sync favorite albums once to fix albums synced before beta13. Tidal albums keep their disc numbers too.
- **AMP16 / AMP19 output stage is spelled out** — Class AB (AMP16) and Class A (AMP19) instead of AB and SA.

## V12.0-beta14
### New
- **Qobuz Radio** — Track, Album and Artist Radio from ⋮, the artist page or Now Playing.
- **Qobuz For You tab** — My Weekly Q, Radio for you, Release Watch, Recently played.
- **Tidal settings in one window**, like Qobuz.
- **Delete your own Qobuz and Tidal playlists** from ⋮.
- **New album, playlist, artist, mix and radio pages** (Library, Qobuz, Tidal) — centred cover on a background tinted from it, Play between Shuffle (Radio where the service has one) and the heart, ⋮ beside it. Track number under the title so titles get the whole line; ⋮ holds Add / Remove from Infinity, the time and "Add to Qobuz / Tidal Playlist". The heart on a playlist puts it in Infinity and loves it there.
- **My Music (Qobuz, Tidal)** — the tabs and sort bar slide away while you scroll down and come back on the first scroll up; Qobuz gets an Artists tab like Tidal.
- **Status bar:** D and A turn green while that battery charges (no more bolt icons), a gold plug shows SuperGain is live, and the Now Playing row uses the full width.
- **Media scan, DR and Normalization show above the mini player** while they run and until you close them.
### Fixes
- **Now Playing shows the right "N / total"** — a tap in All Songs, Singles or any list no longer cuts the queue down to the songs after it, so Shuffle there uses the whole list, and the counter no longer carries over from the previous queue.
- **Your own Qobuz playlists opened from the Library say "My Playlist"**, not "Shared".
- **Library › Playlists › Qobuz tab** is readable on black.
- **Qobuz artist pages** — top tracks, biography, Appears On and similar artists (Qobuz had changed its API), laid out like the Tidal artist page, which gains an Appears On tab.

## V12.0-beta13
### New
- **Qobuz and Tidal My Music** — sort by Recently played, Recently added or A–Z (⇅ flips it), show albums as a grid or a list, and Create Playlist is a + button.
- **Qobuz settings in one window** — account, streaming quality and Log out together.
### Fixes
- **DX320MAX, DX320, DX180:** Infinity Pure no longer stops between songs with the screen off.
- **Home inside Qobuz, Tidal or radio** goes to that page's start. Double-tap for Home.
- **Back closes a Qobuz or Tidal playlist opened from the Library.**
- **Tidal albums and playlists show "In Infinity".**
- **Qobuz albums keep their artist and track order** — no more "Unknown Artist" or "Unknown Album". Remove and re-add albums you added before this update.
- **Adding one song no longer marks its whole album "In Infinity".**
- **Qobuz streams get Vinyl, Tube, Chassis and Crossfeed in Android mode.**
- **Without internet, the queue skips songs that need it** instead of stopping.
- **A song Tidal won't stream fails at once.**

## V12.0-beta12
### New
- **iBasso DX320 support** — install with the DX320 series installer (firmware 2.07). Digital Filter (Sharp / Slow), DSD Filter, PCM DSD Volume Match and AMP Gain Low / Mid / High for your amp card are all there, both batteries (DAC and AMP) show in the status bar, and the DX320 gets its own wallpaper.
- **Infinity Pure on the DX320** — bit-perfect playback and native DSD, also with the screen off. DSD Remaster and HRR are not available on the DX320.
### Please test on the DX320
- Line Out, L/R Balance, and Vinyl / Tube / Chassis / Crossfeed in Android mode have not been listened to on a DX320 yet 

## V12.0-beta11
### New
- **Add a whole album, playlist, mix or radio to a playlist** (Qobuz, Tidal) — ⋮ › Add to Playlist, or make a new one. Songs already in it are skipped, and all your own playlists are listed.
- **Tidal Track Radio and Artist Radio** — from ⋮ on a track, the artist page or Now Playing.
- **Sort Tidal playlists** — the tracks inside, and My Playlists.
- **Home** — AI mixes show a grid of their covers, albums come in a record sleeve, and the dots under the covers are a slider.
### Fixes
- **No noise burst in the left ear** when you skip to a 24-bit track with Vinyl, Tube, Chassis or Crossfeed on.
- **Tidal no longer freezes** after a pause in a track's first seconds.
- **Next and seek in the last seconds of a track** act on the track you hear — local, Tidal and Qobuz.
- **Idle Power Off counts from when you stop using the DAP** — scans and Wi-Fi Transfer are no longer cut off.
- **Radio stations stay out of your library.**
- **Playlists:** adding an album or folder no longer drops songs already in it, new songs go at the end, and removing a song from a Qobuz or Tidal playlist works.
- **Tidal Favorite Tracks shows all your tracks** (it stopped at about 100), and no track is labelled AAC any more.
- **Also:** radio shows the station's bitrate, big folders have a draggable scrollbar, and music without artwork gets a coloured tile.

## V12.0-beta10
### New features
- **Continue to next folder** — turn it on in Settings › General, or with the » button in Folders. When the last track of a folder you play from Folders starts, the next folder is queued, in the order the Folders list shows, and so on folder by folder. Off by default; it does nothing in shuffle or repeat-one.
### Fixes
- **Next near the end of a track skips one track, not two.** With gapless, the next track is lined up about 5 seconds before the end, and a press in that moment used to count from it. Previous there now restarts the track you hear.
- **The always-on display shows the right "Next:"** after tracks are added to the end of the queue.
### Radio
- **New built-in stations** — 81 stations a listener put together: NTS and its infinite mixtapes, Rinse, Intergalactic FM, all of SomaFM, and independent stations like The Lot Radio, Worldwide FM and Kiosk Radio. The Thai stations stay. Your current list is left as it is: tap ⋮ › Restore built-in stations to add the new ones.
- **Browse stations filters by format and bitrate** — FLAC, MP3, AAC, AAC+ or OGG, and a minimum bitrate from 128 to 320 kbps. FLAC also finds the lossless streams the directory lists as OGG. The Browse window is bigger, with all four filters in one row.
### Other
- **The "Welcome to Anantar Ultimate" notification at start-up is gone.**

## V12.0-beta9
### New features
- **Community** — share your Listening Profiles and Custom Harmonic presets, and browse or import what others shared, with their IEM/headphone and DAP model. Open it at the top of Listening Profiles or with the Community button next to CUSTOM in Harmonic. Nothing is shared until you tick "I agree"; the full privacy policy is one QR scan away.
- **WavPack DSD plays as native DSD** — .wv files that hold DSD now play bit-perfect through the DSD path, seek included. They used to play wrong.
### Improvements
- **Listening Profiles have an IEM/Headphone field.**
- **Custom Harmonic cards open their menu from ⋮** (was a pencil icon).
- **Artist pages separate ALBUMS from APPEARS ON** — someone else's album with a guest track, or a compilation, no longer counts as the artist's album, so the album count matches the Artists list.
### Fixes
- **Applying a Listening Profile that changes Boot, Infinity Stage and Infinity FPGA reboots only once.** The DAP used to reboot halfway through, before Infinity Stage was set, so the profile showed MODIFIED and needed a second apply and a second reboot. The Tuning Wizard had the same problem.
### Languages
- **Thai reads naturally now** — 331 texts rewritten: shorter, no stiff word-for-word phrasing, consistent terms (Library = คลังเพลง, Apply = นำไปใช้, SD card = การ์ด SD…).
- **Simplified Chinese cleaned up** — 283 texts: consistent terms (配置 / 歌单 / 歌手 / 曲库), proper full-width punctuation, real mistranslations fixed (DSD Remaster was "DSD 重置", ReplayGain, THD).
- **Japanese polished** — 380 texts: natural phrasing, consistent terms (プロファイル / 再生キュー / アートワーク / 放送局), full-width punctuation, product names kept as-is.
- **Quotes around names show again** — "…" in a few English, Thai and Korean texts used to disappear on the device.
### Radio
- **HLS stations play now** (.m3u8 — e.g. RTL and France Inter from the station browser). They used to never start and left the player stuck until the app was force-closed; the next tap then froze the app ("app isn't responding").
- **A station that can't start no longer freezes the app** — it fails within seconds and the next station plays normally.

## V12.0-beta8
### Harmonic & PEQ
- **Harmonic stays on after a reboot.** It used to switch itself off a few seconds after start-up until you picked another Harmonic. If you liked that cleaner sound, that was Harmonic OFF — pick OFF in the list.
- **Harmonic OFF now restores the real stock tuning**, and switching Harmonic no longer resets OS mode.
- **PEQ off now sounds like PEQ never loaded** — its preamp no longer stays behind.
### Listening Profiles
- **iBasso presets (Natural / Even+ / Odd+ / All) really apply** from a profile, and the chip no longer stays "modified" for Vinyl / Tube / Chassis pages you never opened.
- **DSD Remaster, HRR and the coloration engines switch on the track that is playing**, not the next one.
- **Boot + FPGA mode changed together = one reboot.**
### Local Mode & network
- **Wi-Fi stays off in Local Mode** — an app restart used to switch it back on. WiFi Transfer and Rsync go off with it.
- **WiFi Transfer and Rsync no longer show the app's own data folder** (it holds your streaming logins), and Rsync only answers your own network.
- **UPnP/DLNA:** the DAP disappears from control points the moment the renderer is off, it no longer sleeps under a running renderer, and a control point clearing its "next" no longer cuts a queue you started on the DAP.
### Radio
- **Covers you pick show in Now Playing and on the lock screen**, the artwork follows the station, titles with accents no longer show �, and a station survives an app restart.
### Library
- **Uploads keep your hearts, DR and ReplayGain**, and an artist whose last album you deleted disappears from the list.
- **"Recently loved" order survives a Last.fm sync.**
### Other
- **Device Info shows battery current on every model** (it read 0 mA outside the DX340MAX).
- **More text translated** in Thai, Chinese, Korean and Japanese.

## V12.0-beta7
### Listening Profiles
- **Tap a profile to see what it holds** — each setting shown as now → profile, changes highlighted; Apply from there.
- **Profiles now include Output (AB / Super A ↔ Tube) and the DSD Remaster / 48 kHz settings.**
- **Values shown with their real names** — filters, tube model, turntable, crossfeed — on the profile page and in the apply summary.
- **Volume limit, ReplayGain, balance and SuperGain are no longer part of a profile.**
- **⚠ Profiles saved in beta5 must be saved again** — the old format is dropped.
### New features
- **Library syncs itself with WiFi Transfer and Rsync** — uploads, moves, deletes and rsync `--delete` show up a few seconds later; a toast tells you how many tracks changed.
- **Deleting from the Folders screen updates the library too** — no rescan needed.
### Improvements
- **WiFi Transfer shows free space** for Internal and SD card, with a refresh button.
- **UPnP/DLNA switch moved to the top-right** of its page, like WiFi Transfer and Rsync.
- **Network tiles:** no green dot; the Wi-Fi tile shows off / searching / connected.
- **Wi-Fi page scans on open** and has a Disconnect button for the current network.
### Fixes
- **Album and artist counts stay right after a transfer** — uploaded albums no longer hide as singles.
- **DeltaCopy download link works again.**
- **Device Info: DX270 shows "iBasso R2R Ultra".**

## V12.0-beta6
### New features
- **Rsync server** — sync your library from a computer or NAS over rsync (port 873). Only new or changed files are copied, an interrupted run picks up where it stopped, and received music joins the library automatically.
- **Rsync page in Settings** — switch, address, an optional password that survives restarts, and step-by-step guides for Windows, macOS, Synology and the command line.
- **Voltage graphs in Device Info** — the Main and Amp battery rows draw the last ~5 minutes with the swing next to it, so you can see how hard the amp pulls each cell.
### Improvements
- **Smoother scrolling while music plays** — the GPU no longer idles at its lowest clock during playback, the ∞ tab's glow stopped repainting the whole screen 60 times a second, and the Library paints its background once.
- **Smoother screen, same idle power** — the GPU keeps a working clock whenever there is something to draw, and still switches off the moment the screen goes still. HRR gets its full speed while it runs.
- **WiFi Transfer has its own page** — switch, QR and address in one place, with a short guide.
- **Playback no longer pauses while a transfer runs.**
- **Network tiles** — Wi-Fi, Transfer, Rsync and UPnP sit at the top of Settings; the icon colour shows what is on.
- **Last.fm moved to Home**, next to the Radio pill; the streaming tiles are gone from Settings.
- **UPnP/DLNA** — the switch now lives on its guide page.
### Fixes
- **Radio covers no longer vanish in Now Playing** when a station announces its first track, or sends a web page where a cover image is expected.
- **Playlists on the card are imported again** — the "Import M3U playlists" switch no longer resets itself, and is on by default.
- **The last track of a CUE album no longer shows the whole album's length** — fixes itself when the track plays; list lengths update after the next scan.

## V12.0-beta5
### Listening Profiles
- **Save your whole setup per headphone and switch back in one tap** — harmonic, NOS/OS, filters, gains, balance, volume, ReplayGain, EQ, PEQ, the coloration engines, DSD Remaster/HRR, even Boot, Stage and FPGA mode. The new Profile chip beside the title shows which one is on; it turns orange the moment you tweak away from it, and one tap on UPDATE saves the tweaks back.
- **Stock iBasso — Reset All** — everything off for an honest A/B against stock. Gain and volume stay where they are.
- **Boot, Stage and FPGA changes bundle into a single reboot** — profiles that share them switch with no reboot at all.
### Harmonic
- **OFF no longer reboots the DAP.** It switches off live — the FPGA stops shaping, and the system tuning the profiles changed goes back to stock — and it now sits at the end of the profile list instead of a button in the corner.
### Under the hood
- **Boot-profile changes wait for the kernel patch to finish writing before any reboot** — closing a window where an impatient reboot could leave the DAP unbootable.
### Local Mode
- **The Wi-Fi daemons stop too** — wificond and Qualcomm's cnss-daemon stay resident after the radio goes off; stopping them returns their memory. Switch Wi-Fi on from anywhere else and the DAP repairs itself.
- **Bluetooth is held off the way Wi-Fi already was** — the pairing screen and Bluetooth DAC no longer switch it back on.
- **Tidal, Qobuz, Radio Paradise and Radio are greyed out** while there is no network.
- **The update check is skipped** instead of waiting for a name lookup to time out.
### Radio
- **Delete all stations, and put the built-in ones back** — both in the ⋮ menu. Importing adds to the list you already have, so swapping one list for another used to mean deleting every station by hand. Restoring skips stations you already have, so your own names and covers survive.

## V12.0-beta4
### UPnP / DLNA
Twelve wrong replies to control points, found by checking every one against the UPnP AV, DLNA and OpenHome specs.
- **Chinese, Japanese, Korean and Thai titles are searchable again** — in the DAP's own search box too.
- **Long lists are complete** — Genre, Year, Language, DR, Hi-Res and Folders stopped at the 2,000th track, and counts now match.
- **CUE and SACD ISO albums list one playable entry**, multi-disc albums play in order, Recently played no longer repeats.
- **Skips look like skips** · **play clears standby** · **a song tapped in a queue over 2,000 starts** · album search returns albums.
- **A slow station no longer freezes the app**, and one broken tag no longer blanks a folder.
### Local Mode
- **The renderer and Wi-Fi Transfer go off with the radio**, and come back with your settings.
- **Leaving no longer switches on a radio you had off**, or leaves both stuck off.
### Sound
- **L/R balance reads in dB** — 0.5 dB per step, ±10.0 dB.
### Library
- **Chinese track names no longer show as "???"** — run one media scan to clean up existing tracks.
### Radio
- **Import, export and station covers work in Infinity Pure again.**
### VPN
- **You can set up a VPN again.**

## V12.0-beta3
### Radio — 137 stations built in
- **The Radio screen starts full.** Thailand, China, Taiwan, Hong Kong, Korea, Japan, Vietnam and Europe, plus SomaFM, NTS and a few lossless — every URL played before it shipped. Delete any and they stay deleted.
- **Artist and title while it plays**, with the station's own artwork when it sends some.
- **Station covers** from the SD card, internal storage or a URL; the rest fall back to the site's icon.
- **Import and export your list** as `.m3u`, covers included.
- **Browse** tens of thousands of stations by name, genre or country — and filter your own list by genre or region.
- **No Wi-Fi says so straight away** instead of buffering for a minute.
### Quieter, leaner boot
- **Fixed two hidden crash-loops that ran for the whole boot.** The thermal-engine kill and the silent-console tuning each left a system service respawning every 5 seconds, invisibly, forever. Both are now stopped properly once the boot completes.
- **Modem and VoLTE daemons are stopped after boot.** No iBasso DAP has a SIM, yet seven Qualcomm telephony daemons sat resident on every boot — about 47 MB of RAM returned.
- **Less background CPU at idle.** The memory-latency governors polled every 10 ms; at 50 ms the kernel worker that showed up as constant background CPU drops by ~40%, with the GPU governor left untouched.



## V12.0-beta2
### New: Radio — your own stations
- **Add any stream URL and it becomes a station.** New **Radio** button on the Home screen, next to Radio Paradise / Tidal / Qobuz. Paste a link, tap Check, save — the DAP reads the station's own details and fills in the name, genre and bitrate for you, so a typo or a dead link shows up there and then instead of at play time.
- **Plays like everything else on the DAP** — Infinity DSP, HRR and the amp settings all apply, and Now Playing shows **LIVE** in place of the seek bar.
- **Lossless stations work**, not just MP3 and AAC: FLAC-in-Ogg at 1411 kbps plays natively.
- **`.m3u` and `.pls` links are followed** to the stream behind them, and a stream that stalls reconnects instead of ending the track.
- Rename, favourite (favourites sit at the top) and delete from the list.
### Fixes
- **A missing file no longer spams a row of "File not found" toasts** and stops the player looping through a queue it cannot play.

## V12.0-beta1
### New: UPnP / DLNA
- **Play to your DAP from your phone.** Switch on **UPnP/DLNA Renderer** in Settings and the DAP shows up in BubbleUPnP, mconnect Player, JRiver, Audirvana and other UPnP apps. Plays through the normal engine, so Infinity DSP and native DSD apply exactly as they do for a track you start on the DAP. Works in Pure and Android mode; DSD Remaster and HRR stay Pure-only, as always.
- **Browse the DAP's library from your phone** — covers and all, laid out like the Library screen: Favourites, Albums, Singles, Artists, Playlists, Compilations, Hi-Res & format, Genres, Languages, Years, Awards, Dynamic range, Storage, Folders, AI Mixes, Recently played. Categories open as albums or as songs, and the phone's search box queries the DAP's index.
- **Your own library stays local** — picked off the DAP's storage instead of streamed out and back, so ReplayGain, play counts and the heart still work.
- **The queue lives on the DAP**, so playback carries on after you close the phone app. Next, previous, shuffle, repeat, seek and volume work from either side.
- **Gapless and full resolution** — FLAC, WAV, AIFF, ALAC, APE, WavPack, Ogg, Opus, MP3, AAC, WMA and DSD, nothing converted on the way in. A short network stall resumes instead of skipping the track.
- **Internet radio too.** Send a stream link or `.m3u` / `.pls`; MP3 and AAC both play, with a **LIVE** marker in place of the seek bar. One connection per station, and a dropout reconnects.
- Off by default. While on, the DAP stays awake on the network; turning it off restores deep sleep.
### Fixes
- **Playing a folder no longer stops at the end of a track.** Files outside the scanned library couldn't be looked up again when the track ended, so playback stopped — after one song, after three, differently every time. A track that really can't be read is now skipped instead of ending the album.
- **Love is written to the card again.** After a media scan `Playlists/Love.m3u8` and the favourite artist / album backups stopped being saved, leaving nothing to restore from after clearing app data.
- **Now Playing and the always-on display show the real heart** — a love set elsewhere now appears, and double-tap no longer flips the wrong way.
- **The scrollbar in Folders can be dragged** instead of snapping back to where you grabbed it.

## V11.0-beta20
### Library
- **SONGS tab on every category page** (Genre, Hi-Res, Year, DR, Language, storage) — flat track list with A-Z / by-artist sort and the alphabet index.
- **Favourites: sort for the LOVE list** — Recently loved (default), A-Z, by artist, recently added, most played. Section headers show counts.
- Genre / Year / Language / DR pages no longer rebuild their list on every tap.
### Tags
- **File size** in the Now Playing and track-list Tags panels (read only when the panel is opened).
### Device Info
- Storage shows flash type (UFS / eMMC), model, health and SD card filesystem.
- Battery names the fuel-gauge chip its numbers come from; zero cycle counts and "Unknown" status are hidden.

## V11.0-beta19
### Settings
- **Device Info** (under Module Update) — SoC, DAC, firmware, module version, CPU / GPU load and clocks, RAM, storage, battery level · status · voltage · current · charge cycles · health (SOH), and temperatures. Rows a DAP can't report are hidden (e.g. DX260MK2's gauge has no cycle counter).
### Now Playing
- **Infinity DSP popup: EQ / PEQ on-off moved into their detail pages** (top "Enabled" switch, like Tube and Vinyl). The list rows now just show state and open the page.
### DX260MK2
- **AMP Gain now Low / Mid / High** (was Low / High) — matches the stock firmware's three-section gain.

## V11.0-beta18
### Parametric EQ
- **Response graph** — the curve you hear plus each band's own line, log 20 Hz–20 kHz, auto-zoom ±6/12/24 dB. Matches the engine's own filter maths.
- **Drag the numbered dots** to set frequency (left/right) and gain (up/down); applied on finger-up, so no stutter.
- **ALL / 1–10 chips** filter the table to one band. Disabled bands show as black chips.
- **Preamp** has − / + (0.5 dB) buttons; tap the value to type.
- **Built-in guide** (book icon): filter types with live mini-curves, FREQ/GAIN/Q, AutoEQ import, hearing tip. In TH / ZH / KO / JA.
### Equalizer
- **EQ Intensity slider** scales the whole 10-band curve (0–200 %, capped ±12 dB) without touching your preset — for hearing-compensation curves that need more or less per album.
- Band levels round to the nearest dB (were truncated).
### Look
- **Gradient heart** 
### Fixes
- Now Playing seek bar advances one second at a time instead of stalling and jumping.
- Harmonic preset "Sigma Delt Max" → "Sigma Delta Max" (name only).

## V11.0-beta17
### Harmonic
- **Presets are now one per row, with the description next to the name.** The old three-per-row chips only had room for the name, so you had to long-press to learn what a preset did. Every preset now shows its character at a glance — name on the left, description on the right — in a single list.

## V11.0-beta16
### Sound quality
- **Thin sound with weak, uneven bass — fixed.** With DSD Remaster off, the player was squeezed onto two CPU cores instead of four, so playback competed with the screen and background work. It now uses all four whenever DSD Remaster is off, in both Infinity Pure and Android mode. Nothing changes while DSD Remaster is on.
### Fixes
- **AMP16: AB → Tube no longer drops the right channel.** The switch's three writes could land out of order and leave the tube stage half-switched — worst on the first flip after boot.
- **Invert Phase could be active while the switch read "Off".**
- **Play button no longer shows "playing" during the first half-minute after boot,** while the audio hardware is still initialising and playback is refused.
- **DX320MAX: fixed the black, unresponsive screen after switching into Infinity Pure.** A GPU setting meant for the DX340's HRR engine was running here too; HRR does not exist on the DX320MAX or DX180 and is now off on both.
### New
- **AMP19 support (DX340)** — the Output switch shows the card's two stages, **Super A / Tube**, with the badge to match. DC-IN SuperGain works as it does on AMP16/AMP17. AMP20 is recognised too, ready for the day it ships.
- **DX320MAX: Digital Volume is always on** — it is the only software volume this DAP has, so the chip and level now show in both modes. Level 100 stays bit-perfect.
- **Device wallpapers for DX320MAX and DX260MK2.**

## V11.0-beta15
### New device: DX260MK2
- **Anantar Ultimate now supports the iBasso DX260MK2.** Everything the platform offers on DX270 is here: **Infinity Pure mode** with the full **Infinity DSP** suite — DSD Remaster, Vinyl Lover, Tube Lover, Chassis Engine, Crossfeed, Invert Phase and HRR — in both Pure and Android mode, plus the digital filter selector (five CS43198 filters), Line Out switching, and the same hardware volume curve as the DX340 family. The Now Playing screen is tuned for the DX260MK2's display size. Not on this model (no hardware for it): Harmonic engine, NOS mode, SuperGain and Always-On Display.
### New amp card: AMP19 (DX340)
- **Ready for iBasso's upcoming AMP19 tube-hybrid card** (added in iBasso firmware 1.09). The Output switch shows the card's two stages — **Super A / Tube** — and the Now Playing badge follows ("SA" / "Tube"). DC-IN SuperGain engages through the card's own gain stage, with the gain selector locked while the boost is live, exactly like AMP16/AMP17. Also recognises the yet-unannounced AMP20 (a line-out card like AMP15) so it works the day it ships.
### Fixes
- **No more ghost "Infinity" card after leaving Infinity Pure.** Switching from Pure back to Android mode used to leave an Infinity Player card in the recent-apps list — looking as if the app had opened itself in the background, even with Auto-launch on Boot off. The Pure session no longer leaves any trace in recents; opening the app normally in Android mode still shows its card as usual.

## V11.0-beta14
### L/R Balance — double the range
- **Balance now goes to ±20, up from ±10.** The DAC's balance control always had this headroom — the stock player just never exposed it. Every step is the same true hardware step as before (one tick of the volume chip, the finest step the hardware has), applied in the analog volume stage, not in software.
### Dynamic Range scan — MP3s no longer crawl
- **MP3 analysis now takes under a second per song instead of nearly a minute.** MP3s were the last common format still decoded through Android's slow media pipeline; they now use the same fast native decoder path as FLAC and DSD (measured ~68× faster).
### Fixes
- **Ghost "disconnected" SD card can now be removed.** Reformatting a card gives it a new identity, and the old entry stayed in the storage list forever — Clear Database removed its songs but not the entry itself. Clearing a disconnected storage now removes it completely.

## V11.0-beta13
### Track changes are twice as fast
- **Next/previous and album Play All now start in ~0.6 s instead of ~1.3 s.** The player used to fully stop and drain the audio engine before every track change; the engine is designed to switch sources directly (the stock player has always done it this way), so that drain is gone. Applies to every format — PCM, hi-res and DSD alike.
- **CUE albums switch tracks almost instantly (~0.3 s).** Tracks of a single-file CUE album live in the same file, so switching is now just a seek — the file is no longer closed, reopened and re-decoded.
- **The loading spinner no longer overstays.** It used to keep spinning up to a second after music was already playing; it now disappears the moment playback actually starts.
### Fixes
- **The app could silently die mid-song — randomly, usually not long after boot.** Android sends spurious "SD card removed" events while storage settles after boot, and the app restarted itself on every one of them even though the card never moved. It now double-checks the card is really gone before restarting; pulling the card mid-use still behaves as before.
- **Static burst when switching DSD → PCM in Android mode with DSP enabled.** The Vinyl/Tube/Chassis engines were colouring the outgoing stream's last stale blocks during the format handover and turning them into a short blast of noise. The DSP now sits out the handover and fades in just after the new track starts — the burst is gone. (Infinity Pure was never affected.)

## V11.0-beta12
### DX320MAX gets the DSP too
- **Vinyl, Tube, Chassis, Crossfeed and Invert Phase now appear on DX320MAX** in Android mode, for the same reason they arrived on DX180: the Android-mode path never touches the DAC, so the hardware limits that keep these models out of Infinity Pure's audio path do not apply. DSD Remaster and HRR remain unavailable on both.
### Fixes
- **DX180: the DSP rows showed up in beta11 but did nothing.** The controls were unlocked while the audio engine behind them was still switched off on that model. Both halves now match.
- Smaller update download — the player is built optimised again, cutting roughly 15 MB off the module.

## V11.0-beta11
### DX180 gets the DSP
- **Vinyl, Tube, Chassis, Crossfeed and Invert Phase now appear on DX180** in Android mode. They were hidden before because the effects only ran through Infinity Pure, and Pure's audio path is the one thing DX180's DAC cannot take. The Android-mode path added in beta10 never touches the DAC, so the effects work there. DSD Remaster and HRR stay unavailable on DX180 — those still need the Pure path.
### Fixes
- Crossfeed and Invert Phase were still locked to Infinity Pure in beta10, even though everything else in that release had been freed. Both now work in Android mode as intended.

## V11.0-beta10
### Infinity DSP now works in Android mode
- **Vinyl, Tube, Chassis, Crossfeed and Invert Phase no longer need Infinity Pure.** They now run in normal Android mode too, so you can colour your music while everything else on the DAP behaves as usual. Switch a setting and it takes effect on the current track — no restart, no mode change.
- Works on CD-rate and hi-res alike, up to 24-bit / 192 kHz.
- DSD Remaster and HRR still require Infinity Pure — both need the direct hardware path that only Pure provides.
### Fixes
- Loving a track from Now Playing (double-tap the artwork) now shows the filled heart everywhere — the album, artist and playlist pages used to keep the old empty heart until you left the screen and came back.
- Playback could get stuck refusing to start, showing "audio hardware initializing" on every track until you force-closed the app. The boot-time codec check could be interrupted and then never finish; it now runs to completion regardless.

## V10.6-beta9
### Artist Names
- **No more "Artist;Artist".** Multi-value artist tags now display cleanly — Now Playing / AOD / mini player show the primary artist, while lists, Track Info and BT/car displays keep the full credits (`Diana Krall, Georgie Fame`).
- Artist list no longer grows phantom `A;B` entries; existing library fixed on first launch, no rescan.
- "Go to artist" from a multi-artist song opens the primary artist; the artist page now also lists tracks where they're featured.
### Vinyl Engine
- **Truer stylus behaviour.** Harmonic sheen now follows the groove the way a real stylus does — vocals and mids come out cleaner, the sparkle lands on cymbals and strings instead of everywhere.
- **Wider, deeper stage.** Centre-image content now breathes into width like a real record — the actual mechanism behind vinyl's famously big soundstage.
- **Tracking feel.** On loud passages the cartridge briefly "works harder" and relaxes as the music does — subtle, strongest on the Vintage setup, absent on Audiophile (a stiff MC doesn't flinch).
### Fixes
- On some boots the audio engine silently lost its realtime CPU priority, making DSD playback more fragile until the next reboot. Now re-checked at boot and at every play.

## V10.6-beta8
### Tube Engine
- **Fixed: loud beep with Tube + DSD Remaster.** A one-time glitch at the start of every track could lock the DSD engine into a loud continuous beep. Gone.
- **More punch and contrast.** Loud notes hit harder while quiet passages stay just as quiet — plucked guitar snaps out, bass has weight again. Same tube character, same volume.


## V10.6-beta7
### Vinyl Engine
- **New Turntable Setup**: choose Vintage '60s, Classic Hi-Fi or Audiophile. Each is a whole setup — deck, arm and cartridge — with its own wow, rumble and tone. Classic Hi-Fi is the sound you had before.
- **Record Condition** now sets crackle and hiss together: Off / Light / Classic / Heavy.
- **Better on IEMs**: clicks sit outside your head, hiss spreads around you.
- Fixed: hi-res files had much less surface texture than CD-rate files.
- Cleaner highs — no more shimmer following the wow.
### Chassis Engine — rebuilt
- **Now adds character without touching the music**: the old version quietly dropped the level ~4 dB and put distortion across the whole signal. Your music now passes through untouched — only the background and the decay change.
- **Three chassis to choose from** (Copper / Stainless Steel / Titanium) instead of six that all sounded alike. They now differ where a real chassis differs: how black the background is, how wide the image sits, and how long the material rings after a note.
### Tube Engine
- Push-pull amps (EL34 / KT88 / 6L6) each got their own warmth signature, from how well their tube pair is matched — KT88 the most precise, 6L6 the warmest.
### Fixes
- Album art no longer goes missing on AI Mix headers, and a single track no longer loses its thumbnail while the rest of its album keeps one.
- Tube Lover, Vinyl Lover and Chassis Lover are now **Tube Engine**, **Vinyl Engine** and **Chassis Engine**, with a photo header and a line naming the model each one runs.


## V10.6-beta6
### Tube Lover — Real Tube Engine
- New physics engine: each tube is now modelled from its real plate curves (Koren SPICE parameters + operating point + load line) instead of tuned approximations — harmonics of every order emerge from the actual tube, with the same loudness as before.
- Most audible on 12AX7 (purer 2nd-harmonic character) and SET tubes on crescendos.

## V10.6-beta5
### Tube Lover — Hi-Fi Refinement
- Richer, more natural harmonics (extended to 5th/6th order) and clearer highs (20 kHz roll-off -2.4 → -0.7 dB).
- Hi-res 88.2/96 kHz: distortion no longer folds into the audible range.
- New Smooth Mode (off by default): silkier, more relaxed sound on dense mixes.
- Truer physics: EL34/KT88/6L6 now odd-harmonic dominant like real push-pull amps; 12AX7 rebalanced; new transformer model adds bass bloom at loud levels (SET deepest).
- Deeper analog modelling: transformer core memory (bass texture), slow grid drift (amp settles into loud passages), per-amp transformer resonance on hi-res.
### Other Fixes
- Album art: non-square covers center-cropped instead of squeezed.
- Favourite hearts (albums/artists/songs) now survive scans and syncs; missing hearts auto-heal on launch.
- Library Favourites: LOVE songs show artwork + 3-dot menu; artists show artwork.
- Power Off Timer: 2h / 4h options added.


## V10.6-beta4
### Enjuku rebuilt — Harmonic works again
- Enjuku broke the Harmonic Exciter: harmonic profiles had no real effect, and changing a harmonic setting while music played could kill the sound or freeze the DAP until a reboot. Traced to 19 bytes in the Enjuku FPGA image that disturb the harmonic coefficient memory.


## V10.6-beta3
- Fixed Lyric not show correctly
- Fixed Enjuku: first song after reboot could go silent ~1.5s 
- Fixed: pressing play too soon after boot could kill audio until the next reboot — player now shows an "audio initializing" notice for the first ~35s instead
- Ultimate Enjuku FPGA mode is now available to everyone — no unlock code needed


## V10.6-beta2
### New Tube Algorithm
- New Tube Algorithm: Tube Lover re-engineered — removes the aliasing distortion of the old version for noticeably cleaner highs, recalibrates harmonic levels to real tube-amp range, and adds subtle level-dependent dynamics per tube type. All models are now loudness-matched, so switching tubes compares character, not volume.
- Tube Intensity: New 3-level control (Subtle / Classic / Lush), adjustable from the Now Playing DSP panel and Infinity DSP menu.
### New Vinyl Algorithm
- New Vinyl Algorithm: Vinyl Lover rebuilt on real record physics with roughly 2.5× the processing stages of V1 — mono bass fold, 33⅓-rpm-locked wow, crackle that recurs at fixed groove positions, new Analog Harmonics layer (stylus-tracing warmth + subtle stereo widening), and the old engine's distortion artifacts removed.
- Vinyl Controls: Six checkboxes replaced by three simple choices — Record Condition, Surface Hiss, and Analog Harmonics — in the Now Playing DSP panel and Infinity DSP menu.
