特集

生配信ユーザー必携。ATEM Miniの複雑な操作をStream Deckで1ボタン化するCompanion

 放送関連機器を手がけるBlackmagic Designの「ATEM Mini」シリーズは、高度な放送用の機能をコンパクトかつ低価格にまとめたスイッチャー製品。中でもローエンドのATEM Mini(無印)は、4系統のHDMI入力を持ちながら3万円台中盤という価格設定により、配信を行なう個人ユーザーにも人気を博している。本稿ではそんなATEM Miniに、Elgato製マクロボタンデバイス「Stream Deck」と制御ソフト「Companion」を組み合わせることで、ATEM Mini単体では複雑な操作になったり、あるいはそもそも不可能なアクションをボタン1発で実現できることを紹介していく。

 例えばゲーム配信で、カメラ映像のみを映しているところから、画面をゲーム機のものに変更し、カメラ映像をワイプ表示させるには、ATEM Miniだと最低でもボタンを2回押す必要がある。これが、Stream DeckとCompanionを組み合わせると、ボタン1発で実行できるだけでなく、ATEM Mini本体だとワイプのサイズが元の5分の1に強制されるところを、自由なサイズに指定したり、フルサイズからワイプへとアニメーションで縮小させたりといったことができるようになる。操作が効率的になるだけでなく、演出面でも幅を広げることができ、特に生配信では重宝するだろう。

ATEMの潜在能力をさらに引き出すStream DeckとCompanion

 今回の検証にあたり、同社のクリエイター向けPC購入時にBTOオプションとして「ATEM Mini」を追加できるマウスコンピューターのクリエイター向けノート「DAIV 4P」とATEM Miniをセットでお借りした。

 DAIV 4Pは、Core i7-1165G7、メモリ16GB、512GB NVMe SSD、WUXGA表示対応14型非光沢液晶を搭載するクリエイター向けモバイルノート。単体GPUは非搭載だが、14型ながら1kgを切る約985gの重量と約12時間のバッテリ駆動という可搬性が特徴だ。

マウスコンピューターのクリエイター向けノート「DAIV 4P」

 ATEM Miniは、前述のとおり高度な放送用の機能をコンパクトかつ低価格にまとめたスイッチャー製品で、今回取り上げるエントリーモデルのATEM Mini(無印)は4系統のHDMI入力と1系統のHDMI出力を装備。また、USB Type-Cも搭載し、PCとUSB接続することで、ATEM MiniをWebカメラとして認識させることができるため、さまざまな配信ソフトやWeb会議ソフトで利用できる。

Blackmagic Designの「ATEM Mini」

 ElgatoのStream Deckは、その名が示す通り、配信向けの機材。無印バージョンでは3×5で全15の液晶内蔵ボタンを搭載しており、これに各種ソフトウェアのホットキーやショートカットを割り当てられる。例えば配信ソフト「OBS Studio」だと、シーンの切り替えなどをStream Deckのボタンを押すことで操作できる。

Elgatoの「Stream Deck」

 Companionというソフトは、Bitfocusが開発しており、無償ながら、ATEM MiniシリーズやBlackmagic Design製品に限らず、膨大な数のハードウェアの各種機能をStream Deckに割り当てできるもの。macOS版、Windows版、Linux版がある。

Bitfocusの「Companion」

まずはソフトのセットアップ

 機能紹介の前にセットアップ方法から解説しよう。ATEM MiniとStream Deckのソフトがインストール済みの場合は、それらは飛ばして構わない。

 まずはATEM Mini。Blackmagic Designのサイトのサポートページへ行き、「製品シリーズ」から「ATEMライブプロダクションスイッチャー」を選び、「最新のダウンロード情報」から「ATEMスイッチャー8.6.2 アップデート」(2021年8月時点の最新版)をダウンロードし、インストールする。ATEM Miniは、WindowsのUVC(USB Video Class)標準ドライバで動作するが、細かい設定はソフトウェアから行なう必要がある。

Blackmagic Designのサイトのサポートページ

 次に、Elgatoのサイトのダウンロードページへ行き、Stream Deckのソフトバージョン5.0.1(2021年8月時点の最新版)をダウンロードし、インストールする。

Elgatoのサイトのダウンロードページ

 インストールしたら、起動し、画面上部にある「Stream Deckストア」ボタンをクリックし、「Companion」で検索すると表示される「Companion Button」をインストールする。これで、Companion用のプロファイルが作成され、Stream Deckの一番左の列には「Up」、「Page 1」、「Down」というアイコンが表示されるはずだ。

Stream DeckストアでCompanionを検索
インストールすると、このようにCompanion用のプロファイルが作成される

 次に、BitfocusのサイトのCompanioのページへ行き、Companion 2.1(2021年8月時点の最新版)をダウンロードし、インストールする。なお、同ソフトのインストールには無償のユーザー登録が必要となる。

Bitfocusのサイト

 Stream DeckもATEM Miniも基本的にUSBデバイスだが、Companionでは、ATEM MiniについてはEthernet経由で制御する。そのため、ATEM MiniはLANケーブルに繋ぎ、利用するマシンと同じネットワークに接続しておく必要がある。

 Companionを起動すると下記のようなランチャー画面が表示される。Companionはブラウザ上で動作するようになっており、デフォルトでは127.0.0.1:8888で動作する。ポート番号を変えたり、Localhost以外のIPアドレスを指定することもできるが、基本的に初期設定でいいだろう。

Companionのランチャー

 続けて「Launch GUI」をクリックするとブラウザでCompanionの画面が表示される。CompanionでATEM Miniを制御できるようにするために、「Instances」タブの検索欄に「ATEM」などと入力すると「Blackmagic Design ATEM」が表示されるので「Add」(追加)ボタンを押す。

起動したばかりのCompanionの画面
まずは、検索欄にatemと入力して、Blackmagic Design ATEMを追加する

 「Config」タブが表示されるので、必要なら名称を変更し、「Target IP」の欄にATEM MiniのIPアドレスを入力し、「Apply Changes」を押す。ATEM MiniのIPアドレスは、「ATEM Setup」ソフトを起動し、ATEM Miniのアイコンを押すと確認できる。接続に問題がなければ、CompanionのInstancesタブで「ATEM Mini」の「Status」が「OK」になっている。これで準備完了だ。

「Config」タブで、ATEM MiniのIPアドレスを入力
Status OKとなれば準備完了

 なお、本稿は、ATEM MiniのUSB接続、Stream DeckのUSB接続、Companionの実行、配信の実行を同じマシンで行なうことを想定している。

まずはワンボタンで入力切り替えからのPinP

 ATEM Miniでは、4つある入力の内、2つを使ってPicture in Picture(PiP)表示もできる。デフォルトでは入力1が子画面に対応しているので、例えば入力1にカメラを、入力2にゲーム機やプレゼン用PCを繋いでおいて、ATEM MiniのPiPのオンボタンを押すだけでゲームやプレゼンの画面に配信者の顔を子画面表示できる。

 ただ、カメラ全画面表示から、ゲーム/プレゼン全画面表示+カメラワイプ表示などに切り替える場合に、ボタンを2回押す必要がある。これは問題というほどではないのだが、2回ボタンを押すより1回でできた方が楽だし、切り替えたつもりがワイプが出ないままというミスにも繋がる。

 まずCompanionで入力を切り替えるボタンを作るところからはじめる。なお、今回は、HDMI 1にカメラ、HDMI 2にゲーム機orプレゼンソフトを表示させるPCという構成で進める。Companionの左側上部にある「Buttons」タブを開き、右側上部にある「Presets」タブを開いたら、「Blackmagic Design ATEM」をクリックする。これで、Companionを使って制御できるATEMのコマンド群のカテゴリが表示される。

Presetsを押して表示されたCompanionが対応するATEM Miniの主なコマンド

 「Program (M/E1)」を押すと、オンエアする入力を切り替えたり、選択した入力系統に表示するものを指定できる。左側のButton LayoutはStream Deckのボタンを表わしているので、まず右側のCAM1とCAM2を適当なところにドラッグアンドドロップしてみよう。それぞれを押す度に、入力が切り替わる。

 ちなみに、CompanionはATEM Miniのフィードバックにも対応しているので、1をオンエアしている時はCAM1ボタンが赤く点灯するし、プレビュー状態の入力は緑で表示される。

入力1(CAM1)と入力2(CAM2)のProgram表示をStream Deckのボタンに割り当てたところ

 次にPresetの「Back」を押して1つ前に戻り、「KEY's OnAir」を選択し、「KEY 1」を左側の空いているところにドラッグ&ドロップする。これで、KEY 1ボタンを押す度に、ATEM MiniのPinPのオン/オフが切り替わる。つまり、CAM1→CAM2→KEY1と押すと、ATEM Miniでやったのと同じように、2アクションでPinP表示がなされる(ただし、事前に一度PinPの表示場所をATEM Mini本体のPinPボタンで指定しておく必要がある)。

 1アクションでPinP表示させたいので、このKEY 1ボタンをカスタマイズする。Buttonsタブで、KEY 1を選び、右側のEdit Buttonタブを開く。今ここには、KEY 1をトグルでオン/オフする設定のみがある。ここで、「+Add key down/on action」の欄に「pro」などと入力すると、「Set input on Program」が候補に出るので、これを選ぶ。そして、今追加された欄の「Input」として「Camera 2」を選ぶ。すると、KEY1ボタンを押すだけで、オンエアが入力2に切り替わると同時に、カメラがPinPで表示される。

このようにデフォルトのKEY1のアクションに「Set input on Program」を追加し、「Input」として「Camera 2」を選ぶと、入力を切り替えつつPinP表示にできる

 ただ、これだと、CAM1ボタンを押した時に、PinPが残ったままになる。そこで、CAM1ボタンのEdit Buttonタブで、一番先頭に「Set Upstream KEY OnAir」を追加し、「On Air」の項目を「Off」に、KEY1の方では、この項目を「Toggle」から「On Air」に変更する。これで、KEY1を押した時にPinPが表示され、CAM1を押すと、PinPが消えて全画面のみとなり、1ボタンでのPinP切り替えができるようになった。

ATEM Mini単体でのPinPの表示切り替え
1ボタンで入力切り替え+PinP表示→元に戻すができるようになった

トランジション効果も適用

 現時点ではワイプのオンオフや入力の切り替えは瞬時になっている。フェード(ミックス)トランジションをかけながら画面をワイプ表示へと切り替えたい人もいるだろう。それも、Companionで1ボタンでできる。

 手順としては、カメラ(入力1)が表示されている状態から、(1) 入力2をプレビューにセットし、(2) ネクストトランジションでバックグランドとKEY1を選択し、(3) Autoトランジションをかけることになる。

 ButtonsタブでKEY1を選び、いったん全てのActionを消した後、(1) 「Set input on Preview」を追加し、「Input」に「Camera 2」を指定、(2) 「Change transition selection」を追加し、BackgroundとKey 1にチェックを入れ、(3) AUTO transition operationを追加する。

KEY1ボタンの内容をこのように編集する

 併せて、CAM1ボタンも編集し、(1) 「Set input on Program (Camera 1)」を「Set input on Preview (Camera 1)」に変更し、(2)「AUTO transition operation」を追加する。これで、ワイプ付き画面からカメラ全画面表示に戻す時もトランジションがかかるようになる。

CAM1ボタンの内容をこのように編集する
1ボタンでフェード(ミックス)トランジションをかけながら画面をワイプ表示へと切り替え

ワイプをアニメーションで拡大縮小アニメ

 さらに手の込んだことをやってみよう。ATEM Miniは、本体だけだと、画面上の上下左右四隅の決まった位置に決まったサイズでしかワイプを出せない。しかし、ATEM Software Controlの「パレット」から「アップストリームキー1」を開き、「DVE」タブを開くと、「位置」と「サイズ」のパラメータがあるので、これを変更することで、自由な位置に、自由なサイズで表示できるようになる。

ATEM Mini本体ではできないが、ATEM Software Controlのこの設定を変更することで、ワイプの位置やサイズを自由に指定できる

 また、そのタブを下の方までスクロールさせて「キーフレーム」で「Aを設定」あるいは「Bを設定」を押すと、キーフレームを登録でき、その状態から、「フル」や「縮小して消滅」を押すと、拡大縮小をアニメーションできるようになる。これを応用すると、カメラの映像が全画面表示から、徐々に小さくなっていき、入力2の映像がフェードインするという演出を行なうことができる。そして、これもCompanionなら1ボタンに登録できる。

DVEのキーフレーム設定で、ワイプのサイズ変更をアニメーション表示できるようになる

 ただ、これらのキーフレーム制御はCompanionからはできない。そこで活用するのがATEM Software Controlのマクロ機能だ。今回はCompanionの紹介記事と言うことでそれに焦点を当てているが、本来ATEM Mini本体でできない操作はATEM Software Controlで行なうもので、ATEM Miniユーザーがもっとも使うソフトの1つかもしれない。そして、ATEM Software Controlで行なった操作は、全てマクロとして記録できるようになっている。

 ただ、このマクロは少し癖があり、マクロ記録時に変更した点しか記憶してくれない。そのため、マクロ記録前に一度違う設定なりをしておき、記録時に初期設定を入力した上で、最終設定をに変更するという手順を踏む必要がある。

 例えば、ワイプをX(10.50):Y(5.00)の位置に、X(0.33):Y(0.33)倍の大きさで表示したい場合、

  • ATEM Mini本体のワイプの位置選択ボタンのどれかを押して、いったんワイプ設定を初期化する
  • ATEM Software Controlの「パレット」→「アップストリームキー1」タブでDVE以外のタブを選んでおく
  • メニューの「マクロ」から「マクロ」を選択
  • マクロウインドウの「作成」が選ばれた状態で「+」をクリック
  • マクロの名前(ここではPinP縮小セットなど)を入力して「記録」をクリック
  • ATEM Software Controlの「パレット」→「アップストリームキー1」タブで「DVE」タブを選択
  • 位置でX=10.50:Y=5.00、サイズはX=0.33を指定
  • 下にスクロールして「キーフレーム」の「Aを設定」を選択
  • マクロウインドウの赤丸を押してマクロの記録を終了する

 これで、キーフレームAにワイプの設定を指定するマクロができた。試しに、ATEM Mini本体のワイプの位置選択ボタンのどれかを押して、ワイプ設定を初期化に戻した後、マクロウインドウの「実行」→「PinPセット」をクリックして、再生ボタンを押してみよう。指定した位置、サイズにワイプが切り替わる。同じ要領で、X=0:Y=0、サイズはX=1.0に指定するだけのマクロを「PinP最大セット」といった名前で記録しておく。

 続いて、「キーフレーム」で「実行A」を押すだけのマクロを「PinP縮小アニメ」、「キーフレーム」で「実行フル」を押すだけのマクロを「PinP最大アニメ」などの名前で記録しておく。これで、ワイプを拡大縮小する準備が整った。

 「CAM1」ボタンと「KEY1」ボタンの内容をそれぞれ、下記の画像のように変更しよう。これでCAM1からKEY1を押すとワイプが縮小アニメーションされ、そこからCAM1を押すと拡大アニメーションされる。

CAM1ボタンの内容
KEY1ボタンの内容
これでこのように1ボタンでアニメーション付きワイプ表示への切り替えができるようになる

 ちなみに、ATEM Software ControlのDVEのタブを見ていて気づいた人もいると思うが、ATEM Mini本体ではHDMI 1しかPinPに使えないところ、ソフトを使うとほかの入力もPinPソースに指定できる。

OBSとも同時連携

 Companionは、ハードウェアだけでなく他のソフトとも連携可能で、OBSとも連動させられる。それには、OBSをリモートコントローするプラグイン「obs-websocket」を導入する。プラグインのサイトから、obs-websocket-4.9.1-Windows-Installer.exeをダウンロード、インストール。その後OBSを起動すると、web-socketの設定画面が出るので、パスワードを設定する。

OBSにobs-websocketプラグインをインストールして、パスワードを設定する

 次に、Companionの左ペインの「Instances」の検索欄に「obs」と入力すると、「OBS Studio」が表示されるので、それを「Add」する。「config」タブが表示されるので、「Target IP」に「127.0.0.1」、「Target Port」に「4444」と入れ、「Password」に先ほど指定したパスワードを入れ、「Apply changes」を押す。これで、「Instances」のタブでOBSの「Status」が「OK」になっているはずだ。

CompanionにOBSを登録したところ

 これで、Companion経由でStream Deckを使って、OBSの各種操作ができるようになる。これにより、例えば、OBSでシーン1を選択するとATEM Miniの入力をCAM1にして、シーン2を選択するとCAM2にするといった動作も、Companionでそれぞれ1アクションとして設定できる。

これでCompanionからOBSのシーン切り替えなども制御できる

 なお、Companionはボタン表示が日本語に対応しておらず、日本語だけのシーン名だとボタン上にテキストが何も表示されないので、Companion側で適宜英語のシーン名を設定する必要がある。

Stream Deckのマルチアクションと連携も可能

 Companionでは、ATEM MiniやOBSの様々な処理を1つのアクション(ボタン)にまとめて逐次実行できる。似た機能は、Stream Deck自体にも「マルチアクション」としてもともと備わっている。そして、このマルチアクションの1つにCompanionのアクションを組み込むこともできる。

 例えば、Stream Deckアプリで、どこかのボタンにStream Deckのマルチアクションを登録。Stream Deckのアクションとともに「Companion button」を追加する。Companion buttonは、ページとボタンの位置の組み合わせで指定するので、今実行したいCompanionのアクションが1ページ目の2に登録されているのなら、Button=「Button x.2」とPage=「1」を選べばいい。

Stream Deckのマルチアクションに、Stream Deckの機能とCompanionのボタンを組み合わせることもできる

 これにより、Stream Deckでオーディオを再生し、CompanionにてATEM Miniに登録したダウンストリームキーで静止画を表示するマクロを組めば、ポン出しとテロップ出しを1ボタンで実現できるなど、Companionだけではできない機能も実現できるようになる。

実はStream Deckなしでも操作可能

 ここまでCompanionを動かすハードウェアとしてStream Deckを使うことを前提説明してきた。実際、CompanionはStream Deckとの組み合わせることを想定して開発されている。ただ、Companionの画面の一番左にある「Emulator」、「Web buttons」、「Mobile buttons」を使うと、Stream Deckなしでもマウスやタッチパネルで操作ができる。

 とは言え、ATEM MiniやStream Deckの強みは、ハードウェアボタンを持っていることにあり、それにより手元を見なくても画面を見ながら、入力の切り替えなどの操作を間違いなく実行できるようになる。その意味では、本稿で紹介したようなマクロをひとまずCompanionのソフトだけで試してみて、うまくいくならStream Deckを導入するというテスト用に使うのはありだろう。

ATEM Miniユーザーならぜひ導入を検討したい

 以上の通り、ATEM MiniにStream DeckとCompanionを組み合わせることで、ATEM Mini本体だと数ステップ必要だった処理や、そもそも本体では実行できない処理をStream Deckの1ボタンでできることを紹介した。

 ATEM Mini、Stream Deck、Companionとも非常に多機能なものなので、うまく活用することで今回紹介した以上の機能性を実現できるようになる。ATEM Miniシリーズで配信や収録している人はもちろん、これからATEM Miniシリーズを導入しようかと考えている人も、この組み合わせを検討してみてはいかがだろうか。


    Companionで実行できるATEM Miniのコマンド
  • Set input on Program
  • Set input on Preview
  • Set inputs on Upstream KEY
  • Set inputs on Downstream KEY
  • Set AUX bus
  • Set Upstream KEY OnAir
  • Auto DSK Transition
  • Tie DSK to transition
  • Set Downstream Key On Air
  • CUT operation
  • AUTO transition operation
  • Change transition type
  • Change transition selection
  • Change transition selection component
  • Change transition rate
  • Set fade to black rate
  • Execute fade to/from black
  • Run MACRO
  • Continue MACRO
  • Stop MACROS
  • Change MV window source
  • Set SuperSource box On Air
  • Change SuperSource box source
  • Change SuperSource geometry properties
  • Offset SuperSource geometry properties
  • Change media player source
  • Cycle media player source
  • Mini-pro recording control
  • Mini-pro streaming control
  • Classic audio inputs control
  • Fairlight audio inputs control

    Companionで実行できるOBSのコマンド
  • Change Scene (pulls list of available scenes from OBS)
  • Change Previewed Scene (studio mode)
  • Smart Switcher (Previews scene; or transitions scene to program if already in preview)
  • Execute transition (studio mode)
  • Change Transition Type
  • Start/Stop Streaming
  • Start/Stop Recording
  • Set/Toggle Source Mute (Source: Name of Source or audio device in Mixer. Mute: True to mute, False to unmute)
  • Toggle Scene Item Visibility
  • Set Source Text (FreeType 2 and GDI+)
  • Trigger HotKey by ID
  • Reconnect