ひょんなことから*BSD/UNIX/Linux+フリーソフトウェア+USBカメラでLAN内ビデオ通話ができるのか確認してみようと思うに至ったDebian編がこのページ。
検証に使用したPCは、デュアルコアCPU 1.80GHz/RAM2GBのデスクトップパソコンPavilionとシングルコアCPU 1.60GHz/RAM2GBのノートPC dynabook、OSは共にDebian Jessie(8.7)、RTC/Real Time CommunicationソフトウェアはGNOMEプロジェクト発のEkiga Softphone(イカイガ ソフトフォン) 4.0.1、USBカメラはLogicool C270とElecom UCAM-C0220F(UCAM-C0220FE?)シリーズの2点。
まずは、Ekigaをインストール。
USBカメラの認識については、事前情報でLinuxで使えることは確認済みなので当然も、どちらもUSBポートに挿しただけでdmesg、lsusb共に認識され、Ekigaを起動、既に認識されていれば、そのまま、そうでなくてもデバイス設定でカメラを選択するだけで他に何も設定しなくても映像も出力・表示されました。
USBカメラ自体についてや画質や音質については冒頭のリンク先参照。
ただし、これはデュアルコアマシンでの話で、シングルコアマシンでは、C270は映像表示、通話含め、一通り機能した一方、UCAM-0220FEは、dmesg、lsusb、Ekiga設定アシスタント、Ekiga[編集]=>[設定]=>[映像:デバイス]でも一通り認識はされているものの、映像は表示されませんでした。
しかし、再度試してみると今度は、一通り認識はされているものの、シングルコアマシンでは、UCAM-0220FEだけでなく、C270も映像が表示されなくなってしまいました。
そこで遅まきながら各メーカーのサイトで要求スペックを確認してみるとC270はHD720p対応はともかく基本スペック要求は満たしている一方、UCAM-C0220FEについては、CPU:Intel Pentium4(2.4GHz)以上、RAM:1GB以上とRAMはともかくCPUパワーが不足していました。
ただ、シングルコアマシン+Debian+Ekigaで何れのカメラも映像が表示されなくなって後もシングルコアマシン+Debian+Cheese 3.14.1-2 or Guvcview 2.0.1+debian-1、コマンド実行によるMPlayer2 2.0-728-g2c378c7-4+b1では、相変わらずUCAM-0220FEもC270も映像表示されますし、fswebcam 20140113でも撮影はでき、motion 3.2.12+git20140228でも何れのカメラも認識され、静止画の撮影も動体検知時の映像の録画もできます。
最初、シングルコアマシンでは、C270、UCAM-0220FEの順に試したのですが、スペックオーバーのUCAMで無理をさせた結果、Ekigaに何らかの影響を与えたのかも?いやいや前後して何かをインストール・アンインストールした際に関連する何らかのパッケージが削除されてしまった可能性もある?
何れにしても何れのカメラも、このシングルコアマシン+Debianにおいてdmesg、lsusb、Ekigaでも認識はされ、CheeseやGuvcview、MPlayerなどに至っては以後も映像も表示され、fswebcamでも撮影はでき、motionでは映像の録画もできるのでドライバがなくなったということはないでしょう。
そこで何らかのパッケージが欠落した可能性を考えて試しにEkigaを再インストールしてみましたが、変わらず、提案パッケージも一通りインストールしてみるも変わらず、当該シングルコアマシンと映像が表示されるデュアルコアマシンで共にdpkg -l | grep -i v4lしてみてもリスト結果は同じ、libpt2も入っており、パッケージが欠落しているわけでもなさそう。。。
このシングルコアマシンはメインで使っていて今回のUSBカメラについては、Debian+Ekigaで最初に試し、C270は映像表示されて安堵したのも束の間、UCAM-0220FEが表示されず、え?壊れてる?と思ってデュアルコアマシンで試してみることにし、シングルコアマシンにC270、デュアルコアマシンにUCAMを接続、通話確認も行って一通りできたことに満足した為、C270で映像表示できたのが気のせいということはあり得ない。。。
一体、なぜ。。。?
ekigaを端末で実行してみたら、こんなエラーが出た為、rootでやってみたら、シングルコアマシン+Debian+C270でも、シングルコアマシンでは当初から映像が出なかったUCAM-C0220FEでも映像が出ました。。。
ユーザーでもいける方法は。。。というか、ユーザーアカウントにおいては以前のソケットが閉じずに保持されてる?違うか。。。
試しにサーバとして使っているRaspberry Pi 2 モデルB(CPU:ARM 4core RAM:1GB)/Raspbian Jessie+Ekigaを試してみたらVNC経由のリモート映像はともかく、ローカル映像は被写体が動いてもC270については円滑、ビデオ通話、テキストチャットなど一通り機能することを確認できました。
RTC/Real Time Communicationソフトウェアで確認したい。。。というわけで既にWindows/Mac OS X/macOS/Linuxに対応のWebRTCアプリJitsiで確認してみることに。
やってみるとJitsiならそれぞれDebian Jessieが入ったデュアルコアマシンとシングルコアマシン間でビデオ通話できました。
尚、リポジトリ追加、インストールについてはhttps://jitsi.org/Main/DebianRepositoryを参考に、途中、追加でapt-transport-httpsをインストールしつつ完了。
これらのことから、先のシングルコアマシンでのEkigaの挙動については、Ekigaに起因するものだったようです。
結果、今回購入したLogicool(Logitech) C270とELECOM UCAM-C0220FEは、何れもDebianでビデオ通話に、更にFedoraでビデオ通話、NetBSDでビデオ通話などに使えることがわかりました。