Giter Club home page Giter Club logo

lazyradio's Introduction

the lazyradio

it is a lazy radio station using github and some shell.

idea

allows you publish your own radio playlist on github.

you can listen to the same songs with friends as long as you are tuned into the same channels.

faq section:

  • is it secure? not really, because it just curls what ever you have posted on github and therefore could be used to spread malicious code.

  • am i ruthless enough to publish it anyway? yes.

  • will it ever get popular? no.

that said, use at your own risk!

config and installation

  • fork repo -- this creates your own place on the web where you can upload your web radio playlist.
  • clone to local machine -- mainly for further editing.
  • adopt url in install.sh to your fork's url, to match the raw files play.sh, txt/secondsEach.txt and txt/secondsTotal.txt -- when using github as your remote git server only username.txt has to be changed.
  • adopt urls in songs.txt to your liking -- just add in your own urls, one per line, even non youtube urls should work, but I didn't test this.
  • run bash setup.sh in terminal on local machine (from within your local git repo's root) -- this adopts the files in the tmp directory to your new playlist (this has to be done every time the playlist changes).
  • add, commit and push changes -- this makes your changes publically accessible through the web.
  • run bash install.sh in terminal on local machine (from within your local git repo's root) -- this should add an alias to your .bashrc (source ~/.bashrc to use the alias, or open another terminal).

installation only

  • fork repo .
  • clone to local machine.
  • run bash install.sh in terminal on local machine (from within git repo's root).

usage

  • run lazyRadio alias in terminal on local machine to play radio -- this alias grabs your public script from the your public git repo and downloads and plays the urls in your playlist.

main dependencies

  • youtube-dl.
  • mpv.
  • curl, git, github, etc.

notes

  • will play songs almost simultaneously on different machines, as long as those have their UTC system time configured similar.
  • breaks for people that cannot access certain urls provided through songs.txt from their country.
  • should work with not only youtube urls since youtube-dl and mpv can do more than only youtube.
  • when playing long songs (as provided through urls) the different radios might differ because of different loading issues per machine (this offset should reset with every newly started song).

meta

lazyradio's People

Contributors

kraasch avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.