Internet DJ Console Homepage IDJC

website logo

Aims

In this section I'm going to explain how to set up ALSA and Skype to use the VoIP feature and then explain how VoIP works within IDJC. VoIP clients that have explicit support for JACK should present little difficulty in connecting to IDJC. For Skype a little more work is required.

ALSA configuration

ALSA supports virtual devices called plugins that can form audio pipelines from descriptions in a configuration file. With them you can change sample rates, mix audio, apply audio effects, and so on. For the purpose of getting sound into IDJC from an ALSA source the following can be specified in the appropriate configuration file ~/.asoundrc which may need to be created.

# VoIP plugin for the IDJC default profile.
pcm.idjcvoip {
   type plug
   slave.pcm {
      type jack
      playback_ports {
         0 idjc_default:voip_in_l
         1 idjc_default:voip_in_r
      }
      capture_ports {
         0 idjc_default:voip_out_l
         1 idjc_default:voip_out_r
      }
   }
}

For the changes to take effect you need to log out. On logging back into your desktop failure may have occurred for the following two reasons.

  1. The ALSA component alsa-plugins is not installed.
  2. alsa-plugins is installed but not its module for JACK Audio Connection Kit.

Fixing reason 1 seems easy. Just install it using the package manager (possibly under the name libasound2-plugins) however after doing so there may still be reason 2 to contend with.

A simple test for JACK plugin support.

$ find /usr/lib/alsa-lib | grep jack
/usr/lib/alsa-lib/libasound_module_pcm_jack.so
/usr/lib/alsa-lib/libasound_module_pcm_jack.la

If these two files are both missing there is no option but to install unofficial software. Source and binary. This is intended as a replacement for the current alsa-plugins package so remove the old version first.

Skype configuration

Launch Skype and Hit Ctrl + O. Choose Sound Devices and for each of the Sound In, Sound Out, and Ringing options, select idjcvoip then click Apply. Leave the configuration window open for the next step.

Testing

Launch IDJC. Put your headphones on and select the Green Telephone icon to put IDJC into VoIP mode. In Skype click the Make a test sound button and listen for a sound effect.

The IDJC VoIP modes explained

  • Private conference (Red Telephone + No microphones engaged)

    You are in a private conference with whoever is on the VoIP service and able to talk freely without interrupting the stream. You would typically use this mode when playing a song since the listeners can no longer hear you. What you can hear of the streamed audio is dictated by the mixback volume control that has the telephone icon above it. When you play jingles in this mode the jingles audio goes to the VoIP listeners and not to the stream. The right jingle could put them in the correct mood for going on air.

  • Away serving the listeners (Red Telephone + Any microphone)

    This mode allows for the people who are on the VoIP service to keep up with your show and talk among themselves while you moderate your show. All active microphone audio will go to the stream and inactive microphones will just be muted leaving the VoIP users as part of your audience who can hear your show at the level determined by the mixback volume control.

    This mode is ideal for announcing the imminent switch to the next mode.

  • VoIP users free to speak to the audience (Green Telephone)

    Self explanatory really. Note how the microphone buttons are not available in this mode. It is assumed you are taking responsibility for your show and being audible to all. Shutting off microphones in this mode would lead to confusion over who is able to speak and follow the conversation so all microphones are open. See the individual microphone disable feature in the preferences as the correct way to deal with unused microphone channels.

Final advice

There are only effectively three VoIP modes but they should be practiced off-air until they become second nature.