動画配信の課題
お久しぶりです。ゆっきです。
コロナ禍でSTAYHOMEが捗っている昨今ですが、
普段から割と引きこもり体質な私にとっては特に平常と変わりなく
日常を過ごしている感じです。
(人間的に色々ダメな気もするけど)
タイトルの話ですが、先日開催されたYouTubeでのオンライン勉強会について思うところがあったので
つらつらと駄文ながら書いていこうと思います。
対象となったイベント
フォークウェルさん主催のInfra Study Meetupというイベントで
このイベントではインフラ(ここでは主にウェブサービスを支える基盤システムのこと)について
色々考えたり勉強しようという内容です。
このエントリでは勉強会の内容については触らないので、
「なんだインフラのこと書かないのか」と思った方はブラウザバックを推奨します。
私は当日、所用がありオンタイム参加はできなかったのですが
有難いことに動画をアーカイブしてくれていたので、
後日内容を知ることができました。
が、しかし・・・
動画の品質はかなり悪かった。
かなりストレートな書き方になっていますが、
撮って出しの動画は正直見るに耐えないものになっていました
(あくまでも個人的感想です)
なお、高品質版の動画が後日上がっているので
そちらを見ていただく方がいいです。
当時の動画配信状況について
フォークウェルさんが後日振り返り記事を書いていたので
内容が気になり一度目を通してみました。
pr.forkwell.com/remember-infra-study-meetup-2020-04-24
このエントリでは、事前テストや配信状況の確認など触れられているのですが、
注目するべき点としては「配信構成の振り返り」と「原因の考察」の部分で
根本的に今回の配信トラブルについては機材不足だなということを瞬時に察しました。
配信機材
映像系
音声系
↑全てエントリ内のものを引用させていただきました。
これを見る限りでは、Mac1台で配信するためには至極当然のソフトだと思います。
(物理インターフェイスを使用しない場合)
この構成はググると割とよく出てくるので、おそらく運営の皆さん方も
それを参考にしていると思われます。
じゃあ何がダメだったのか考えてみる
個人的な話ですが、今回用意されているPCは私が個人所有しているものと
全く同じMBPでした。(スペックなども共通)
2017年で最廉価のMBPでSSDは128GB,メモリはi5の8GB
グラボはオプションがないのでIris Plusの640で1.5GB程度。
簡単なものや個人的なアプリ開発に使用するには現在でも十分使えるスペックではあるのですが、
仕事でゴリゴリ使用するにはちょっと足りないかもしれないもの。
(今ならメモリは16GBが普通になっていると思うので)
この時点で、動画配信や編集作業をしている方ならもうわかってると思いますが、
OBSを使って動画を録画しながら配信するには圧倒的にスペック不足ですね。
(正直これでよく動画が途切れなかったなと思うほど)
じゃあ何がスペック不足なのかというところ。
参考にしたいのはGPUいわゆるグラボやビデオカードと言われるもので
今回のマシンで使われるIris Plus Graphics 640が焦点になります。
そもそもグラボ(グラフィックボード)とは
グラボってなんだ?という方もいるかもわからないので
ざっくりとどういうものか説明すると
"映像や、画像をディスプレイに反映させるためのパーツ"
というものになります。
ちなみにMBPの場合は、オンボードグラボという部類になり、
Intel謹製の「統合GPU」なのがIrisシリーズ。
(Iris Plusの他にもシリーズは様々ある模様)
それとは別に、15インチや現行の16インチモデルのみ用意されている
AMDのRadeon Proが「外部GPU(dGPU)」というものになります。
この辺は自身でPCを作っている人には馴染みのある言葉なのかな
映像系を作業するにあたってはこのGPUが「キモ」となるわけですね。
配信用のGPUで最低限の要件とは
GPUについてはググると色々出てくるわけですが、
基本的にMacではなくWindowsをメインにして構成を考えている記事が散見されます。
ここでその内容を見ていくと大体出てくるのが、GeForceのRTXやGTX系
なんだ、Radeonでもないし、ましてやIrisでもないじゃん。
と思ったらちょっとだけお付き合いを。
ここで大事なのはそれぞれのベンチマークで、
最低限欲しいGPUとして2020年現在で挙げられるのが
GeForceの「GTX1060」
では、欲しいGPUとして挙げられる「GTX1060」とMBPの15(or 16)インチで使用できる「Radeon Pro 5500M」、MBP13インチの「Iris Plus 640」をそれぞれ比較してみます。
なお、参考にするサイトとして、「PassMark」を利用します。
ここで注目したいのが「G3D Mark」の欄にある着色された値。
推奨のGTXがおよそ10000なのに対し、Radeon Proがおよそ7000。
Iris Plusに至ってはGTXの13%のパワーしかありません
webカムで撮影している動画を録画しながら、裏でエンコードをしつつYouTube Liveで配信するためには
MBP13インチのGPUがあまりにも非力なのは、この数字から明らかになるかと思います。
(やりようによっては、なんとかいけなくもないかもだが、不安しかない)
13インチ版MBPでライブで動画配信するためにはどうしたらいいのか
次で考えてみたいと思います。
オンライン登壇(配信)を快適にするには
先のベンチマークでわかったように13インチ版のMBPでは
ライブ配信をしながら録画をするにはGPUがスペック不足。
では、ハイスペックなWindowsマシンを用意するか
15 or 16インチのMBPを用意しないといけないのか?
両者とも正解ではあると思うのですが、厳密には別の選択肢もあります。
PC単体では補えないGPUパワーを物理的に外部から補助するのが、外部GPU(eGPU)の存在。
要は外付けGPU。
Iris Plus 640では非力な動画処理をeGPUを使って代替的に処理することが可能になります
案外知られてないのかもと思うのですが、実はAppleからもeGPUは販売されています。
メインはBlackmagic DesignのeGPUとeGPU Pro。
そしてSonnet(ソネット)のRX560 External GPUの3種
性能的に見ればeGPU Proが「Radeon RX Vega 56」で8GBのGPU性能があり、
iMac Proで利用するような高負荷なグラフィック処理にも耐えるスペックを持っているのですが
金額として、もう一台13インチMBPが買える代物。
これでは現実味がなく、そこまでプロ仕様にする必要もない。
www.apple.com/jp/shop/product/HMQT2J/A/blackmagic-egpu-pro
次点のeGPUは、8GBではあるもののそもそものGPUプロセッサが違うので
若干eGPU Proとは見劣りするが、金額としてはまだ手が出やすい。
が、しかしeGPUと同じ筐体で基本的に据置サイズな大きさと重量のため
持ち運びについては論外
www.apple.com/jp/shop/product/HM8Y2J/A/blackmagic-egpu
SonnetのRX 560 eGPUは金額としても最安な上に、
筐体サイズがBlackmagic Design製のeGPUと比べると割と小ぶりなので
持ち運びについては可能なサイズではあるものの、値段相応にGPU性能が4GBと半分程度。
(しかし、GPUが4GBもあれば必要十分な性能と言える)
www.apple.com/jp/shop/product/HMT22J/A/sonnet-egfx-breakaway-puck-radeon-rx-560-external-gpu
ちなみにこれらのGPUは全てAMDのもので、GeForceのRTXやGTX系ではないので
その点については一考していただきたいが、
もちろん他でeGPUを購入して使用することもできるはずなので
「GeForceを使いたい」という場合はAmazonなどで探してもいい。
話が若干逸れてしまった気がするが、
OBSでのエンコード設定をこれらのeGPUを使用して変更することで
配信が安定してストレスなくライブ動画を提供することが可能になるのではと推測する。
音声配信の課題
最後に、音声については
OBSとRadio Cast + Sound Flower(仮想オーディオインターフェイス環境)を使用すると
配信している音声(視聴者側の音声)がモニタリングできないので、
これを改善するためにも、別途物理でオーディオインターフェイス(以下、AIF)を用意してそこからモニタリングする必要がある。
端的に言えば、「マイクとイヤホンは物理的に別で用意しましょう」ということ。
こうすることで、PCの音声と発話者自身の声を物理的に分けることができ、
PC側で発生するエラー音や、ヘッドホンマイクを介して発生するハウリングによる爆音ノイズを回避することができるし
配信する構成を考えるに当たっても、仮にノイズが発生した時にそのファクターを切り分けすることが容易になる。
ちなみにAIFについては色々あるので好きなものを使用するといいと思うのだが、
個人的に考える使いやすいAIFを以下で上げておく。
個人的おすすめAIFは
ここ数年の有名どころとしては、
YAMAHAの「AG03」がシェア率が高いようだが、
コスパ的に見るとzoomの「U-44」がいいので好きな方を選択するとよい。
YAMAHA AG03
ZOOM U-44
AG03
「AG03」は楽器で有名なYAMAHA社がPCでの音楽作成を効率的にすることを前提とした作りになっているので
端子や諸々のダイヤルやスライダー類が使いやすい配置になっている。
単体で複数音声のミキシングができるので、
マイクとPCの音声を合成して、モニターアウトにイヤホンをさせば
それだけでモニタリングすることができる。
また、音声についても192KHz/24Bitのハイレゾ品質を保証しているので
コンデンサマイクなどを利用するとよりクリアな音声が配信できるようになる。
U-44
「U-44」については、モバイル性を重視した作りになっていて
AG03と比べると比較的小さな筐体になっている。
もちろんこちらもイヤホンでのモニタリングは可能だが、
別途で販売されているオプションマイク(およそ6000円程度)を利用すると
U-44単体でマイクが使えるAIFにもなるので使い勝手はかなり良くなる。
なお、音声品質については96Hz/24bitなのでAG03と比べると悪くはなるが、
それでも高品質のサンプリング帯域となる。
番外
今までは配信ツールをソフトウェア頼りにした構成で
対策するべきポイントや、オプショナルパーツを紹介してきたが、
配信ツール自体を物理にすることで今回のような事象を避けることができるのかと考える。
そう、「ライブスイッチャー」を使えばね。
ライブスイッチャーとは単に「スイッチャー」とも呼ばれるものだが、
HDMIなどで入力した複数の映像をミキシングして出力することができる。
テレビ番組の編集スタジオで「カフ」と呼ばれるハンドルでカメラで撮影した映像をじんわりと転換したり、スイッチで映像の場面転換してるアレ。
これも様々有名どころがあって、
SonyやRolandなどがあるが、基本的にプロ向けの仕様なので
安くても10万円をするなど素人ではなかなか手が出せない代物。
しかし、先述したeGPUでも出てきたBlackmagic Designが昨年から販売開始した
「ATEM mini」が3万円台で買えるライブスイッチャー。
HDMIやマイクでの入力が前提となるが、これを介することで
音声と映像のミキシング単体で処理することができるようになる。
今回のようなzoomでの映像と音声をそのままLive配信に流用する時は
なかなか使用する機会がないかもしれないが、
個人で配信したり、オンライン会議で自前のカメラやマイクを利用する時にはかなり使い勝手がいいものになっている。
ちなみに上位版の「ATEM mini Pro」ではイーサネット接続をすることで
OBSを使わずに単体でYouTube LiveやFacebook Liveなどの配信サービスに
そのまま配信することができる。
なお、デフォルトでは使用サービスが制限されているのだが、
ATEM Software ControlをXMLファイルで書き出して
そのファイル内にあるRTMPのURLとキーの値を書き換えることで
好きな配信サービスに接続することができる。
参考元:最後にまさかの大散財!!YouTube始めたい人必見!ブラックマジックデザイン中の人 岡野さんにいろいろ聞いちゃおうライブ!
(Movie by dirikin)
この動画の1:00:49あたりでXMLファイルの設定方法などについて
Blackmagic Designの岡野さんが詳細に説明しているので、興味がある人は是非
まとめ
zoomやRemoなどのビデオチャットツールでオンラインイベントが多くなっている昨今だが、
カンファレンスなど、登壇者がいるものでイベント当日にミスできないという状況では
配信者のPCスペックを事前に必ず確認してテストを行った上で、
配信した動画の品質を事前にチェックすることをしておきたい。