Oddcastv2 - XMMSOddcastv2 - XMMS Oddcastv2 - XMMS

 
oddcastv2 XMMS

 OddcastV2 - XMMS

 

This plugin is no longer being developed. It has been replaced by ODDCASTV3-JACK. Please use this from now on.























Dependencies

Build Dependencies

In order to build from source you will need the following packages:

  • libvorbis >= 1.0
  • libogg >= 1.0
  • curl >= 7.10.0
  • xmms >= 1.2.8
  • gtk+
  • wxGTK
  • lame
  • libmad

    If you are installing RPM versions of these packages, then you will also need the "devel" version of ALL the above pacakges (i.e. libvorbis-devel, lame-devel, etc...)

    Download Links

    Version 2.0.14


    Changes:
  • repacked the xmms plugin and have added RPMs...please let me know how well they work, I'm not exactly terribly experienced as building them..The binary RPM is for Fedora Core1. I am providing a source RPM for those on other platforms.
  • Source - oddcastv2_xmms-2.0.14.tar.gz
  • Fedore Core 1 Binary RPM - oddcastv2_xmms-2.0.14-1.i386.rpm
  • Source RPM - oddcastv2_xmms-2.0.14-1.src.rpm

    Old Links

  • Source code oddcastv2_xmms -> oddcastv2_xmms-2.0.13.tar.gz

    Live recording should now work...Make sure you check the box "Record from /dev/XXX" and specify the correct DSP device...As with the windows version, you need to use your mixer settings to set the recording device and levels.

  • Source code oddcastv2_xmms -> oddcastv2_xmms-2.0.3.tar.gz

    Fixes for newer > 1.2.8 xmms version..apparently I've been running with 1.2.7 for a while, and they've made some improvements that were causing issues with oddcastv2...thanks to littlex for the patch.

  • Source code oddcastv2_xmms -> oddcastv2_xmms-2.0.2.tar.gz

    Fixed memory leak in effect plugin found by smeevil..

  • Source code oddcastv2_xmms -> oddcastv2_xmms-2.0.1.tar.gz

    Fixed all sorts of gcc 3.2 warnings/errors...damn anal compiler...thanks vanguardist!!!!

  • Source code oddcastv2_xmms -> oddcastv2_xmms-2.0.0.tar.gz

    Important

    Oddcast requires wxWindows to be compiled with gtk1.2. Don't even try using gtk2, it won't work...trust me...you've been warned..

    What is it ?

    OddcastV2 - XMMS is a combination of a few different products. The purpose is to provide a method of using XMMS for broadcasting. XMMS is a fairly decent media player with alot of potential opportunities for broadcast plugins. This is my attempt at one.

    This plugin is actually made up of 3 separate parts, there is the XMMS effect plugin, the standalone oddcastv2 executable (responsible for the encoding) and the oddcast_config standalone executable (for editing settings). I have bundled them all together in this package, but you'll need to make sure you install all parts....this is done by simply doing a make install at the highest level (oddcastv2_xmms).

    How it works, in case you are curious

    OddcastV2 - XMMS is made up of two separate programs. The first is an XMMS effect plugin does the very simple task of taking the audio data from XMMS and sending it to the second program which is a standalone program called (aptly enough) "oddcastv2". "oddcastv2" is the wxWindow UI standalone program which is responsible for taking the raw audio data (fed to it via the effect plugin) and converting it to the appropriate compressed audio codec (MP3 and Vorbis supported) and then sending it out to the appropriate streaming server (Shoutcast, Icecast1.x, Icecast2 supported). "oddcastv2" will also perform things like resampling (going from 44kHz to 22kHz or to 32kHz) as well as channel down/upmixing (converting from Mono to Stereo and vice-versa).

    The XMMS effect plugin sends the data to "oddcastv2" via a defined named pipe. The Effect plugin has only one configuration option and that is for the name of this named pipe. "oddcastv2" has a *ton* of options, and is, in general, kinda difficult to configure, but not overly-so (hopefully).
    so visually it works like :

    XMMS ----> oddcast Effect Plugin --(audio data)---> /named/pipe --(audio data)---> oddcastv2 --(encode)--> --(resample,etc.)--> shoutcast,icecast,icecast2
    

    Also, a separate program (oddcast_config) is required to edit the oddcast config file. Don't ask why it's separate...it just is...it's a standalone wxWindows app, and is required if you want to edit the config file from oddcastv2.

    Ok, that's all well and good, but can you give me some step by step instructions on setting it up ?

    Why sure.

    Step One

    Download and install the oddcastv2-xmms package.

    Step Two

    Run XMMS :
  • Make sure you have the oddcast effect plugin selected. You may need to restart xmms to have this take affect.

    Step Three

    At this point, you should see the following displayed :

  • start playing
    you should now see the description in oddcastv2 change to "Reading but not broadcasting". This means that audio data is communicating over the named pipe and oddcastv2 is just sitting there waiting for you to connect it to the broadcasting server. If you don't see this description, then check to make sure you did steps 1 and 2 correctly.

    Step Four

    Click the "config" button (give it a second, sometimes wxWindow is slow to display the config screen)
    You should see the following screen :

    General Settings
  • Bitrate (Min/Nom/Max) - If you are using VBR, set these to your VBR desired values, if not using VBR, then you should set the Nominal value to the bitrate desired. In the case of using vorbis, if you are using bitrate management, then these are significant, if using quality settings, then these are ignored.
  • Samplerate - e.g. 44100, 32000, 22050, 11025 (experiment with all sorts of samplerates)
  • Channels - 1 = Mono, 2 = Stereo
  • Encoder type - OGG = Ogg vorbis, LAME = Lame mp3 encoder
    Encoder Settings (this section will be filled in later - it's kinda obvious though)
    Server Settings
  • Record from /dev/dsp (live recording, i.e. not from XMMS)
  • Server Type - (Shoutcast/Icecast/Icecast2) - note : Icecast and Icecast2 are different!
  • Server - machine running the broadcast server
  • Port - port of the broadcast server
  • Encoder Password - duh!
  • Genre - Used for yp listing
  • Mountpoint - only if using Icecast/Icecast2. If broadcasting in vorbis, then this must end in .ogg (i.e. /stream.ogg) otherwise make it something like /stream, if using shoutcast, leave it blank
  • Stream URL - used for YP listing
  • Server Desc - used for YP listing
  • Reconnect secs - if the encoder loses connection to the broadcast server, wait this many seconds before retrying the connection.
  • Live Rec Device - where to read from line -in.
  • Live rec Samplerate - probably best to leave this at 44100, but if you are daring you can try 48000.
  • Public Server - list on a YP directory
  • Reconnect - automatically attempt reconnections if the encoder gets disconnected.
    Note that you can also hand-edit the configuration file (transcoder.cfg - yeah, I know, stupid name) and skip the who config screen...Although this is not recommended.

    Step Five

    Connect to the broadcast server :
  • Click the "Connect" button on oddcastv2 and start broadcasting!

    FAQ

    Licences ?

    Check out the license info here