Giter Club home page Giter Club logo

patchwerk-radio's Introduction

PatchWerks, A PureData based generative music internet radio station
-----------------------------------------------------------

Stream:  http://radio.rumblesan.com/
Website: http://www.rumblesan.com/

About
-----

PatchWerks is an internet radio station that streams audio which is synthesised in realtime with PureData.

For questions you can check out the blog or email me at [email protected]

I also hang around in IRC, #doomcentral on irc.freenode.net

Intro
-----

The core of the whole project is a Python script that starts up an instance of PD then gets it to dynamically load up patches chosen at random from a given folder. The patch will run for about ten minutes, at which point the audio will fade over to a newly chosen patch.

All audio is generated and modified in realtime on the server and the idea is for the patches to be generative in nature so that repeated listenings of the patches will always sound similar but different.

The whole lot is then streamed out in Ogg format straight from PD and can be setup to connect to any Icecast2 server.

Setup
-----

To set everything up, just pull down the PatchWerks and the Radio-Patches repositories. Modify the config.cfg file to point to the Icecast server you wish to connect to and set the paths to point to the directories for the master and Radio-Patches. Start the PatchWerks script with a -c flag and the config file and everything should just work.

To run everything as a daemon on *nix I've been using daemontools. I still need to tweak the exact setup for this but I'll put it all in here once I've got it working satisfactorily. 

Dependencies
------------

Python 2.6 or greater is recommended, might run with older versions
Pd-Extended

Still to do
-----------

So much, mostly just making a heap of patches but I'll put some of the current Todos as well as some of the nebulous "Future Features" here.
  -  Stream Meta Data
  -  Organising which PD Libraries get loaded at startup
  -  Error handling and warning system
  -  Database integration for keeping track of patch play number
  -  Simple API for getting info on patches or current info
  -  Dynamically loaded effects patches

Useful things
-------------

http://puredata.hurleur.com/

The Pure Data forum
Full of people who know what they're talking about and are very willing to help.

#dataflow on irc.freenode.net
Also full of helpful, friendly and clever people.

Thanks
------

The base PD Python class is based on the code written by Chris McCormick. His website can be found at http://mccormick.cx/chrism and is worth checking out because he's a bit of a PureData wizard.

Thanks also to rdz on #dataflow for bringing the dynamic patch loading in PD to my attention.

patchwerk-radio's People

Contributors

rumblesan avatar

Watchers

 avatar  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.