RODE Wireless Pro用のネックストラップハンガーを作成

UT/インタビューで2人の音声を明瞭に収録するのに、RODE Wireless GOシリーズのような小型ワイヤレスマイクは重宝します。ただUTやインタビュー調査のように参加者が入れ替わり立ち替わりして、かつセッテイング時間もない、服装も様々、という場面では、クリップやマグネットで衣服に固定しづらいことも。

そこで、当サイトでは3Dプリンターでネックストラップにとりつけられるハンガーを設計して活用していました。直接クリップ部分にヒモをひっかけるよりも姿勢が安定し、マイクが常に上(口元)を向きやすいメリットがあります。

ハンガーを使ってストラップに吊り下げた様子

しかし、2023年秋に発売されたRODE Wireless Proでは専用の充電ケースが付属しており、このハンガーパーツと相性問題が発生しました。

ハンガーが干渉して充電スロットに刺さらない

7時間程度保つというカタログスペックですが、慎重を期して60~90分のUTセッション毎に充電しておこうと思うと、都度ハンガーを付け外しする手間はばかになりません。

そこでWireless Pro充電ケース対応の新しいハンガーを再設計することにしました。

完成したPro用ハンガーがこちら。

RODE Wireless Goシリーズでは別売りだったマグネットがProでは標準で付属していますので、これを活用するスタイルです。今回はスマホケースなどで使われる柔らかいTPU素材で出力してみました。マグネットを固定する仕掛けが最低限なので、より摩擦が大きく外れにくいことを期待しています。

実際にとりつけたのがこちら。本体側上部が一応引っ抱えるようになっているので、見た目よりはスッポ抜けにくくなっています。普通にブラブラ振り回すくらいでは外れなさそうです。

Proケース対応の新ハンガーをMagClip Goマグネットにとりつけた様子

そして問題の充電ケースですが、こんな感じで収まります。

充電ケースにセットした様子

送信機のスロットはセンターと左側です。センターはそのまま刺さりました。左側も外周のフレームが干渉してしまいマグネットがズレるものの刺さります。実用上は問題なさそう。そもそもマグネットなので最悪付け外ししても手間はほぼありません。

ちなみに受信機も同じ形状ですが、ネックストラップで吊る必要はないと思うのでここでは考えないことにします。右の受信機とセンターの送信機の隙間はギリギリなのでつけたままセットするのは無理っぽいです。

これでストレスなく実査中に充電ができそうです。

こちらのハンガーを使ってみたいという方で、3Dプリンターをお持ちの方は以下のSTLファイルをご自由にご利用ください。また自身で出力できる環境がないが欲しい!という方がいらっしゃいましたらコメントからお問い合わせください。送料実費くらいで頒布いたします。

こちらのストラップで検証しております。

ソニック ストラップ 多機能 丸ひも ストラップ 青 MH-223-B

ソニック ストラップ 多機能 丸ひも ストラップ 青 MH-223-B

390円(12/22 17:05時点)
Amazonの情報を掲載しています

ユーザテストにおけるダミー情報のデザイン指針

ユーザテスト(UT)で例えば利用登録タスクなどで個人入力をしてもらう際、被験者自身のガチの個人情報を入れさせるのは躊躇われます。プライバシー保護観点からも望ましくないですし、なにか注文操作をしてもらって(寸止めするつもりでいてもうっかり)注文が確定しまっても大変面倒なことになります。録画した画面にも映り込んでしまうので録画データの管理が難しくなったり、漏洩した時の被害低減の点からも避けたいです。

ので、相当な理由がない限り架空の個人情報を与えて「これを自分の情報だと思って使ってください」などとすることが一般的だと思います。本記事ではダミー情報を使ってもらいつつ、極力実際の利用状況から乖離させないための工夫をまとめてみたいと思います。

大原則としては、「本来の利用場面で発生しえない負担や違和感を上乗せしない」ことがポイントになると思います。

■入力負担を抑える

ほとんどのリサーチでは文字入力操作の可否や速さを観察したいということはないでしょう。であればそこに時間をかけさせる必要はありません。特に入力が遅い低リテラシー層の対象者の場合、入力内容の文字数や難易度が所要時間に輪を掛けて影響をします。

  • できるだけ文字数を少なく
  • 難解な読みを避ける(もしくはルビをふる)
  • 変換辞書で一発で変換できるものを選ぶ
  • メールアドレスに含める記号を最低限にする

などに注意しましょう。経験上、エンジニアの方はメールアドレスに息をするようにアンダーバーとか入れてきます(笑)。そしてシニアの方などが入力方法がわからず時間を浪費するのです。

またOSの予測変換を積極活用していい場合、したくない場合はケースバイケースだと思いますが、挙動は確認しておくのが無難です。苗字を確定しただけで名前が候補で挙がって来てしまうこともあると思いますので、それが問題になる場合はセッション毎に予測変換学習をリセットするなどの工程が必要になります。

■項目別ポイント

性別(とそれを連想させる名前)

性別自体は選択式なので特にダミー情報なく自分で選んでもらうでも良いと思いますが、名前も性別情報を含んでいるので配慮の余地があると良いと思います。女性なのに「太郎」と入力させられるのは違和感を覚えられるかも知れません。性別くらいはその人にあわせてあげたいものです。一方で提示シートを男女別で作り分けるのも手間で差し換えも面倒ですし、昨今では性自認が実性別と異なるケースにも配慮が必要だと思うので、私が自分でデザインする時は男女どちらともとれる名前にすることが多いです。「男女に使える名前」とかググればたくさん出てきます。その中で対象者の年代に偏りがある場合は、なんとなくその世代に馴染みがありそうな名前をピックアップする感じ(例:シニア中心のUTなら、あまりキラキラしてない昭和っぽいの名前にするなど)。

氏名

全体的に一目見て覚えられ、読みも頭に浮かぶものが理想です。

Amazonのテストだからって「亜麻尊 太郎」みたいな苗字にする必要はありません。普通に日常的に聞き馴染みのある名前で良いと思います。ただ「楽天 太郎」とか「豊田 太郎」のように元から日本語として馴染みがあり、読みもすぐ想像できるようなものなら使っても良いと思います。明らかにダミー然としていることのメリットもあるかなと。

「太郎」と「太朗」、「裕子」と「祐子」みたいな紛らわしいバリエーションが浮かびそうなものも避け、小学生でもさらっと書ける名前、くらいのイメージで考えてみてください。

住所

住所も特に架空のものをでっちあげるより、その会社や会場の所在地など実在のもので良いと思います。特に郵便番号からの自動入力機能がある場合などは実在の住所でないと無駄な手間が発生する可能性もあるので、無難にリアルで馴染みにある住所がいいでしょう。

建物名や部屋番号まで正確に入れてもらう必要がない場合は番地までに留めた方が時短になります。逆にSNSなど大まかな都道府県や市区町村までしか要求しないフォームでもデータシートにはしっかり番地まで記載しておき、そこから必要な部分を選んで入れられるかと評価する方が実使用場面に近いと言えるでしょう。

電話番号

電話番号を入れる欄だとわかってくれたことさえ検証できれば、入力できるかどうかは検証外なことがほとんどでしょう。03-1234-5678とか、携帯番号なら090-1234-5678とかで良いんじゃないかと思います。自分の番号と同じくらい簡単に打てるという感じで。

国際表記で+81が付与してあって、先頭0抜きで書いてほしいフォームなんかもあると思うので、市外局番/0A0部分くらいはリアルにしておけば良いんじゃないでしょうか。

生年月日

1桁と2桁を混在させる位でしょうか。0埋め周りの挙動をみたりできます。あとプルダウンのスクロール幅が大きいケースを見ておくために、日付を大きめ(遅め)にしたりします。3月20日とか。

年は参加者層の平均くらいを設定します。和暦か西暦かは対象フォームにあわせるか並記するくらいで良いでしょう。

メールアドレス

ここは一字一句正確に記載することの負担が大きい項目なので、慎重にデザインしたいところです。入力だけしてもらえばなんでもいいのか、実際にサーバーに送信して返信を受信できる必要があるかによっても自由度は違ってくるでしょう。後者の場合はさらにセッション毎に違うアドレスにする必要があるかどうかなども検討します。

まずメールアドレスの様式はRFC5321/5322などで既定されています。

  • 以下の文字を含むもの / ! “ # $ …
  • @が2つ以上含まれるもの
  • @の直前が英数字以外のもの例)taro.@yamap.co.jpはNG.
  • .(ドット)または_(アンダースコア)が2つ以上連続しているもの
  • 最初の文字が英数字以外のもの

最低限それには沿っておきましょう。

開発者/リサーチャー目線でデザインすると「formtest2024_01@gmail.com」みたいにしがち。プロダクト名やリサーチテーマなどを入れて名前空間を意識してユニークにして、etc.、etc.。こうしたアドレスは不必要に長いし、アンダーバーとか世の中の非IT層の人は滅多に打たない記号が入っていてよろしくないです。だからといって「formtest」みたいに複合語を区切りなしで使うと綴りが読み取り辛くなります。どうしても区切りを入れたい場合はせめてハイフンが良いでしょう。フリーアドレスなどで取得が必要な場合、一般的なワードは既に取られていることも多いですが、うまく数字などを組み合わせてデザインしましょう。

視認性の面では、「0とo」「1とl」「mとrm」など見分け辛い文字を使わないこともポイントです。もしくは先にも書いた通り、それらが充分見分けられるフォントとサイズで提示しましょう。

受信が必要になるタスクの場合、Gmailなどフリーアドレスを利用することになるでしょう。Gmailなどは+を入れて派生アドレスを簡単に増やすことができるので利用すると良いでしょう。例えば「hogehoge@gmail.com」というアドレスを取ったとして、「hogehoga+01@gmail.com」とか「hogehoga+02@gmail.com」は全て同じメールボックスで受信されます。タダとはいえ無駄にアカウントをたくさん作ってサーバーリソースや名前空間を圧迫するのは避け、節度をもって利用させてもらいましょう!なお共通メールボックスを利用する場合、前セッションのメールは削除するのも忘れずに。

クレジットカード情報

これも桁数さえ合っていれば基本充分だと思いますが、クレジット番号チェック機構が備わっているフォームの場合は、カードブランド毎に決まっている動作検証用番号を使うとよいでしょう。

手元のカード券面から必要な情報が読み取れるか検証したい場合、記載情報を記入するとクレカっぽい画像を生成してくれるジェネレーターサイトを使うと良いかも知れません。下の方でVisa、Masterだのイシュアを選択すると数字はランダムで生成してくれるので、名前だけ自前で決めた名前に直して画像を取得すればOKです。

■ペライチにまとめて記憶負担を抑える

本来自身の名前や住所、電話番号などはほとんどの人は暗記しており負担なく再生できる記憶であるのに対し、UTの最中に唐突に与えられたダミー情報はそれを覚えて再現する負担が加わります。そこに被験者が認知リソースや時間を割かなければいけない状況を極力排除しなければなりません。

例えば、「今日は自分の名前のかわりに山田太郎を使ってください。」「あなたの電話番号は090-1589-3xxxです。住所は…」などと口頭で伝えたとして、実際の入力フォームを目の前にした時にスラスラと書き出せる人がどれだけいるでしょう。名前、住所、電話番号、メールアドレスなどあったら短期記憶に保持できる情報量ではありません。

なので紙に印刷するなどして手元に置いてあげることが有効です。「ここに書いてある内容をご自分の情報だと思ってお使いください。必要だと思った時にいつでも見ていただいて構いません。」などとして差し出すのです。Zoomなどでリモート実施する場合は、仕方ないのでテキストでチャット欄に貼ってあげるなどします(コピペしてほしくない場合はその旨を伝えます)。

ちなみにこの情報シートをデザインする時、必要な情報だけを利用する順番に記載するとヒント/バイアスになってしまいます。実際のフォームにはない情報もある程度は交え、順番も実際のフォームで求められる順とは変えておきましょう。もちろん目的の情報を探すのに苦労するほど複雑にする必要はありませんが、、、

また厳密には見出しが対象フォーム上の項目ラベルと合致してヒントになってしまうのも避けたいです。フォーム側が「名前」になってたら、提示シートは「氏名」とか「姓名」などにします。

あと充分なフォントサイズで印刷してあげることも重要です。シニアの方が都度都度メガネをズラしたり紙を手に取ったりすることも本来の利用場面では起こりえないことです。特にメールアドレスはしっかり識別できる字体とサイズにします。

■提示シートサンプル

例えばこんな感じでペラ1枚作って差し出すといいと思います。

流用できるようWordのファイル置いておきます。メールアドレスは実在するといけないので少し長めにしています。現時点では存在してなさそうですが、流用される時はメールアドレスだけは実在して持ち主に迷惑がかからないよう注意してください。こちらなどで実在確認ができます。

■まとめ

思いついたポイントを書き連ねてみたらだいぶ長くなってしまいました。たかがダミー情報にここまで配慮する!?と思われたかも知れませんが、できるだけ普段の利用状況に近い形でタスクに望んでもらう、というUTの大原則に従うならばこういう配慮は有効かなと思います。また別段リサーチ毎に変える必要もないことも多いと思うので、一度作り込んでおけばシートも含めて使いまわしもできるんじゃないでしょうか。

他にもこんな点を留意したらいいんじゃないかというアイデアがありましたら是非コメントでお寄せください。

動画眼マーカー→動画眼3→動画眼Liteの最新ワークフロー解説(時刻同期方式)

動画眼マーカーと動画眼3が時刻で同期可能になったので、改めて動画眼ファミリーの使用方法を解説してみたいと思います。ユーザーテストやインタビューの動画記録にインデックス(チャプター点)をつけて、特定の箇所を素早く見返したり、プレゼンしたりといったことを目的としたソフトウェア群です。

■登場人物紹介

動画眼3(動画にインデックス付け)

中核となるソフト。Windows & Mac対応。要インストール。

動画ファイルを再生しながら特定の位置(話題やタスクの切れ目や注目箇所など)にインデックスを打て、それをダブルクリックすることでその箇所を瞬時に頭出しできます。できるだけ省力化できるよう再生操作(指定秒数スキップなど)などはキーボードショートカット化してあり、また定型文をFnキー1~5で一発挿入することも可能。

動画眼マーカー(リアルタイム記録)

Webアプリ。PCやスマホのブラウザからURLにアクセスするだけで使えます(データーはサーバーには一切保存しませんし、必要なら一式GitHubからダウンロードしてローカル環境で動かすこともできます。ただし非SSL環境ではモバイルブラウザのセキュリティ制約でコピー、共有がでません)。

動画眼3が録画したファイルに対してインデックスをつけるソフトなのに対し、こちらはUTやインタビューのセッション中にリアルタイムで「今ここを区切りたい!」って時にマーキングすることができます。作成したデータをファイルで保存し、別で録画した動画ファイルと一緒に動画眼3に食わせると、すぐに動画にインデックスがついた状態で見返し分析作業ができます!

動画眼Lite(配布用ビューワー)

WebアプリというかHTMLファイルセット。原則PC向け(スマホは想定していません)。

動画眼3でインデックスをつけた状態でチームで閲覧したりクライアントに納品したいことがあると思いますが、「動画眼3をインストールしてください」とは言いづらいことも多いでしょう(企業さんでは申請が必要だったり)。そこで編集機能はもたないものの簡単に、動画ファイル、HTMLファイル、インデックスデータファイルの3点セットで渡すだけで、ブラウザ上で即閲覧可能にするビューワーを作りました。動画眼3から簡単に生成することができます。

■ワークフロー解説

0. 動画を撮る

セッション中、なにがしかの動画は撮っているものとします。今ですとOBS Studioで様々な映像ソース(画面キャプチャ、手元、表情など)を合成して1つの録画に撮るなんてことも簡単ですし、リモート実施ならZoomなどの録画機能で記録しているかも知れません。

ポイントはその動画の録画開始時刻が正確にわかることです。OBS Studioならデフォルト設定でファイル名が録画開始時刻なので「2023-12-10 16-46-36.mp4」みたいなファイル名になると思うので、それで大丈夫です(.mkvで保存している場合は、「録画の再多重化」でmp4に変換しておいてください)。

ビデオカメラで録画したMP4ファイルを使う場合、そのファイル名や作成日時が録画開始時刻を指しているかどうか確認してみてください。もしそれも難しい場合は、秒まで正確な電波時計やスマホの時計アプリなどを映した状態で録画ボタンを押しておくでも良いです。とにかく録画開始した瞬間の正確な日時が重要になります。

また動画でなくICレコーダーなどで録った音声ファイル(mp3、wavなど)でも使用可能です。

1. 動画眼マーカーでセッション中に記録する

こちらが動画眼マーカーの画面です。PCでもスマホでも基本は同じです。余裕があればモデレーターが操作してもいいですし、見学者、記録係が担当しても良いでしょう。

下の方に青字で表示されているのが現在時刻です。

ピンクの部分になにかテキストを打ち込んでEnterキーを押すか、右のペンボタンをクリックすると薄緑のエリアにチャプターが書き込まれます。特にメモは不要でチャプターだけ打てれば良いという時は単にペンボタン押していくだけでもOKです。

タイムスタンプは修正不可能ですが、メモはクリックすると編集できます。

一番下段のF1~F5ボタンは定型文ボタンです。現在のバージョンでは内容をカスタマイズはできません(GitHubからソース一式をダウンロードしていただいてHTMLファイルを直接編集すれば可能です)。

セッションが終わったら右上のローカル保存ボタン(下向き矢印アイコン)を押して、テキストファイルとして保存します。スマホの場合は共有ボタンになっているので、ご利用のアプリやサービスなどにアップロードするなどして保存してください。その左のボタンでクリップボードにコピーもできます。ようはただのテキストデータなので、最終的に動画と同じフォルダに同じファイル名で保存し、拡張子を「.dggn.txt」にします。例えば上のOBS Studioで撮った動画が「2023-12-10 16-46-36.mp4」なら「2023-12-10 16-46-36.dggn.txt」にして同じフォルダに置きます。

こんな形になっていればOKです。

なお.dggn.txtという拡張子ですが、末尾は.txtです。つまるところメモ帳やテキストエディタで開けるしタイムコードと形式さえ変えなければメモ部分は編集しても大丈夫です。

2. 動画眼3に読み込んで確認する

では動画ファイル(MP4)とチャプター記録ファイル(DGGN.TXT)を合わせて動画眼3で読み込んでいきます。

まず動画ファイルを動画眼3の黒い部分にドラッグ&ドロップします。これで同じフォルダ、名前の.dggn.txtファイルも自動的に読み込んでくれます。ただしタイムスタンプが動画眼マーカーで記録した時刻形式だった場合、写真のような「時刻変換」ダイアログが出てきます。これがVer 2.10.1のキモです。

ファイル名から録画開始時刻を取得した状態

ここに動画の録画を開始した時分秒を入れてあげればOKなわけですが、それを支援するボタンが2つあります。

・動画ファイルの生成日時から取得

動画が記録後に変換や編集を一切してない生ファイルの場合、おそらくファイルのタイムスタンプは録画開始時点になっていると思います。その場合はこのボタンを押して取得できます。

ただし録画ソフト/機器によっては録画終了時点になるものもあるかも知れません、mkv->mp4などの変換を行ったり編集をした場合はその作業をした時点のタイムスタンプに書き換わってしまうので、この方法は使えません。

・動画ファイル名から推測

OBS Studioのように録画開始時点の日時をファイル名に入れてくれるものの場合、こちらのボタンを押せば推測して入れてくれます。「推測」と書いたのはそのファイル名の記載ルールが多岐に渡るため、すべてのパターンには対応しきれないからです。特に「:」はファイル名に使えないので、かわりにハイフンだったりアンダーバーだったり、区切らずに6桁数字だったりします。日付との区別も問題です。現状OBS Studio形式をはじめ何パターンかに対応させていますが、上手くいかなかったらごめんなさい。「こういうファイル名ルールに対応してほしい」などリクエストを上げていたらければできる限り対応していきたいと思います。

以上、どちらの方法も上手くいかなかった場合は、手入力で録画開始の時分秒を入れてください。

下の写真が時刻同期が成功した状態です。

動画の録画開始が16時46分36秒でした。そして動画眼マーカーで記録した最初のチャプターは16時49分47秒でした。チャプターの時刻から録画開始時刻を引き算してあげることで、動画開始から3分11秒目が1つ目のチャプター位置、ということになっています。これで「3:11」となっている水色の部分をクリックすれば、当該箇所にジャンプできるはずです。

もちろん動画眼3上で新しいチャプターを追加したり、既存のチャプターをクリックして編集したりもできます。

ちなみにチャプターは最終的にタイムスタンプとメモテキストのペアがあれば良いので、必ずしも動画眼マーカーや動画眼3上で作成する必要はなく、例えば動画音声を文字起こししたデータを使って作ることもできます。現状はPremiere Proの書き起こし出力ファイルからの変換や字幕データの標準フォーマットであるSRT形式からインポートすることもできます。

3. 動画眼Lite形式で配布する

さて、動画眼3上で良い塩梅にチャプターが打てたとします。これをそのまま閲覧可能な状態で誰かに渡したいとします。もちろん相手に動画眼3を入れてもらって、mp4とdggn.txtファイルをセットで渡せば良いのですが、相手によってはソフトのインストールは難しいケースもあると思います。その時は、動画眼3の「ファイル」メニューから「動画眼Lite形式で書き出し…」を選び、次いでダイアログで「ダウンロード」を選択してください。

そうすると、同じフォルダに.htmlファイルと.json.jsという2つのファイルが生成されます。

この状態でhtmlファイルを開くと、お使いのブラウザが開いてこのような画面になるはずです。これが動画眼Liteです。

標準ブラウザが使われるので、お手元のPCの設定次第でEdgeだったらいChromeだったりFireFoxだったりで開かれますが、基本的にはどれでも使えるはずです。編集機能はありませんが、

  • チャプター該当箇所の頭出し
  • ショートカットによる指定秒数スキップ
  • 特定文字列を含むチャプターの検索、絞り込み

などは動画眼3と同じように使えます。

必要があるのは赤枠で囲んだ.html、.json.js、そして.mp4の3点です。(.dggm.txtは動画眼3で編集を行わないなら不要)。動画以外のファイルのサイズなど誤差レベルですし、ソフトウェア自体は含んでいないので、気軽に渡せるんじゃないかと思います。使用時は必ず同じフォルダに同じファイル名(拡張子違い)で置いてもらってください。

■まとめ

以上、2023年12月時点の最新版を使った時刻同期によるワークフローを解説してみました。パッと見ややこしく見えるかも知れませんが、流して感覚を掴んでもらえればそこそこシンプルで汎用性も高い方法なんじゃないかと自負しています。それでもわかりづらい、使いづらいなどありましたらご意見いただければと思います。

本ツール群が製品開発のためのUT/インタビュー業務にお役立ていただければ幸いです。またこんな用途で使っています、などありましたら是非お聞かせください。

動画眼3 2.10.1と動画眼マーカー2.0をリリースしました

春のはほぼ完成していたのに、なかなか配布ビルド環境の更新とかマニュアル書いたりとかする時間がとれずにいましたが、ようやく更新できました。

ダウンロードか配布ページGitHubリポジトリからどうぞ。

今回の目玉は動画眼3と動画眼マーカーの連携をより簡単にする時刻同期機能です。詳細は以前の記事にまとめてあります。

簡単に書くと、いままでは録画環境(OBS Studioやレコーダー)と動画眼マーカーのタイムコードを手動で「せぇの!」で合わせる必要がありましたが、動画眼マーカー側は時刻で記録するようにしました。そして動画眼に動画とメモをインポートする時点でその動画が何時何分に録画開始されたかを指定することで帳尻をあわせます。バタバタしがちなセッション開始時点の作業が減るので使いやすいんじゃないかなと。動画の録画開始時刻も動画ファイルのファイル名やタイムスタンプから半自動で取得する工夫もしてみました。よろしければお試しください。

■その他の更新内容

新機能

  • Premiere Proで書き出したcsv形式のマーカーのインポートに対応
  • Premiere Proの書き起こしデータの新フォーマットに対応(v21辺りからの:区切り->;区切りへの変更等)
  • 「ヘルプ」メニューに動画眼マーカーへのリンクを追加

修正

  • 100分を越えるタイムコードが正しく表示できなかったのを修正
  • Shiftキーを押しながらジャンプでn倍動作がキーボードショートカット(Ctrl+W/Q)では効いていなかったのを修正

仕様変更

  • macOSでも全てのウインドウを閉じたらアプリケーションを終了するようにした(Windowsは元から)
  • Windowsのインストーラー形式が変更。Setup.exeをダブルクリックするだけでインストールが完了し、スタートメニューの登録されるようです。一度起動したらSetup.exeは削除してOKです。

今回から配布パッケージの作成と署名にElectron-Forgeという仕組みを使用しています。その関係で

  • 英語環境でもアプリ名が漢字で「動画眼3」と表示されるようになったかも(以前はdo-gagan3)
  • 内部名称がかわって設定が引き継ぎされないかも
  • Windowsでインストール手順が変わった

1つ目は色々いじってみたんですが解決できず。たぶん海外で使ってる人はほぼいないと思うので、漢字表記で統一することにしました。実際に英語環境でテストできてないですが、たぶん「動画眼3」って見えてると思います。日本語以外の環境の方、ご不便をおかけします。

またWindowsはインストーラーが完全に別モノになりました。Squirrel.Windowsという仕組みを使っています。特長として、

  • Setup.exeをダブルクリックするだけで、「次へ」など押さずにインストール完了する
  • インストールはユーザごと(単一PCでも複数ユーザが使いたい場合、各々でSetup.exeを実行する必要があります)
  • (試した範囲では)電子署名していなくても警告が出ない?
  • ブラウザのように操作なしで自動更新できる(仕組みを用意できる)

という雰囲気です。Setup.exeを実行するだけで動画眼3が開くと思います。この時点でスタートメニューにもショートカットが登録されていると思うので、次からはそちらで起動します。Setup.exeは捨てても大丈夫だと思います。

自動アップデートについてはmacOS環境もあわせて追々検討します。業務アプリなのである日勝手に更新されたのがバグってたりするとご迷惑おかけするので慎重姿勢です。ただこのブログで更新をウォッチしている人ばかりでもないと思うので、なんらかアップデートが通知される仕組みは作りたいです。

夢のUTラボの天吊りPTZカメラをお手軽実現!~OBSBot Tail Air

90年代~00年代頃、ユーザーテスト(UT)と言えば専用のラボで実施するのが当たり前でした。今でも大きな会社さんでは自前のリサーチラボを持ってたりしますが、一方でUT自体が一般化するに連れ、

  • 普通の会議室で民生用ビデオカメラ機材を使ってお手軽に実施することも増えた
  • Webやアプリなど画面内の出来事が観察対象で画面キャプチャを使うことが増えた

等の理由で本格的なUT用ラボを使ったことがないという人も増えているんじゃないでしょうか。ここでいう本格的なUT用ラボの特徴は、

  • ドラマの取調室みたいなマジックミラー越しに観察できる部屋(観察ルーム)が隣接している
  • 天井に監視カメラがついており、観察ルームからカメラの向きを操作して任意の場所をアップで映せる

といったところです。カーナビとかデジカメといったハードウェア製品のUTだったり、インタビュー調査ではまだまだカメラで実像を映しての観察や記録もニーズがあり、個人で小規模な案件を中心にお手伝いしている私などは、「一般の会議室UTで、本格的なUTラボに近い実施環境を実現する」が永遠のテーマです。

本日ご紹介するのは、そんな憧れの天井遠隔操作カメラに近い機材を持込み&無工事で実現できる製品です。その名はOBSBot Tail Air。クラウンドファウンディングで先行ゲットしたので動作チェックをしながらこの記事をしたためていきます。

2023.12.6追記

実際に現場で使ってみましたが、あまり距離を離してしまうと画角的には不足を感じるかなと思いました。天井とか被写体から遠い位置に設置してしまうと、部屋の全景を撮るとかにはいいですが、手元のスマホ画面とかを覗き見られるほどのズーム倍率がないです。しかも本機は光学ズームではなく4倍デジタルズームなので、拡大するほどに画質は落ちます。それでさえ4倍では足りないという場面もありました。原理、機能的には天井カメラに近いですが、レンズ画角的にいうと代わりになるものではないなという感じです。

■何故UTでPTZカメラが必要か?

PTZカメラとは「パン-チルト-ズームが遠隔操作できるカメラ」を意味します。パンとチルトは左右と上下の動きのことです。上下左右動作とズーム動作の頭文字をとってPTZです。

UTでは製品を操作する参加者の手元だったり表情を観察するのに顔を撮ったりしますが、参加者が持ち方や姿勢をコロコロ変えるので、都度カメラもそれを追って調整する必要が発生しがちです。そんな時、同室内のモデレーターや撮影スタッフがいちいちカメラを動かしていたら効率も悪いし参加者にも「撮ってる」圧を与えてしまい好ましくありません。そんな時に別室の観察スタッフがリモート操作でカメラをうぃーんと操作できると色々捗るのです。

しかしこのPTZカメラは普通に買うと軽く数十万円します。天井に据え付けるとなればさらに工事費がかかりますし、社内の会議室とか外部の貸し会議室では現実的ではありません。

■OBSBot Tail Airとはどんな製品?

OBSBot社は小型で安価なPTZカメラ(=パン-チルト-ズームができるカメラ)をリリースし続けている会社で、最近ではOBSBot TinyシリーズというUSB接続のWebカメラ版がメジャーです。最近はZoomなどで見学者に配信することも多く、OBS Studioなども普及してきているので、USBでPCに直接映像を入れられるWebカメラタイプは好都合です。価格も4万円程度とWebカメラとして高いですが、ビデオカメラよりは安い、PTZカメラであることを考えると激安とも言えます。遠隔操作は専用PCアプリか専用リモコンを介して行えますが、いくつか難点もありました。

WebカメラタイプのOBSBot Tinyの難点

OBSBot Tinyシリーズは私も3台ほど導入して使いまくっていますが、PTZ制御周りで弱点もあります。ひとつはPC/Macの制御アプリを使う場合、USBで直結しているPC上でアプリを動かす点。当たり前ちゃ当たり前なんですが、結果としてOBS Studioを起動して収録/配信をしているPC上でしかPTZ操作もできないことになります。私の場合モデレーターもやりながら収録や配信も自前のPCでやるので、PTZ操作も自分がやることになります。「観察担当がこっそり操作」ができないのです。モデレーターは忙しいのでカメラは忘れがち。観察担当からチャットで「手元が映ってません!」と連絡が来て慌てて追従操作をしたりということがよくあります。それなら観察担当者が直接カメラを操作できたらいいのにと思うことがよくあります。

では別売りのリモコンを使えばイイジャナイ!と思うわけですが、これまたあまりイケてません。これは本質的にはPCにワイヤレスキーボードとして認識される仕組みで、リモコン上のボタンはPCからはキー入力として送られます。アプリケーションが手前にあればそれを受け取ってカメラ制御に渡すわけですが、例えばOBS Studioとか記録のためのWordとかを操作中だとそちらに無用なキー入力イベントが混入してきてしまいます。結果としてメモ用PCとOBS Studioで録画配信をするPCを別にわける必要などが出てきてしまいます。

またUSBという規格の弱点として、

  • 数m以上の長いケーブルを使う
  • 複数台つなぐ

などすると不安定になるのも不安要因です。インタビュー視点、顔アップ、手元、などいくつもカメラをつなぎ、更にRODE Wirelessシリーズのようなマイクも使ったりするとPCのUSBポートは渋滞して不安定になります。画角によってはPCから離れた場所に設置したくてケーブル長が問題になることも。そういう時に台数が増えても安定して収録できるATEM Miniなどの外部スイッチャーを使いたいのですがHDMI出力がないカメラはつながりません。HDMIがついたPTZカメラとなると途端に数十万円コースになるのです。OBSBot社からWebカメラ(UVC入力)をHDMI出力に変換するアダプタなども出ていますが、これもPTZ操作はできるけどフォーカスが調整できないとかゼツミョーに実用性が今一歩でした。

そこでOBSBot Tail Airですよ!

前置きが長くなりましたがようやくOBSBot Tail Airの話です。特徴として、

  • (micro)HDMI出力
  • Wi-Fiや別売りアダプタを組み合わせて有線LAN経由で映像送信
    • 単体でYoutubeライブなどにRTSP送信
    • NDI HX3形式での送信(別売りのライセンスキーが必要)
  • 従来通りWebカメラ(UVC)接続
  • BluetoothリモコンやスマホアプリでPCを介さずにPTZ制御
  • 4K/30pまたは1080/60p
  • f1.8の明るいレンズ
  • ToFセンサーで正確な測距→オートフォーカス精度
  • 3.5mm入力で外部マイク対応
  • バッテリー内蔵で一定時間ケーブルレスでも動作
  • microSDカードに直接録画

といった点が挙げられます。太字にしたところがユニークで強力なポイント。「HDMIで映像を出しつつ、全く独立でリモコンやアプリで制御ができる」という点だけでUT用途的にはもはや神デバイスです。アプリはWi-Fi経由なので現場でネットワーク環境が必要になりますが、別売りのリモコンならBluetoothで直接カメラを制御するので持ち込んだ現場でなんの前提条件もなく使用できます。なんなら壁越しで別室からも制御できるはずです。逆にアプリが使える環境だと、自慢のAIトラッキングで顔や特定のオブジェクトを自動追尾させるなど便利な機能も活用できます。

またHDMIのかわりにネットワーク映像伝送ができるのも更なる伝送距離が賄えたり、部屋をまたいだ伝送がしやすくなったりするポテンシャルがあります。社内ネットワークなどに接続できるのであれば別フロアの会議室を観察部屋にすることも簡単にできてしまうでしょう。

ちなみにこれまでのデジカメやGoProのようなアクションカメラでもWi-Fi経由でYoutubeやFacebookなどにライブ配信できるものはありました。しかしUTではそうした公開配信向けのサービスを利用することは(仮に限定配信設定を使うとしても)抵抗があり結局役に立ってきませんでした。RTSPを使ったプライベート配信も専用サーバーが必要だったりかなりスキルを要します。それを置き換えるのがNDI HX3対応になります。数十万円級のPTZカメラでしか実現してなかった部分です。LAN内でとても簡単に映像伝送を行う規格です。OBS Studioでもプラグインをインストールすれば簡単にソースとして受けることができます(後述)。別途利用ライセンスを購入する必要がありますが、総額としては全然安上がりです。

Wi-Fiだけでなく有線LANが使えるのも安心感が高いです。専用アダプタはPoE対応なのでアダプタ側に電源ラインをつないでおけば、アダプタからカメラまではケーブル1本で済み、見えるところの配線がスッキリ設置できます。

そんな特長は自分の業務案件にピッタリすぎてクラウドファンディングが開始した瞬間に秒で予約してしまいました。

■届いた!

2023年11月末、ついにクラウドファンディング参加者向けの先行発送分が到着しました。本体以外にもいくつか必要そうなアクセサリがセットになったパッケージ「パワーアップコンボ」を買いました。写真は左から

  • PoE対応ネットワークアダプタ(\14,580)
  • 本体(\68,909)
  • リモコン(\11,800)

です。他に、NDIライセンス(\14,580)、microHDMIケーブル(\2,250)、NDフィルターセット(\8,800)もついてきています。カッコ内はこれから単品購入する場合の公式サイト価格です。コンボにしても総額でそこまで割引きはない感じですね。送料のロスはあるかもですが必要なものを順次買っていくでもいいかも知れません。自分が注文したクラウンドファウンディングの先行予約価格は$649でした。\150/$とすると\97,350。送料が割と高かった気がしますが、まぁ早期ゲットできたのでアリです。

これからUT向けに買おうと思う人は、まず本体とリモコンだけでもいいかも知れません。ネットワーク伝送したい場合はNDIライセンス、Wi-Fiが不安な場合に有線LANアダプタという感じでしょうか。ケーブルやUSB-C充電器は国内で手に入る汎用品で充分かと(充電仕様は5V/2AでPDすら不要ぽい)。NDフィルタも画面を撮影するには便利かも知れません(後述)。

■ファーストインプレッション

ちょうど使えそうな案件に仕掛かり中だったので、速攻で開封してテストしてみました。

アプリがちょっとおかしい

iPhoneアプリをインストールしてみるとログインを要求されます。これがちょっとおかしい。登録はeメールアドレスでするのに、なぜかログインは電話番号+SMS認証フォームが表示されます。登録時に電話番号入れてないし、試しにログイン画面に電話番号入れて見ても形式があわないとエラーになります。つまり、iPhoneでは初回なのでメールアドレスで登録し、そのままログインできて使えてるんですが、別のiPadにもアプリを入れてみるもログインしようがない。新規登録画面にいってメールアドレスを入れて見ると「登録済みです」といわれ進めません。詰みです。このままiPhone側でうっかりログインまで外れてしまったら再接続できない状態。これは早急に対応してほしいものです。

PCアプリからはログインを求められないので普通にネットワーク経由でも使えます。

とりあえず映った、画質良好

そんなトラブルがありつつもとりあえずiPhoneアプリはつながり、HDMI出力とOBS StudioへのNDI伝送は成功しました。映りも上々で、1/1.8インチセンサー成りの室内でもそこそこの明るさで撮れていると思います。まずはこれで安定して長時間動作してくれれば今回の案件には投入できるかなというところです。本体は結構熱くなるしバッテリーも結構な速さで減ります。公式では154分となっていますが当然撮影条件によるでしょう。

天井から逆さ吊りする場合、映像を180度回転する必要があります。最初アプリでどこを探しても左右反転しかなくて焦りました。もう逆さまにしないで天井から吊る治具の構想まで練ったくらい。しかしFAQを読んでたら「逆さまにすればジャイロが検知して自動的に回転するよ」って書いてましたw。なるほどその発想はなかった。一安心。

出力/録画は排他条件が厳しめ

アプリで設定画面をいじってみてわかったんですが、UVC(USB Webカメラモード)、NDI、HDMIの出力や録画は排他のようです。標準でHDMI出力されている状態で、UVCモードをオンにしようとすると「NDI/録画/ライブストリーミング/HDMI/RTSPは利用できなくなります。」という確認ダイアログが出ます。つまりUSB出力以外全部無効になるって感じですね。またNDIモードをオンにしようとすると「UVC/ライブストリーミング/HDMI/RTSPは利用できなくなります。」とのことなので、録画以外は止まるということっぽいです。「同室内のモニタにHDMIで映しつつ、NDIで遠隔伝送」ということはできないっぽいので惜しいところです。同室内もNDIモニタリングするしかなさそうですね(NDIは同一ネットワーク内の複数のクライアントで同時視聴は可能)。またHDMI以外では同時録画できないとすると、「万一ネットワーク配信が途切れた場合のためにローカルでバックアップ録画」みたいなこともできないってことですね。

主な使い方はHDMI出力しつつバックアップ録画、に落ち着くかも知れません。またはNDIを使う時は安定重視で有線化して、可能ならばNDI専用のネットワークを構築するとかかなぁ。NDIの安定性については追々検証していきたいと思います。

アプリでできる便利機能

OBSBotは元々画像認識による自動追尾やズームが売りになっていて、Tail Airではそれがさらに発展しているようです。表情カメラとして使う時に顔認識追尾はありがたいんですが、正直精度がイマイチで誤爆して明後日の方向を映してしまうことがあるので実務ではオフにしていました。こいつはどうでしょうね。

新機能としては、AIがいくつかの画角を提案してくれてタッチで選ぶ疑似マルチビューみたいな機能がつきました(AIディレクターグリッド機能)。全体や顔アップ(複数人映ってる時はそれぞれだったり全員が入る画角だったり)を切り出してくれます。ズームしてもわりかし綺麗。

顔以外のものを範囲選択して追尾するオブジェクトトラッキングも多分初搭載。DJIとかInsta360などのジンバル製品やドローンでよくあるアレです。ユーザーが手にしているスマホとかも追ってくれるので重宝しそうです。試した範囲では精度もまずまずですが、やはりスマホが頭に隠れて見失ったりすると的外れな画角に行ってしまって戻ってこない、みたいなことはあり、60分とか90分の実査を無操作で乗り切れるかというとまだ足りないかも知れません。マニュアルで追い続けるよりは遙かに楽なのは間違いありません。

スマートリモートコントローラー

アプリでできる全てがリモコンからできるわけではありませんが、ネットワーク接続不要で普通に”リモコン”なのはとても便利です。Bluetoothなので壁1枚くらい挟んで観察室からでも普通に操作できちゃうはずです。

できることはパン、チルト、ズームの他に、3箇所の定点の保存と呼び出し、シャッター操作、本体の電源ON/OFF、追尾モードの切り替えなど。面白いのは、レーザーポインターを内蔵していて、それで指した点をズームアップさせる機能です。ミサイルのレーザー誘導みたいです。ただまぁこれもちょっと実用性には今一歩という感じ。取説に情報が少なく動作ルールがよくわかりませんが、自在に誘導できるというところまでは行ってません。たぶんジンバルには連動してなくて、今映ってる画角内でのデジタルズームでアップにできるだけっぽいです。もちろん画角に入ってないところにレーザーを当てても検出のしようがないですが、画面の端っこなんかに見えてる時は首振りまでして追ってくれるといいなと思います。

Bluetoothでレーザーポインターまで搭載しているので、電源は乾電池ではなくUSB-C充電式になります。うっかり充電切らしてしまうと使えないので注意が必要です。

NDフィルターが意外と有用かも

「パワーアップコンボ」セットに含まれるNDフィルターセット(ND4/8/16/32の4段階)は屋外撮影するでもなければ出番はないかなと思っていました。

が、実際は煌々と光るディスプレイを映す場合には結構使えそう。少しカメラの専門的な説明になりますが、OBSBot Tail AirのカメラはスマホやWebカメラと同じで物理的な絞り機構を備えていません。入ってくる光を物理的に減らすことができないのです。なので明るすぎる画面を撮ると白く光ってしまって画面内の文字を読み取ることができなくなります。通常はこれを抑えるにはシャッタースピードを上げることで対処します。本機はアプリからマニュアルモードにすると自分でシャッタースピードを調整できますし、オートの時も基本的に同じ制御を勝手にしてくれます。ISOを一番下げ(100)シャッタースピードを上げることで画面は暗くなります。しかしその弊害としてフリッカーが割と激しく出てしまうようです。フリッカー低減設定もあるんですが、50Hzにしても60Hzにしてもある程度シャッタースピードが速いとどうしてもチラチラしてしまう傾向がありました。そこでこのNDフィルターをレンズに被せて物理的な光量を減らしてやることで、シャッタースピードを適切に保ったままいい感じに液晶画面を撮ることができるようになります。実際に試してみると一番薄いND4ではっきり効果が感じられました(部屋の明るさなど環境にも拠るでしょうけど)。

ちなみにOBSBot Tail Airのレンズはフィルターネジは切られておらず市販のNDフィルターをとりつけることはできません。純正フィルターはマグネットでカチャっと取り付ける方式です。基本はこれを買え、ってことですね。どうしても安く済ませたい場合は自分で適正なサイズにカットしてテープで貼るなどするしかないでしょう。

室内で人物を撮る位なら無しでも全然問題ないと思いますが、液晶画面など強く光るものを綺麗に映したい場合はこのNDフィルターセットも一緒に買っておくといいと思います。

■[TIPS] OBS StudioにNDI入力する

OBS StudioでNDIストリームを受け取れるようにする手順をまとめてみます。

ちなみにOBSBotとOBS Studioは綴り似てますがなんの関係もありません。前者は「オブスボット」で、後者は「オービーエススタジオ」ですし。

前提として、

  • OBSBotのセットアップが済んでおりWi-Fiまたは有線LAN(Ethernet)でPCと同じネットワークにつながっている
  • OBS Studioの基本操作は理解している

ものとして説明します。

プラグイン「obs-ndi」を導入する。

こちらのGitHubから自分のOSに合ったインストーラーをダウンロードしてインストールします。先日出たOBS Studio 30系も4.13.0で対応してくれてるっぽいですね。

インストール後にOBSを起動すると「更にNDI5 Runtimeをインストールせよ」というダイアログが出て、もう一度同じダウンロードページに遷移させられ、自動でNDI5 Runtimeが落ちてきます(インストール済みなら出ないかも)。念のためOBS Studioを終了して、インストールします。

2つともインストールできたら改めてOBS Studioを起動。ソース一覧に「NDI Source」が増えていれば成功です。

NDI Sourceソースを1つ追加しプロパティをみるとこんな感じになってると思います。

Source nameプルダウンメニューを開くと、同じネットワーク内にいるNDIストリームの一覧が表示され、その中にTAIL AIRナンチャラがいるはずです。ここで見付からない場合は、PCとOBSBot Tail Airが同一ネットワークにつながっているか、端末間の直接通信が許可されているかを確認します。会社のゲストWi-Fiや公衆Wi-Fiだとプライバシー保護のため端末間の通信がブロックされている場合もあります。

基本的には設定はそれだけです。問題がなければ。ネットワーク帯域が細くて安定しないとか映像と音声がズレるなどあれば、BandwitchやAudio/Video Syncを変更してみたり、Allow hardware acceralationをオンにしてみたりしてもいいかも知れません。

ちなみにこのプロパティ画面をスクロールするとこんな項目もあり、ここからOBSBotのPTZ制御をすることもできます。

「Pan Tilt Zoom」をオンにして、下のスライダーを動かせばOK。でもいちいちこの画面開いてスクロールして、っていうのは面倒で現実的ではないかなと思います。

■[TIPS] 天井から逆さ吊りする

今回の現場では頭上にネットワークケーブルなどが通るケーブルラックがあるので、そこからどうにかぶら下げてみようと思います。

以前購入したこのクランプを逆さまにして固定します。

すると下向きに三脚ネジが突き出る形になります。ここの直接OBSBot Tail Airを逆さまにつけても良いですが、今回はもう少し低い位置にセットしたいので、さらにこういうポールを使います。

片方が三脚ネジ、もう片方が三脚ネジ穴になっていて伸縮して長さを調整できます。自分の場合は別に買って所持している一脚があって雲台と足を取り外せば同じような状態になるのでそれを使い回します。

理論上はこれで好きな高さにカメラを吊り下げ可能でしょう。内蔵ジャイロで向きを検出してくれるので、映像は自動的に180度回転して正しい向きになってくれます。

あとはHDMIケーブルなりネットワークケーブル、電源ケーブルを接続します。ケーブルの重さがコネクタにかからないよう、いちどケーブルを上に持ち上げてポールに固定するなどし、可能ならそのままケーブルラックを通して見栄えの良い位置から床に落とすなどしたいところです。

またHDMIケーブルの場合、microHDMIケーブルで長いものを買うと汎用性が低くコスト高になるので、こういう変換コネクターを使ってHDMI-HDMI(両側Dコネクタ)のケーブルを使う方が良いんじゃないかと思います。

エレコム micro HDMI - HDMI 変換ケーブル 10cm ブラック TB-HDAD2BK

エレコム micro HDMI – HDMI 変換ケーブル 10cm ブラック TB-HDAD2BK

1,800円(12/22 21:41時点)
Amazonの情報を掲載しています

その場合もmicroHDMI側とHDMI側が一体化した変換コネクタだと荷重がかかりやすいので、上の商品のように短いケーブルを介するタイプがオススメです。

(設置現場で撮影許可がとれたら写真追加します)

ケーブルラックがない場合は、ポールを床から立てるとか、マジックミラーやガラス窓がある場合は吸盤マウントを使うのも良いでしょう。お高いものなので万一にも落下しないようダブル吸盤のこちらなどをオススメします。

なにかポールや棚がある場合はこういうクランプでしょうか。

まぁ三脚穴で固定できるので夢は広がりまくりです。ちなみにOBSBot Tail Airの重量は344.5gとなっています。

■まとめ

HDMI出力があり、PCを介さずにPTZ操作ができ、かつ10万未満(本体+リモコン)と比較的安いPTZカメラOBSBot Tail Airを早期入手できました。今回は使いませんがNDIでIP伝送してOBS Studioに直接映像も送れたりと汎用性抜群の神カメラだと思います。

UT実務でも見学者に気軽にリモコンを渡して「好きなところを見てください」とできれば喜んでもらえるし、モデレーターの負担も1つ減ってとても有用でしょう。

惜しいのは光学ズームではなくデジタルズームなので、4Kといってもズームすると画質が落ちてしまう点。でもまぁ出力解像度がフルHDだったらそこまで問題はないかも知れません。

できればもう1台欲しいくらいです。まとまった収入があったりセールの時、業務上必要が生じた時に買えたら買ってしまいそう。

Premiere Proでトラックマットキーを使って効率よく一部ボカシをかける

最近は個人情報保護の観点でUTの録画も参加者の顔にボカシを入れるケースが増えてきています。私も録画ファイル中の顔にボカシをかけて納品することがあります。画面はプロダクトと手元を映すカメラと参加者の顔を映すカメラを合成して左右に並べることが多いです。当然、プロダクト側はボカすわけには行かないので、通常は顔カメラ部分を矩形などで範囲指定してブラー(ぼかし)フィルターをかけます。

が、主に自動車系の調査などで目線移動は見返せるようにしたいというニーズがあります。運転中にナビを操作するようなタスクで、何秒くらい脇見をしたか、みたいな判定をしたりする為です。その時は、以下の図で水色の部分にだけボカしをかけます。目線の部分だけボカシを抜いている感じです。

これが固定であればなんの問題もないのですが、実際には参加者ごとに座高が異なっていたり、セッション中にも姿勢が変化するなどして、この窓抜きの位置は頻繁に調整が必要になります。これが地味に手間がかかるのです。Premiere Proでいうと、元映像トラックとは別に調整レイヤーを作り、そこに「ブラー」エフェクトをかけ、マスクで窓を作り、反転にして、、などとしていましたが、これだと水色の外枠を移動させると、中の窓も連動して動いてしまうので、再度調整が必要になったりしがち。

なにかもっと楽な方法がないかとFacebookのPremiere Proコミュニティに質問したところ、「トラックマットキー」エフェクトを使う方法をご指南いただきました。そう頻繁にはやらないので忘れてしまいがちで、毎回昔のプロジェクトを開いて模倣するなどしているので、あらためて手順をメモしておきたいと思います。

  • 「ビデオ1」トラックに元映像ソースを配置
  • 「ビデオ2」トラックに調整レイヤーを置き、「ブラー」エフェクトを挿入
  • 「ビデオ3」トラックにエッセンシャルグラフィックスの「長方形」を挿入し、水色部分(ぼかしたい範囲)を囲う
  • 「ビデオ2」の「ブラー」でマスクを作成し、窓の位置を指定し「反転」し、適切な強度のぼかしをかける
  • 「ビデオ2」に「トラックマットキー」エフェクトを挿入し、「マット」に「ビデオ3」を指定。

これで、

  • 窓を動かしたい時は「ブラー」のマスク範囲をドラッグ
  • 水色全体を動かしたい時は「長方形」オブジェクトをドラッグ

で独立して移動することができます。長方形で全体を動かしても目線窓の位置は固定されます。またソース映像と完全に独立した2つのレイヤーをセットでコピペすれば他のセッションのタイムラインにも一発で適用できますし、タイムライン上で時系列で変化させるのも簡単です。

めちゃくちゃニッチですが完全に自分用メモとし。

Blackmagic Design UltraVideo Recorder 3G導入とHDMIキャプチャの遅延検証

最近、UTではリモート見学者向けに中継をすることがほとんどです。その際、Webカメラやビデオカメラの映像をそのままZoomなどのWeb会議ツールにカメラ入力として流すのではなく、一旦OBS Studioに入れて、PinP合成などをした映像をウインドウプロジェクタで別ウインドウに映し、それをWeb会議ツールの画面共有で流すことが多いです。カメラ入力は多くの場合、参加者の顔を写すことを主目的としている為、あまり解像度が出ないことが多いのです。一方画面共有は解像度が高く出せるかわりにフレームレートが落とされることが多いようです。一長一短で悩ましいところですが、Web会議ツールによって録画のレイアウトも違ってくるので、ケースバイケースで対応します。あえてPinPにせず、画面共有で操作手元映像を、カメラ入力で参加者の表情を送ることも多いです。その際に気になるのが手元映像と顔映像の時間的なズレです。基本的にほぼ遅延がないと思われるマイク音声とのズレも問題になることがあります。基本的に画面共有が一番遅れがちでヒドい時には1秒近くズレることも。OBS StudioやWeb会議プラットフォーム、ネットワークなど様々な要因が絡むので切り分けが難しいのですが、まずは入り口としてHDMIキャプチャユニットによる違いがあるのか調べてみました。

■普段使っているHDMIキャプチャ機材たち

AverMedia BU110

AVerMedia UVCキャプチャーデバイス BU110 DV456

AVerMedia UVCキャプチャーデバイス BU110 DV456

18,500円(12/22 19:45時点)
Amazonの情報を掲載しています

2018年に初めて買ったUSBタイプのHDMIキャプチャです。当時はこういう電源不要のボックス型はとてもレアでした。UBS3.0接続。フルHDまでの対応。

Elgato CamLink 4K

OBS Studioであれこで合成することが増えてBU110だけでは足りなくなってきて買い足したもので、4Kまで対応しています。UBS3.0接続。

Blackmagic Design ATEM Mini Extreme ISO

HDMI 8入力で各種合成も単独でできてしますビデオミキサー/スイッチャーです。USB端子でUVCデバイスとして認識されるので、上記機器やWebカメラのように使うこともできるので比較対象に挙げます。またこれを使っていた時に遅延が気になると言われ実際に調べると遅延が大きいという指摘もあったりで、実際にどうなのか気になるところです。ストレージ用も兼ねたUSBポートはUSB3.1 gen 2ですが、UVCモードで活用されているかは不明です。

OBSBot Tiny 4K

HDMIキャプチャではなくWebカメラの部類ですが、顔映像を撮るのによく使うのでベンチマークとして参加です。接続はUSB2.0なので不利が予想されます。まもなく新型のTiny2が届く予定ですが、そちらはUSB3.1で非圧縮転送対応だそうで楽しみです。

[最近購入] ClassicPro CHD312

ClassicProは映像音響機材ショップのサウンロハウスのプライベートブランドです。電池やマイクスタンドなど幅広く扱っている中で最近HDMIキャプチャ製品までラインナップするようになりました。CHD312はHDMIパススルーがついていて、キャプチャと同時にモニタやプロジェクターに映せるのが1つほしくて最近購入しました。HDMIパススルー付きはキャプチャしつつ遅延のない画面でゲームをしたいゲーミングカテゴリの製品に多く、やや高価なものが多いんですがこちらはその中では割とお手頃価格で、USB3.0。入力とパススルーは4K対応ですが、キャプチャできる映像はフルHDになります。

1回実務で使いましたが、ちょっとだけ不安定な気もしています。一度だけ映像が途切れて触ったら結構熱くなってたので、そこからファンで風を当てながら使用して無問題でした。継続評価中。

[新規購入] Blackmagic UltraStudio Recorder 3G

今回の比較のために色々レビューを調べて遅延が少なそうなもの、業務用として信頼度が高そうなものとして新規購入してみました。インターフェイスはThunderbolt 3です。形状はUSB-Cですが、規格上の伝送速度は桁違いに速いはずなので期待。

BMD UltraStudio Recorder 3G (写真中央)

ガチ映像業界でしか使わないSDI入力が備わっており、HDMIしか使わない自分にとっては無駄にお高いイメージがあって手を出していなかったですが、今回冷静にスペックを調べてみると、写真右のBU110とさほど変わらないんじゃね?ということに気付いて特攻してみました。やや厚みがありますが頑強な感じが業務用という感じがしてアガります。

■遅延比較方法

iPhoneで1/100秒まで表示する時計アプリ「原子時計(AtomicClock)」をカメラ(FX30)で映し、HDMI経由でOBS Studioに表示された画面と見比べて1/100秒(0.01秒)単位でズレを調べました。フレームによって0.02秒ほど揺らぎがある機種もありましたが、最悪ケースとして最大値を計測レコードとしました。

解像度などはデフォルト状態。

UltraStudio Recorder 3GはOBSにソースとして入力する際、通常の「映像出力デバイス」から選択する方法と別に、「Blackmagicデバイス」というソースクラス経由で取りこめますので、別個に計測しています。

計測PCはMacBook Pro 2021 (M1 Max)で、USB AポートのCamLink 4Kだけハブを経由。あとはUSB-C to Cケーブルで本体直結です。

■検証結果

ブランド機種ドライバ遅延秒数
Blackmagic DesignUltraStudio Recorder 3GUVC0.08-0.12秒
ClassicProCHD312UVC0.08-0.12秒
ElgatoCamLink 4KUVC0.12秒
OBSBotTiny 4KUVC0.12秒
Blackmagic DesignUltraStudio Recorder 3GBlackmagicデバイス0.11-0.13秒
AverMediaBU110UVC0.16秒
Blackmagic DesignATEM Mini Extreme ISOUVC0.20秒

思ったほど差がない結果となりました。6機種中4機種は同じ0.12秒の遅延となりました。UltraStudi Recorder 3G(UVC)は速い時は0.08秒と最少誤差を叩き出してくれたんですが、今回のルールでは最長誤差で採ることにしたので同率となりました。専用ドライバよりUVC(「映像キャプチャデバイス」)経由の方が速いのも意外でした。

0.12秒というのがOBS StudioやUVCドライバを使う上での限界値ということなのかも知れません。USB2.0のTiny 4Kでも実現できていることに驚きです。

そして思ったほどの差ではなかったものの、やはりATEM Mini Extreme ISOが一番遅延が大きいという結果になりました。一番高額な機材ですが、やはり内部的な処理が複雑なせいもあるかも知れません。ATEM Mini内で合成を完結させる(つまり各映像と音声の同期が取れている)分には、問題ないですが、OBS StudioやWeb会議ツール側で他のソースと混在して使うのには向かないかも知れません。

今回UltraStudio Recorder 3Gを導入したことで、古株のBU110は予備役に移行してもいいのかなと思いました。4Kが必要な時はCamLink 4K。地味にコンパクトだし4Kにも対応できると思うと非常にコスパも良い機種だと再認識しました。やや高い部類ですがこれから業務用に1つ買うという方にはオススメできる機種だと思います。>CamLink 4K

全体にこれだけ差が出ないと逆に1,000円クラスの安い中華キャプチャを買って計測してみたくなりますねw。近日、OBSBot2も含めて追加検証してみたいと思います。

■まとめ

Web会議プラットフォームに中継する際、カメラや音声に対する画面共有の遅延を最低限にしたくてHDMIキャプチャーで差が付くか検証してみました。結果としてはそれほど致命的な差はつかなくて、機材面の問題というよりはWeb会議ツール側やネットワーク状況によるものが大きいのかもという考察になりました。

全ソースが揃ってさえいれば、絶対的な遅延はあまり問題ではないので、最終的にはOBS上でディレイをかけるなどすればいいんですが、問題はカメラだけWeb会議のカメラ入力に入れざるを得ないケースなんですよねー。例えば某M社のオンラインインタビューシステム使う案件とか本当に苦労が多いです…

ATEM Miniシリーズで黒画面を一瞬出し自動で戻す

前回の「OBS Studioで黒画面を一瞬出し自動で戻す」のATEM Mini版です。

動画眼の次期バージョンで「真っ黒い画面を検出してチャプターを打つ」という仕組みを研究しているので、UT/インタビュー中に最低限の操作で録画データに黒画面を挿入する方法として紹介します。

できるだけATEM Miniシリーズどれでも使える方法になるよう考えていますが、手元にATEM Mini Extreme ISOしかないので、もしかしたら他機種では上手くいかないかも知れません。その際はコメントでお知らせいただければできるだけフォローしたいと思います。

■ATEM Miniシリーズで黒画面にする方法(手動操作編)

ATEM Miniで黒い画面を出すにはいくつか方法があります。ざっと

  • 「BLACK」ソースに切り替える
  • 「FTB」(Fade To Black)ボタンを押す
  • PinPで現在のソースの上にBLACKソースをかぶせる

の3つがあるかと思います。一長一短あるので1つずつ解説してみます。

・BLACKソースに切り替える

BLACKソースは文字通りなにも映像がない真っ黒な画面を映すだけのソースです。ATEM上では4〜8系統ある入力ソースと同じ入力源(ソース)として扱うことができ、ソースボタンの並びにある「BLACK」ボタンを押すだけで切り替わって真っ黒になります。

ソース切り替えボタンの並びの1つである「BLACK」ボタン

ただこのハードボタンは「BLACKソースに切り替える」動作なので、もう一度押しても元のソースに戻ってくれません。例えばソース「1」を表示していた時に「BLACK」を押した後は、もう一度「1」を押す必要があります。これは「一瞬だけ黒画面にして戻す」という場面ではやや扱いづらいでしょう。

よって今回はこのボタンは使いませんが、概念として「ただ真っ黒画面を表示するだけのBLACKという特殊なソースがある」ということだけ覚えておいてください

・「FTB」(Fade To Black)ボタンを押す

次はFTBボタンです。こちらはソースではなくトランジション(画面変化時の効果)の1つです。押すと真っ黒な状態にフェードアウトし、もう一度押すと元のソールにフェードインします。今回の目的にはピッタリです。

ただフェードイン、フェードアウトに少し時間がかかってしまいます。このフェード持続時間(レート)はATEM Software Controlで赤枠の数値で変更できます。

単位は「秒:フレーム」のようです。例えば1080/30p(秒30フレーム)の設定なら「0:15」にすれば0.5秒かけてふわんと黒くなる/戻るという感じです。

なお、効果がかかっている間、音を途切れさせたくない場合は、画面右の「パレット」タブの一番下にある「フェード・トゥ・ブラック」の中の「Audio Follow Video」のチェックを外せば良いはずです。

同じボタンで黒->戻すが行えるので指を置いたまま2度押しすればいいので、これを短めのレートで使うのが第一選択かなと思います。

・PinPで現在のソースの上にBLACKソースをかぶせる

3つめの方法はピクチャインピクチャ(PinP)を使います。PinPの使い方は検索してください。子画面ソースはBLACKで良いでしょう。特徴としては黒くする範囲を自由に設定できるという点。まだ検討中なのですが動画眼3の黒検出機能では、画面全部を真っ黒にしなくても、「左上隅の一定範囲が黒になったら」という判定条件も組み込もうかと思っています。配信などをしている場合、画面全部が真っ黒になると見ている人が「あれ?」と気になってしまいますので、さりげなく片隅だけ黒くするだけでも検出できるようにしたいなと。その場合はPinPを使って画面の隅にBLACKソースを表示すれば良いでしょう。

■黒くして一定時間後に自動で元の画面に復帰する

ATEM Miniでは所定の操作を自動で実行できるマクロ機能があるのでこれを使います。ATEM Mini Extremeシリーズには写真のように6つのマクロ実行ボタンがついているのでサクっと押せます(ちょっと密集している上に小さいですが…)。

非Extreme系統だとATEM Software Controlのマクロウインドウから実行するか、MixEffectのようなネットワーク経由で操作するリモコンアプリを使うなどする必要があります。

・マクロ設定手順

ATEM Software Controlで「マクロ」メニューから「マクロ」を選びウインドウを開きます。

「マクロ」ウインドウ

①「作成」タブを選択

②「+」ボタンを押し、マクロ名称(ここでは「Blank & Back」としましたがなんでもOKです)を設定。

するとメイン画面に赤枠が出て手順指示待ちになります。

ここでまずFTBをオンにするため一度クリックします。

次に画面の上の方に出ている「ポーズを追加」を押し、継続時間として秒とフレームを指定します。

これも30p設定なら30フレーム=1秒なので、0:15なら0.5秒相当です。そしてFTBを解除して元の画面に戻すためもう一度「FTB」をクリック。

その後、マクロウインドウに戻り、②で押した「+」の位置が赤丸ボタンに変化しているのを押すと記録終了で、③のように指定した名前が空欄に追加されます。

FTBのレートも「0:15」にした場合、

  1. フェードアウトに0.5秒
  2. 待ち0.5秒
  3. フェードインに0.5秒

で計1.5秒のトランジションが自動で実行されるかと思いますがちょっと違うようです。マクロは指定秒数待ってボタン操作を実行するので、1.と2.は同時にカウントされます。言い換えれば待ち時間よりFTBレートが長い場合は、フェードアウトが終わるのを待たずにフェードインが始まります。

今回の用途では全体として目障りでないくらい効果が持続しないと同時に、ソフトウェアが確実に黒画面を検知できるよう、真っ黒の時間を最大化する、という観点では、

  • FTBのレートを0:01〜0:05など短め
  • マクロの待ち時間を0.15(0.5秒)くらい

にするのが良さそうです。

FTBを他のことにも利用するのでレートは1:00にしておきたいという場合は、

  • FTBのレートを0:05に変更する
  • FTB(フェードアウト)実行
  • 待ち時間
  • FTB(フェードイン)実行
  • 待ち時間(フェードアウトが終わるのを待つ為0:05以上)
  • FTBのレートを1:00に戻す

のようにレート変更までマクロに含めておけばいいでしょう。

マクロを設定した後は、「ファイル」->「本体に設定を保存」してATEMの電源を切っても消えないようにしておくのを忘れずに!

OBS Studioで黒画面を一瞬出し自動で戻す

次期動画眼での機能追加について書いたばかりですが、またひとつ思いつきました。

動画眼はUT(ユーザテスト)やインタビュー録画にチャプターを打って分析を効率化するというツールですが、後で見返す時ではなく、その実査中(録画中)にどうやって誰が手軽にチャプターを打つかというのも大きな課題です。そのひとつにWebアプリと時計を同期してポチポチしていく動画眼マーカーがありますが、今回全く別の方法を思いついて実験を始めました。

それは「動画の真っ黒なフレームを検出してチャプターにする」というアプローチです。例えばATEM MiniですとFTB(Fade To Black)ボタンがあります。1回押すとフェードアウトで画面が真っ暗になり、もう一度押すと解除されてフェードインで元の映像に戻ります。モデレーターなり録画オペレーターがタスクの切れ目などでこれを押しすぐ解除することで、録画/配信される映像が一瞬暗くなります。これを動画眼側で検知することでチャプターに自動変換できるのでは、と考え実証コードを書きました。どれくらいの黒を閾値とするかなどチューニングは必要ですが基本的に動いてる感じです。

■OBS Studioで黒フレームを作る

UT/インタビューの収録でATEM Miniを使っているモノ好きはそう多くはないので、OBS Studioを使った場合も検討してみます。単に画面を真っ黒にするだけなら何もないシーンを作ってそれに切り替えるだけです。ホットキーを設定しておけばキー操作1つで実現可能です。ただそこから戻すのにもう1操作必要になります。空シーンに切り替える->1秒待つ->元のシーンに切り替える、という手間が生じるのは不便です。戻し忘れたらコトです。これを1操作で自動化するのが本記事のテーマです。

真っ黒いシーンを作る

シーン一覧の「+」ボタンで新規シーンを作ります。名前をBlackとかBlankとかわかりやすいものにしておきます。中身(ソース)は空っぽのままでOKです。

ホットキー(キーボードショートカット)を割り当てるには「設定」画面から「ホットキー」を選び、作成したシーンに対する「シーン切り替え」の欄に希望のキー操作をセットします。

ちなみにOBS StudioのホットキーはOBSがバックグラウンドにいても反応します。録画中、同じPCでメモ取りなども兼ねる場合、CommadやCtrlキーなどの組み合わせにするとか、ファンクションキーなど間違って押さないキーアサインにしておきましょう。ここでは録画中他の操作はしない想定で「B」キーを割り当てます。

なおOBS Studioではシーンをかえると音声セッテイングも独立になるので、そのままだと音がなにも鳴らない状態になってしまうのでご注意ください。音声系ソースを元シーンからコピーするとか、このシーン自体を新規で作らず、「元シーンを複製して映像系ソースを消す」などして作った方が良いかも知れません。シーンを作り分けるか、特定ソースのON/OFFを制御するかどちらが楽かはケースバイケースだと思います。

プラグイン「Advanced Scene Switcher」をインストール

OBS Studio単体では実現できなそうなのでプラグインの力を借ります。Advanced Scene Switcherを使います。最新版はOBS Studio 28〜対応です。OBS Studioは27までと28以降でプラグインの規格が変更され互換性がありません。Advanced Scene Switcherの最新版を使う場合はOBSも28以降にしてください。どうしてもまだOSBを28以降にできない人はプラグイン側の旧バージョンを探してみてください。今回はOBS Studio 29.0.2にAdvanced Scene Switcher 1.20.5を使用しています。

またMac版だとOBS、プラグインともにAppleシリコン(M1/2)版とIntel版が分かれています。お使いのOBS Studioにあわせてプラグインをダウンロードしてください。GitHubのダウンロードページにはmacos用だけでもx86(Intel用)、arm64(Appleシリコン用)、Universal(両用)があります。.pkgはインストーラー版でしかるべきフォルダに自動でインストールしてくれますが、セキュリティチェックが厳しい端末だとかえって手間かも知れません。そういう場合は.zipを落として自分でプラグインフォルダにD&Dで入れると良いでしょう。

自分(M1 Max機)はOBSをAppleシリコン版にするのを忘れていて、プラグインだけAppleシリコン用を入れてメニューに出現しないなと思って悩みました。

インストールに成功すると、OBS Studioの「ツール」メニューに「Advanced Scene Switcher」が出現します。

「自動シーンスイッチャー」というのが標準であって紛らわしいですが別モノです。

Advanced Scene Switcher設定 〜マクロ設定(Macroタブ)

「ツール」メニューから「Advanced Scene Switcher」を開き、「Macro」タブに移動します。

ここで、「Blackシーンに切り替えられたら1秒後に元のシーンに戻す」というマクロを作成していきます。いきなり完成形がこちら。

まず①のブロックで「+」から空の新規マクロを作成し、名前を決めます。ここでは「Blank and Back」としましたがなんでも良いです。

次に②のブロックでマクロ処理が発動する条件を定義します。ちょっと手順がややこしいですが、まず「If(もし)」「Scene(シーンが)」を選びます。すると下段に「Current scene is(現在のシーンが)」が選ばれて「–select scene–(シーンを選択)」が選択可能になるので、「–select scene–」を真っ黒シーンである「Black」にします。これで「シーンがBlackになった時」という発動条件が定義されました。更に冗談で時計マークが「No duration modifier(遅延指定なし)」にかわると思いますのでこれを「For at least(少なくとも)」に変更し「1.00」「seconds(秒)」にします。これで、「シーンがBlackになって最低1秒経過したら」という意味になります。

最後に③のブロックで「その時何が起きるか」を設定します。まず上段で「Switch scene(シーンを切り替える)」を選びます。すると下段に3つのセレクターが出るので、それぞれ「Previous Scene(前のシーン)」「Current Transition(今のトランジション)」「0.20」などとします。「Previous Scene」はBlackシーンにする前に選択されていたシーンを覚えておいてその状態に戻してくれます。もちろん特定のシーンを選べばそちらに移ってくれます。そこは好き好きで。2番目は切り替わり時の効果に関するもので「カット」ならスパっと瞬時に切り替わります。「フェード」ならふわんと切り替わります。「Current Transition」は普段スタジオモードでデフォルトで使っているものが自動で選ばれるんだろうと思います。3番目の秒数はフェードする場合にかける時間です。カットだと突然映像が途切れた様にも見えるので、ごく短めのフェードくらいがいいんじゃないでしょうか。

これで「Blackシーンが選ばれたら1秒後に元に戻す」という動作のマクロ「Blank and Backが完成しました。

Advanced Scene Switcher設定 〜一般設定(Generalタブ)

最後に忘れてならないのがAdvanced Scene Switcherプラグイン自体の動作をオンにするという操作です。このプラグインは動作条件に当てはまる状態にあるかどうかを常に監視するために多少なりとも負荷がかかります。ので必要な時だけオンにする方が良いんじゃないかと思います。

タブを「General」にします。

赤枠の「Start」をクリックすれば起動します。すぐ上の「Inactive」が「Active」になっていれば起動中ということです。その下の項目で起動の自動制御ができます。

On startup of OBS: OBSの起動時

Automaticaly start the scene swither when: 録画や配信を開始した時

また先のホットキー設定画面でON、OFF、ON/OFF切り替えのショートカットを割り当てて手動操作することもできます。

個人的には録画や配信を開始した時に一緒にスタートするようにしておくのが無難な気がします。

■まとめ

ということで、かなりニッチなニーズだと思いますが、OBS Studioで「画面を一瞬真っ黒にして戻す」を1操作で実行する設定を解説しました。

動画眼で自動認識するのに、画面全体が真っ黒になるのをキーにするか、いやそれだと見ている人がびっくりしちゃうので、例えば画面の片隅だけちょこっと黒くなるのを探させるか、なども思案中ですが、仮に「画面の片隅だけ黒い」状態を作ろうと思えばそういうシーンを作るだけなので応用は効くかなと思います。ただ元々複数シーンを使い分ける実査の場合、それぞれのシーンに対して隅が黒いバージョンを用意するのは管理上、手間が大きいかなと思っていて、とりあえずは画面全体を黒いことを条件にする形で実装を進めていく可能性が大です。ATEM MiniでもFTBを使う方が簡単ですし。

ATEM Miniで自動復帰をするにはマクロを使えば良さそうですが、ハード的にマクロキーがあるのはExtremeシリーズだけなのが悩ましいかもですね。

動画眼の次期アップデートについて

今月中にリリースを目論んでいる動画眼3の新機能について解説します。

動画眼は動画ファイルに対して頭出し用のチャプターを打ってUTやインタビューの見返しを楽にするツールです。チャプター情報はシンプルなフォーマットのテキストデータで生成するのですが、これを別のツール、別の時間で作っても良いぞということで、UT/インタビューの実査中にリアルタイムでチャプター打ちするツールが動画眼マーカーです。

チャプター情報をもつ.dggn.txtファイルは動画の先頭を0分0秒基点としてそこからの経過秒数で管理されています。中身をテキストエディタで見ると、

のようなタブ区切り形式で、1項目がチャプターの位置を示す秒数、2項目がメモ、3項目は話者を示す1桁の数値となります。

さて、これを動画眼マーカーでリアルタイムに作るには、動画の録画開始(0秒点)と同期してタイマーをスタートさせる必要がありました。これが慌ただしい実査現場では負担になってしまったり、うっかりブラウザを終了させてしまったり、録画システム(OBS Studioやクラウド会議ツールの録画機能)側が止まってカウンターがリセットされたりといったトラブルにも弱いということがあります。

そこで新バージョンでは「動画眼マーカー側では一旦時刻をベースにしたタイムスタンプでデータを作り、動画眼3に読み込む時点でその動画の録画スタート時刻を引き算して同期する」というアプローチを取り入れてみました。

例えばセッションが朝10時に開始されたとすると、

みたいなログになります。PCの内部時計を参照するので記録開始時に特別な操作は不要になります。

そして事後に動画眼3で動画ファイルとこのログファイルを読み込んだ時に、動画の正確な録画開始時刻(ここでは10時00分00秒とします)を引き算して、

とする仕掛けです。セッションの開始時間は予定より早まったり遅れたりしがちですし、必ずしもそのタイミングで録画開始するとは限りません。必要なのはあくまで録画をスタートした時刻です。その正確な録画開始時刻を機械的に知る方法は3つくらいあるかなと考えています。

  1. 動画ファイルの生成時刻
  2. 動画ファイルのファイル名
  3. 動画内にタイムスタンプを合成しておく

1.はmacOSでもWindowsでもファイルのメタ情報として自動的に記録されます。2.は録画に使うツールによりますが例えばOBS Studioなら標準設定でファイル名に月日時分秒が入るようになっています。これら2つは特に意識しなくても取得できる可能性が高いので次期動画眼3もこれらを反映させるボタンを実装しています。3.については少し準備が必要ですが、これまたOBS Studioでいえば、こちらの記事を参考にしていただくなどして動画の片隅に時刻を入れておき、あとで先頭フレームに映る時分秒を読み取って同期ダイアログに打ち込んでいただく形が考えられます。

単純に映像に時計を映しこんで置くだけでもいいかも知れません。

いずれにせよ、録画側(映し込む時計を含む)と動画眼マーカーを使うPCとで時計が一致していることが望ましいので、PCのNTP(時刻合わせ)サーバーをしっかり設定しておく、電波時計を使うなど時計合わせは気を遣うに越したことはないしょう。

というわけで、

  • 動画眼マーカーで時刻ベースのログを出力できるようにする
  • 時刻入りログを動画眼3で開いた時に、動画ファイルのメタデータなどを使って換算補正する

と両ツールの同時アップデートにて対応する計画です。

一応実装は完了していて動作チェックしている段階なので、3月中に出せればと思っています。

■その他の機能追加、バグフィクス

同時に長らく対応できずにいたバグ修正や機能追加も色々しています。

  • Premiere Proで書き出したcsv形式のマーカーのインポートに対応
  • 100分を越えるタイムコードが正しく表示できなかったのを修正
  • Premiere Proの書き起こしデータの新フォーマットに対応

是非お試しいただければと思います。