Go to file
2016-09-08 14:18:20 -05:00
cli Rescan the media library before reporting on absent files. 2016-09-08 14:18:20 -05:00
core Bump H2 DB version. 2016-09-08 14:13:04 -05:00
rest-server Initial groundwork for WDIWTLT servlet. 2016-03-16 04:03:24 -05:00
.gitignore Initial commit. 2015-12-03 14:28:29 -06:00
build.gradle Rescan the media library before reporting on absent files. 2016-09-08 14:18:20 -05:00
README.md Added installation/build instructions. 2016-04-21 08:27:43 -05:00
settings.gradle Initial groundwork for WDIWTLT servlet. 2016-03-16 04:03:24 -05:00
worklog.md Added worklog. 2016-02-12 17:21:21 -06:00

What Do I Want To Listen To

A simple, tag-based music library manager.

This project is born out of a frustration I had managing my music library. I have found playlists, genres, and other ways of organizing my music too restrictive and cumbersome to keep up with. Here are the main features I want out of music player, in order of priority:

Implemented

  • Song tagging.
  • Playlists.
  • Bookmarks (temporary song tag marking location in a playlist/album)
  • Read meta-data from ID3.

TODO

  • Web-based interface.
  • Mobile interface (could implement the Subsonic API on the back-end to be able to use pre-made mobile apps)
  • Transcoding on the fly.
  • Read songs from Amazon S3.
  • Stream from Amazon Cloudfront.

I have not found a music manager that gives me all of the above, so I'm writing my own.

Overview

WDIWTLT is currently made up of two subprojects:

  • core
  • cli

core

core contains the data layer implementation, built with a lightweight ORM layer over JDBC, and common functionality for managing a media library.

cli

cli is a command-line interface built using the WDIWTLT core and VLC for media playback.

Install

The current version, 0.1.0, is an alpha version. The CLI client depends on VLC and expects it to already be installed on the system.

To install the CLI client:

$ wget http://mvn.jdb-labs.com/repo/com/jdbernard/wdiwtlt-cli/0.1.0/wdiwtlt-cli-0.1.0.zip
$ unzip wdiwtlt-cli-0.1.0.zip

The wdiwtlt-cli binary is located in wdiwtlt-cli/bin, which you can add to you PATH environment variable.

Building From Source

The wdiwtlt project is written in Groovy uses the Gradle build tool. If you do not already have a Groovy environment installed you can do:

$ curl -s https://get.sdkman.io | bash
$ source "$HOME/.sdkman/bin/sdkman-init.sh"
$ yes | sdkman install groovy
$ yes | sdkman install gradle

Once you have Groovy and Gradle, the wdiwtlt project can be built by invoking gradle assembleDist.

$ git clone https://git.jdb-labs.com/jdb/wdiwtlt.git
$ cd wdiwtlt
$ gradle assembleDist