We’re playing with a number of video-capable VoIP solutions for Linux, and linphone was one of them.
We have an openSuSE 12.2 test system with webcam and installed the distributed version of Linphone (version 3.5.2). Registering it with our Asterisk server was a piece of cake, we then activated “video” and “self-image” in the Linphone drop-down menu and gave it a test drive.
But unfortunately, we got no video. Not on our end, not at the remote end. We checked the webcam configuration, the remaining system configuration, the Asterisk server, the remote client and even the watering status of the office plants: All to no avail – although “video” was activated and all other applications could access the device, we wouldn’t get any video call established.
Following a faint idea, we checked for debugging options within Linphone and found an according command line switch to activate verbose output.
And there it was, already on the unbelievable 228th line of the output:
> linphone --verbose
linphone-warning : This version of linphone was built without video support.
Which, by the way, is the same with the Packman version of this package.
Searching the net reveals the following source code segment, which clearly shows that this is some sort of compile-time option:
#ifndef VIDEO_ENABLED if (vcap_enabled || display_enabled) ms_warning("This version of linphone was built without video support."); #endif
I’m not blaming the Linphone developers for not packaging the openSuSE or the Packman version without Linux support – this is something the team simply cannot influence.
I’m blaming the Linphone developers for not using the same compile-time switch to decide whether to hide or to show the menu entries that seemingly let the user enable video support. At least show a message to the user that while the menu entry works, video support has been disabled at compile time.
The way it is currently implemented has been a real waste of time.