Last.fm scrobbler by slindenau
The Open Music Scrobbler can be used to manually scrobble anything from your Discogs User Collection to Last.fm.
Connect with your Discogs account to browse your (public) collection, and select any album to scrobble. Connect with your Last.fm account to scrobble the selected album(s) and track(s) at a given instant in time. If the track duration is present on Discogs, the scrobbles will be created based on the actual playtime of each track.
This application is currently for desktop or self-hosted only. If you just want to quickly scrobble something you listened to, I suggest also checking out the following projects:
- https://openscrobbler.com
- https://vinylscrobbler.com
- https://codescrobble.com
- https://universalscrobbler.com
- Web GUI Prototype
- 1.0 Release
- Scheduling/offline scrobble with database
- Barcode/Cover scanner for quick scrobble
- Java 17
- Maven 3 (optional; for building the application from sources only)
- Docker (optional; alternative for building + running the application)
- Discogs collection (public or authenticate with Personal Access Token)
- Last.fm account
- Last.fm api key
- On the Releases tab in GitHub the packaged builds can be downloaded.
- Skip the 'Building' section if you're using the released build
- Skip the 'Downloading' and 'Building' sections if you're using Docker
- Dependencies
- discogs4j: (fork of) https://github.com/ajdons/discogs4j
git clone [email protected]:s-lindenau/discogs4j.gitmvn clean install
- discogs4j: (fork of) https://github.com/ajdons/discogs4j
- Building
git clone [email protected]:s-lindenau/OpenMusicScrobbler.gitmvn clean package
- Supply api keys
- If desired the Last.fm api keys can be added to the final build by setting the following options on the
mvn packagecommand:-Dlastfm.api.key=mykey-Dlastfm.api.secret=mysecret
- If desired the Last.fm api keys can be added to the final build by setting the following options on the
- From the packaged build take the following:
- ~/target/open-music-scrobbler-version.jar
- ~/target/dependencies folder
- ~/target/config.properties
- Release zip
- All the relevant files listed above are also zipped for convenient distribution
- See ~/target/release folder
- Configure the required properties
- Run with
java -jaropen-music-scrobbler-version.jar application - Possible options for application are
serverrun as a server for the web based client
- With the
Dockerfileyou can both build the JARs from sources and then run the application, without the need for Java or Maven on your local machine - Building the image:
- Directly from the remote repository:
docker build https://github.com/s-lindenau/OpenMusicScrobbler.git
- Or you can first check out the sources locally:
git clone [email protected]:s-lindenau/OpenMusicScrobbler.gitdocker build .
- Note that you may add any tag for this image as desired with
-t tagName
- Directly from the remote repository:
- Running a container from the image:
- Find the ID of your image, or use the
tagNameto identify the image created with the build command - Create and run a new container as the
serverapplication with:docker run imageID - The server for the web based client is best started in detached mode. Add
-dto theruncommand - Bind ports to access the web application: add
-p 8080:8080 8081:8081to theruncommand - Optional: recommended to mount an external configuration file to persist settings outside the docker container
- add to the
runcommand:-v C:\my\config.properties:/oms/config.properties - create empty
config.propertiesfile and replaceC:\my\config.propertiesin the-vargument with the location of this file
- add to the
- Note that you may add any name for this container as desired with
--name containerName
- Find the ID of your image, or use the
- The
serverweb based application can be accessed with any modern browser. After starting the application, browse to http://localhost:8080 to access the main menu. Follow the links on screen to select and scrobble tracks.