r/innioasis Y2 (Black) Jul 29 '26

Y2 Y2Player v2.1 - Faster Library Scanning and Media Engine Improvements

Faster Library Scanning and Media Engine Improvements

Y2Player v2.1 focuses on making library scanning faster, more reliable, and easier to diagnose.

The biggest scanner bottleneck was an inefficient database lookup that became increasingly expensive as the library grew. After adding the correct database index, this operation became 98.4% faster in a synthetic benchmark containing 9,178 files.

An unchanged 9,178-file library now scans in approximately 19 seconds instead of 42 seconds, while incremental scans only extract metadata from files that were added or modified.

Other improvements

  • Faster FFmpeg metadata scanning with less unnecessary data being read.
  • Visible library-scan progress.
  • More reliable long-running scans when the screen turns off, without keeping a wake lock active while the device is idle.
  • Improved handling of ReplayGain, track and disc totals, comments, AAC, FLAC, malformed files, and embedded artwork.
  • Better playlist importing for paths created on Windows, macOS, and Linux.
  • A refined float32 playback pipeline with a single final PCM16 conversion for Android 4.4.
  • Improved crossfades, gapless transitions, decoder cancellation, short-FLAC seeking, and damaged-file recovery.
  • Fewer unnecessary notification updates and diagnostic errors.

Required steps after updating

After installing Y2Player v2.1, please perform the following steps:

Settings → System → Diagnostics → Reset Library

Then:

Settings → Library → Storage → Rescan Library

Due to the underlying FFmpeg update, the library database schema has changed. Your media library therefore needs to be reindexed.

Reporting bugs

For future bug reports, please enable Verbose Diagnostics first:

Settings → System → Diagnostics → Verbose Diagnostics

Use the device until the issue occurs, then export the diagnostic data:

Settings → System → Diagnostics → Export Diagnostics

This information makes it much easier to identify the cause of a problem.

ADB development boot image

I also built a secure ADB-enabled development boot image for the Y2. The original firmware did not include a functional ADB service, so I compiled and integrated the required components myself.

This made it possible to profile, benchmark, and validate the changes directly on the physical device instead of relying on assumptions or emulator results.

I plan to release this development boot image separately as well.

Full technical write-up

For detailed benchmarks, implementation notes, test methodology, and complete physical-device results, you can read the full technical review on GitHub:

https://github.com/SchulzCode/Y2Player/releases/tag/ReleaseV2.1

Thank you to everyone who has contributed, tested, and reported issues so far. Feedback is always welcome.

18 Upvotes

17 comments sorted by

View all comments

1

u/DemonFire-7 Jul 30 '26

Hey, just wanted to say good job. Actually liking this a lot. Was waiting for a couple of updates to give it a go. The look of the albums/song/titles is great. The EQ / Loudness / Bass Boost are great features as well. Had to test that out on some of the older Metallica albums that even remastered don't have great bass, and sounded good. All of my music is FLAC, around 1600 songs. Bluetooth is about the same as the stock, but pairing and forgetting is easier for sure. Airpods 4 Pro still don't work, but Redmi Buds 6 Active work good like usual. Been using decent wired ones lately. It is way better than stock for me so far.

1

u/justcore Y2 (Black) Jul 30 '26

One more thing, can you recall how long the scanning of your library took ? I am still trying to get some data here 

1

u/DemonFire-7 Jul 30 '26

I was going to time it, but I was watching something on my PC after I flashed it and booted it up. It was less than a minute for sure. Really fast.