MacでSkypeポケカをしようとしたらウェブカメラアプリが突然使えなくなった件
この週末(2020.6.6)にSkypeポケカをいざ始めようと思ったら、突然Skypeがウェブカメラアプリを認識しなくなったので、その時の対処メモです。結果として元通りに使えるようになりましたので、参考になればと思いメモを起こしました。
なお、ウェブカメラアプリはEpocCamを使っていますが、IruinやSnap Cameraでも同様の問題が発生しているネット記事が散見されますので、Skype側に起因しているのはほぼ間違いないと思います。
問題となったSkype環境
普段はパソコンのSkypeを使い、ウェブカメラは持ち合わせておらず、EpocCamというウェブカメラアプリを代用しています。詳しくは前回のnoteの記事にまとめていますので、そちらをご参照ください。
今回はMacのSkypeにおいて、カメラデバイスでEpocCamが表示されないという現象が発生しました。FaceTime HD CameraとはMacbookの内蔵カメラで、そちらは表示されています。また、手元のWindows PCでは問題ありませんでした。
Macのバージョン等は以下の通りです。また、Skypeのバージョンは8.60(この時点の最新)を使っていました。
EpocCamが使えなくなった原因
結論から言うと、EpocCamの開発元のKinoniが言及している通り、Mac版Skypeに最近導入されたライブラリ検証(library validation)という機能が原因でした。(詳細は後述)
つまりEpocCamではなくSkypeアプリが直接の原因ですので、EpocCam以外のウェブカメラアプリでも(ひょっとしたら一般的なウェブカメラでも?)問題が発生する可能性はあると思います。
EpocCamを使うための対処法
によると、方法は大きくは2つあるようです。
1. Skypeアプリから署名を削除し、ライブラリ検証を実質無効にする
2. Skypeアプリにオレオレ署名を付与し、ライブラリ検証を成功させる
今回は1の方法を説明します。また、ここから先は自己責任でお願いします。
■ EpocCamドライバを最新にする
念のため、EpocCamの公式サイト https://www.kinoni.com/ から最新のEpocCamドライバを取得しインストールします。この記事を書いている時点での最新バージョンは 2.0 でした。
インストール後、Macを再起動します。
■ Skypeアプリから署名を削除する
Skypeアプリから署名を削除することで、Skypeアプリのライブラリ検証を無効にすることができます。
(1) Launchpadから「ターミナル」というアプリを起動します。起動すると文字入力を待つ白いウィンドウが表示されます。
(2) ターミナルの画面に以下のコマンドを入力し、 Command Line Tools for Xcode というソフトをインストールします。
% xcode-select install
(3) 続けてターミナルで以下のコマンドを入力し、Skypeアプリから署名を削除します。
% codesign --remove-signature "/Applications/Skype.app/Contents/Frameworks/Skype Helper.app"
% codesign --remove-signature "/Applications/Skype.app/Contents/Frameworks/Skype Helper (Renderer).app"
% codesign --remove-signature "/Applications/Skype.app/Contents/Frameworks/Skype Helper (GPU).app"
% codesign --remove-signature "/Applications/Skype.app/Contents/Frameworks/Skype Helper (Plugin).app"
(4) Skypeアプリを起動します(起動中なら再起動します)。起動後にEpocCamが選択できるようになっていれば成功です!
[2020.6.21 追記] Skypeアプリの自動更新が実行され、削除した署名が復活する現象が発生しました。その場合は同じ手順でSkypeアプリの署名を削除することで、EpocCamを再度利用できるようになります。
※補足事項
ここから先はこれまでの内容の補足事項です。
■ EpocCamが使えなくなった原因(詳細)
https://www.kinoni.com/support-and-instructions/ の Troubleshooting -> Doesn't work with apps like Zoom, SnapCam, Skype for Business on macOS の文章を直訳してみます。(以降、専門家ではないため間違いがあったらツッコミをお願いします)
最近、多くのmacOSアプリケーションがライブラリ検証(library validation)と呼ばれるセキュリティ機能を有効にし始めました。これにより、EpocCamのような仮想ウェブカメラの使用できなくなります。アプリケーション開発者にフィードバックして、仮想ウェブカメラを再びサポートするように働きかけることもできますが、一方で回避策(workaround)もあります。アプリから署名を削除して、EpocCamプラグインのようなサードパーティ・ライブラリを再度使用できるように許可することができます。
ライブラリ検証については、Apple公式に記載がありますが、実行するアプリケーション(ここではSkype)とプラグイン(ここではEpocCam)の開発者の署名が同一である、またはプラグインがAppleによって署名されていることを検証する機能のようです。
これによって、Skypeのようなカメラデバイスを操作するアプリで第三者が作成したプログラムを利用できなくなるため、SkypeひいてはmacOSのセキュリティが強化される一方、EpocCamのようなサードパーティ製のウェブカメラアプリとは接続できなくなることを意味します。
おそらくEpocCamの開発元が、EpocCamドライバについてAppleの審査を通し、Appleから署名を付与してもらえればよいと思うのですが、そのためにSDK更新など工数が必要で、現時点ではそこまで出来てないように予想します。
なお、今回問題になったのはSkypeでしたが、Zoomでも同じ問題があったようです。
さらに余談ですが、その後 Zoom 5.0.4 で Re-enable virtual camera support - macOS とありますので、ライブラリ検証を無効にしたのかもしれません(要確認)
■ Skypeアプリの署名を復活させる
Skypeアプリの署名を直接復活させることはできませんが、アプリを再インストールすることで、署名付きのSkypeアプリがインストールされることになります。
■ (宣伝) ジュニアSkypeポケカ大会 U-KYON杯
6/13(土)にU-KYON杯というジュニア(小学生以下)向けのSkypeポケカ大会を運営面でサポートさせて頂いています。まだまだ参加者募集中ですので、もしご興味がありましたら、以下の記事をご覧ください。よろしくお願いいたします😊
この記事が気に入ったらサポートをしてみませんか?