DS Player is an Android music player for Synology NAS, inspired by DS Audio.
This project started from my personal interest in improving the original DS Audio experience, especially the lyrics UI and playback interaction.
It is based on restoring and reorganizing the original DS Audio architecture, while keeping compatibility with its framework structure such as:
DaggerFragmentDaggerDialogFragment- Synology NAS API
- DS Audio style navigation and player logic
The original motivation was simple:
🎯 Make lyrics scrolling and seeking better than DS Audio
![]() Home Page |
![]() Playlist |
![]() Playlist2 |
![]() Lyrics |
- HomePageFragment (PinsFragment, DefaultGenreFragment)
- PlaylistFragment
- RadioFragment
- FileSongFragment
- PlayerFragment (LyricFragment(PhoneLyricFragment、TabletFragment)、PlayingQueueFragment)
- TestFragment
- browse NAS music library
- radio support
- genre browsing
- pinned content
- file song list
Originally, every song item used the default icon: R.drawable.icon_music
Now each item can load its own cover image using: CoverUriLoader
This improvement was implemented by modifying: FileSongListAdapter
This is the most important improvement target of the project.
Current test features:
- smooth lyric scrolling
- draggable lyric seek
- synchronized playback progress
- LyricViewX integration testing
Currently tested in:
PlayerActivity
Future versions will replace the default DS Audio lyrics UI completely.
- Android
- Java / Kotlin
- Dagger
- Fragment architecture
- Synology NAS API
Used for testing:
queryAll()NAS API methods、endpoint information、debugging response structures- switch fragment
Most core functions are already working.
- homepage
- player page
- lyric fragment
- file song list
- radio
- song list page
- player activity lyric tests
- album cover loading
- SearchActivity
- secondary menu actions
- fragment back stack optimization
- lyric UI replacement
Some incomplete logic still exist.
Some secondary menu operations are not yet completed:
- Download
- Rate
- Playlist operations
- Share
- replace default lyric UI with LyricViewX
- fix back gesture issues
- improve search entrance UX & complete SearchActivity
- dark mode optimization
- better player animations
- better NAS API abstraction
The original DS Audio app works well, but I always felt two areas needed improvement:
The default lyrics experience is not smooth enough.
Especially:
- scrolling
- dragging
- syncing
The search button location is inconvenient.
Currently users need to:
return to root page → open drawer → click search
This should be much easier.
This project is licensed under a Non-Commercial License.
🚫 Commercial use is not allowed.
See LICENSE for details.
This project is for personal learning and development purposes only.
It is inspired by Synology DS Audio and is not affiliated with Synology.



