I was recently asked to connect two relatives of mine living in different countries cheaply. Since neither of them had access to the internet I had to set up some kind of a phone-to-phone voip call. I had some credit on my Skype account so I decided to use that. What makes the whole thing trickier is that one of them only has a mobile phone and voip calls to mobile phones in some countries can be quite expensive ($0.4/min in this case). Luckily, I live in the same country as that person and can call her with my mobile for free.
So the question boiled down to how can I connect someone who I can call on Skype to someone who I can call with my mobile.
The first step is to connect both devices needed for the experiment. The mobile phone can connect to the computer via bluetooth to use its mic and speakers as headset. This way calls can be made via the phone from the computer.
Now two calls can be placed simultaneously – one via Skype and one via the phone. We want to connect the people on the other ends of these calls. This can be done by sending whatever comes from Skype to the mic of the phone and whatever comes out of the phone speaker to the mic of Skype. However, since computers typically have only one recording and one playback device, we cannot distinguish between the mic of Skype and the mic that will be used for the phone.
Enter Virtual Audio Cable (VAC). VAC allows you to add virtual audio devices and repeat streams from one line to another.
Note: VAC is a Windows application. If you’re running Linux the same effect can be achieved using JACK Audio Kit.
Let’s recap what virtual audio devices we need for our small experiment: Skype mic, Skype playback, mobile phone mic, and mobile phone speaker. We could actually use the hardware devices for the latter two, but then the person on the other end of the phone will hear us in addition to the Skype contact.
To set up the four virtual lines that we need, start Virtual Cables Control Panel (vcctlpan.exe) and bump the number of lines to 4. I used the default settings for the rest.
Now that we have the virtual lines at our disposal, we have to configure Skype and the mobile phone to use them.
- For Skype – go to Tools -> Options -> Audio settings and select Line 1 for the microphone and Line 2 for speakers.
- The mobile phone will use the system’s default playback and recording devices. To change those, right click on the little speaker icon in the system tray and select “Recording devices”. Select “Line 3” and set it as default. Then click on the “Playback” tab and select “Line 4” as default.
Ok, all that’s left is to set up the repeaters to relay the audio streams correctly. What we want to do is to redirect whatever comes from Skype’s speakers (Line 2) into the mic of the mobile phone (Line 3) and whatever comes from the mobile speakers (Line 4) into Skype’s mic (Line 1).
Fire up two VAC audio repeaters (audiorepeater.exe) and set:
- Wave in: Line 2, Wave out: Line 3
- Wave in: Line 4, Wave out: Line 1
Click “Start” for both repeaters, make the two calls and everyone’s happily talking.
Even if you don’t have to connect relatives from different countries, the VAC + mobile phone combination can be put to other interesting uses like playing an audio track directly into the phone. Hope some of you find this useful.