岡持ちMac ProのApple Cinema Display内蔵カメラをffmpegで撮影

投稿者: | 2021年12月26日

日頃、本体電源を終日落とさず、退社時にディスプレイオフにしているだけの岡持ち Mac Pro (Mid 2010) に ffmpeg をインストールし、cronと組み合わせてディスプレイ 内蔵カメラ による、退社後のオフィス 定点静止画撮影 の仕組みを考えてみました。

内蔵カメラはiSight

以前にも何度か登場するこの岡持ちMac Pro(Mid 2010)のApple LED Cinema Display (27”) には、中央上部にウェブカメラとマイクが内蔵されているのですが、このディスプレイのマニュアルや仕様表には、カメラの解像度などのスペックに関する記述はありません(ちなみにその右の変わった解像度のディスプレイは以前紹介したいわゆるツイ廃液晶を横向きに使用しているものです)。

図1.Apple LED Cinema Display プロパティ

図1.Apple LED Cinema Display プロパティ

システムのハードウェア情報から、内蔵カメラの型番情報は得られましたが、このProductIDでの情報は皆無。それでもなんとか、解像度が最大1,280×1,024pxまで対応していることは分かりました。

図2.内蔵カメラのシステムプロパティ

図2.内蔵カメラのシステムプロパティ

Homebrewからffmpegインストール

CLIベースでカメラを制御するために、macOS向けのパッケージ管理マネージャ、Homebrewからffmpegをインストールします。ターミナルから以下のコマンドを実行…

するのですが、このMac Proは搭載されているグラフィックボードATi Radeon HD 5770がメタル非対応につき、macOS 10.13.6 High Sierraのまま使い続けているため、冒頭に毎回、サポート外警告が現れ少し嫌な予感。

それでも依存関係のあるパッケージを取得に行ってくれるものの、とにかく遅くて30分程度放置させた頃、次のエラーメッセージで異常終了。

 

curlをアップデートしてエラー解消を狙う

上記メッセージの最後に、 Homebrew-installed `curl` がインストールされていないことが挙げられています。 curl 自体はこのように存在しますが、

これはHomebrewから入れたものではないので、あらためてHomebrewからインストールしてみます。

インストールは正常に完走しましたが、終わりのメッセージにある通り、既存の curl との衝突を嫌ってシンボリックリンクは設定いないので、このHomebrew版 curl を使うには、環境変数PATHにパスを追加してターミナルに入り直します。

 

再度トライもrustのインストールでエラー

続いてもう一度、Homebrewよりffmpegをインストールしてみます。 curl を新しくしたことで依存パッケージ群のダウンロードは完走、長い長い make install セクションが始まりました。1時間ほど経って依存パッケージのインストールも終盤に差し掛かった頃、次のエラーで異常終了です。

rust パッケージを個別にHomebrewからインストールしようとしましたが、同じエラーが出ました。やはり古いmacOSでは厳しいようなので、Homebrewからのインストールは諦めます。

 

ffmpeg公式からStatic Buildをダウンロード

ffmpegの公式サイトのダウンロードページを開きます。ページ上部の大きなボタンはソースコードをダウンロードするボタンです。これは、上述のHomebrewと同じ憂き目に遭うこと確実なので、その左下にある、「Get packages & executable files」中のリンゴボタンにマウスカーソルを当てると、その下に出てくる、Static builds をクリックします。

図3.ffmpeg ダウンロード

ショートカット図3.ffmpeg ダウンロード

遷移先のページではffmpegやその周辺ツールの、既にビルドされたバイナリファイルが用意されています。その中のffmpegをダウンロードしますが、7z圧縮ではなくその下の「Download as ZIP」をクリックすると、macOS標準状態でも解凍可能です。

図4.ffmpeg Static Build ダウンロード

図4.ffmpeg Static Build ダウンロード

解凍したバイナリを管理者権限で/usr/local/bin/へ複製するだけで、インストールは完了です。

これでようやく、岡持ちMac ProのmacOS High Sierraでもffmpegが使えるようになったので、次のページでffmpegからiSightカメラでの静止画撮影に進みます。

コメントを残す

メールアドレスが公開されることはありません。

CAPTCHA