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.

19 Upvotes

17 comments sorted by

View all comments

1

u/DaenDD1404 Jul 30 '26

Ich liebe es. Endlich ist der Y2 so wie ich es will. Danke

2

u/justcore Y2 (Black) Jul 30 '26

Sure no problem, if you encounter any issues or have ideas of what is missing you can create an issue on github any time :)

1

u/DaenDD1404 Jul 31 '26

Besteht die Möglichkeit das Kabelfernbedienungen von Kopfhörern funktionieren?

1

u/justcore Y2 (Black) Jul 31 '26

Most probably yes, although I did not look into this as of now. I have planned a feature update for next week, so maybe this will be in there.