monking / tunewich

Like a spice clock for your ears, or a place without time.

Home Page:http://tunewi.ch

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Tunewich

A music player built on loops and samples extracted on the fly. Supports HTML5-playable audio and YouTube videos.

Features

  • playlists with fluid rules defining which tracks play at what times of day.
  • HTML5-playable tracks from any source
  • YouTube video support
  • cross-fading upon skipping or switching playlists

Installation

Copy library.example.json to library.json, and populate it with your own music. For audio files, create the /audio directory and place your files at whatever depth in this directory. For YouTube videos, enter only the video ID (the bit after "http://www.youtube.com/watch?v=" in the video URL).

Library

Tracks in the library have the following attributes:

  • src: the path or identifier of the track. Relative paths are assumed to be in the /audio directory, and values which don't have a file extension are assumed to be a YouTube video ID.
  • title: (optional) Track title
  • album: (optional) Album title
  • artist: (optional) Artist name
  • ab: (optional) Times in seconds for the start and end of a loop. If a the player is set to repeat one song, or if a playlist only contains one song, the song plays from the beginning, and when the second time (b) is reached, the player skips to the first time (a).
  • rating: (optional) A numeric rating from 1 to 5

Rules

Rules determine whether a track will be allowed to play at a given time. Tracks without rules are treated as if they always have an active regular rule.

###Format:

    "rules":"<priority (optional)>{<start time>-<end time>} ..."

e.g. "rules":"{08:00-05:00} +{18:00-18:30}"

Each rule string can contain multiple rule definitions. Time periods are <start time> inclusive, <end time> exclusive. Rules which span midnight will behave as expected (e.g. {23:00-01:00} will be in the playlist for two hours).

###Priorities:

  • Regular: With no priority given, a rule is regular, and can be overridden.
  • + Exclusive: if any tracks have an active exclusive rule, any tracks with active regular rules will be deactivated.
  • - Negative: behaves just as a regular rule defining the opposite hour span.
    e.g. {09:00-18:00} and -{18:00-09:00} are equivalient.

Negative rules trump regular rules, and exclusive rules trump both others.

Credit

This project was inspired by the realtime Animal Crossing playlist at http://tane.us/ac/, which I found by its mention in an interview with animator Mariel Cartwright.

About

Like a spice clock for your ears, or a place without time.

http://tunewi.ch


Languages

Language:JavaScript 65.8%Language:CoffeeScript 24.7%Language:CSS 7.4%Language:HTML 2.1%