https://github.com/yoheimuta/exoplayermusic
This sample shows how to implement a music player app backed by the ExoPlayer.
https://github.com/yoheimuta/exoplayermusic
android android-application exoplayer kotlin music-player sample-app
Last synced: 3 months ago
JSON representation
This sample shows how to implement a music player app backed by the ExoPlayer.
- Host: GitHub
- URL: https://github.com/yoheimuta/exoplayermusic
- Owner: yoheimuta
- Created: 2019-10-17T08:18:19.000Z (almost 6 years ago)
- Default Branch: master
- Last Pushed: 2019-10-28T03:42:27.000Z (almost 6 years ago)
- Last Synced: 2025-04-10T00:15:42.763Z (6 months ago)
- Topics: android, android-application, exoplayer, kotlin, music-player, sample-app
- Language: Kotlin
- Homepage:
- Size: 1.52 MB
- Stars: 19
- Watchers: 3
- Forks: 2
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# ExoPlayerMusic
This sample shows how to implement a music player app backed by the [ExoPlayer](https://exoplayer.dev).
You can build on this project as a good starting point to release your own music player.
## Demo
## Features
- Following the official guideline for the audio media apps.
- See https://developer.android.com/guide/topics/media-apps/media-apps-overview
- Elaborated UI like the Apple Music Player
- Extracting a lyrics from id3 metadata(USLT tag)
- Background playback
- Volume control support## Customize
If you just want to add your sources in the code directly, look at InMemorySource.kt below.
```kotlin
class InMemorySource() : AbstractMusicSource() {
...
private suspend fun getCatalog(): List {
return listOf(
Pair(
"https://storage.googleapis.com/maison-great-dev/oss/musicplayer/tagmp3_1473200_1.mp3",
"TEST_1"
),
Pair(
"https://storage.googleapis.com/maison-great-dev/oss/musicplayer/tagmp3_2160166.mp3",
"TEST_2"
)
...
```You can switch to other implementations backed by network, database, and so on if needed.
## Music
- Smith, J.O. Physical Audio Signal Processing: https://ccrma.stanford.edu/~jos/waveguide/Sound_Examples.html
- This project is using these as sample mp3 files.
- file-examples.com: https://file-examples.com/index.php/sample-audio-files/sample-mp3-download/
- This project is using one as a sample mp3 file.## License
The MIT License (MIT)
## Acknowledgement
Thank you to the following projects and creators.
- uamp: https://github.com/android/uamp
- I referred to this official sample project for the interface and some implementation.