August 20, 2014

The Podside Project: Introduction

Background:

     Most podcasters record their podcasts at home or in a studio and maybe use some VOIP (voice over IP) like Skype, Mumble, or TeamSpeak to have multiple people join in from different parts of the country/world and then upload their episode to their website and link it to iTunes. 
     Podside is a podcast (Podside.net) about a game (EVE Online) but what makes them special is how they deliver their content to their listeners. What makes Podside different is the fact they broadcast their episodes live. This of course is unusual and therefore the way they push out their live stream is convoluted involving a desktop with two sound cards (one with the audio output routed to the other card's audio input) to record not only the hosts microphone audio but the PC audio output containing the audio of the other hosts and guests. This recorded audio is then taken and pushed out to a dedicated broadcast server where the listeners can go to (Podside.net) and use the built in player to listen to the live broadcast.

The Basic Idea

Goals:

Generalized - To design and code a program with the purpose of recording 2 inputs, combining these audio inputs, convert them to mp3 format, and save the result while also sending it to a broadcast server for a live audience. Therefore, simplifying the process in general while also reducing the number of sound cards from 2 to 1, thus allowing laptops to be used to broadcast the live stream as well.

Technical - To design and code (in Java) a program with the purpose of recording 2 streaming inputs (microphone and PC audio output), combining these audio stream, convert (compress) the combined stream to mp3 format, and save the result to the hard drive (continuous writing to a file, possibly implemented as a separate thread) while also sending it (as an audio stream with no finite audio length, implemented as a separate thread) to a broadcast server for a live audience. Therefore, simplifying the process in general while also reducing the number of sound cards from 2 to 1, thus allowing laptops to be used to broadcast the live stream as well.

     I fully intend for this to be a open source project at this time, however, I see potential for this to one day become a 'full blown product' and thus I will say when I release the code (when there is something functional and worthy of being released) it will be 'open source' as in free to use by anyone for non-profit and/or educational purposes. 

No comments:

Post a Comment