ライブ配信するビデオに文字を被せる

Facebookの「ライブ」機能を使ってビデオをリアルタイム配信” の延長。

同じイベントで複数のビデオをライブ配信する際,ビデオそのものに文字を被せられるのが望ましい。複数なので,見てる側がパッと区別できるように,だ。もちろん,例えばFacebook Liveで配信するのであれば,ビデオに説明文章をつけることはでき,それである程度目的は達成される。それでも,やはりビデオそのものに入っているのが望ましい。

ただ,これの実現は簡単ではない。Facebook Liveの場合であれば,Facebookのサーバーにビデオデータが送られる前に,スマホ内で文字をオーバーレイで加える必要がある。少なくともFacebookアプリそのものにはその機能はない。

Setting up Custom RTMP for Facebook Live | XSplit サポート” を見ると,Facebook Liveでビデオ配信する際,スマホから直接流すのではなく,RTMPのURLを指定してそれを配信させることもできるようだ(というか,スマホから直接流す際でも,内部的にはFacebookアプリがRTMPストリームを生成してそれをFacebook側のサーバーに流しているのであろう)。ということは,Android端末を使ってビデオのライブ配信するにしても,Facebookアプリで直接やるのではなく,RTMPストリームを生成するアプリを介して行えば,Facebookアプリで直接やるときにはできないような芸当もできそうだ。

…という見地から調べてみると,以下のようなめぼしいAndroidアプリが見つかった。こういったビデオストリームのリアルタイムの改変は,Androidから生データを受け取り,改変自身はPC上でやることはもちろん可能だが,ビデオ1本につきモバイル機器1台内で完結しているのが理想的。一旦機器を設定してライブ配信を開始したら,もう誰かが配信内容を常時チェックすることは人的資産の制限からできない。なので運用上の観点からは非常に大事。

  • ManyCamウェブサイト)…PC版は古くあって自分もかつて利用していた。それのモバイル版。画像や,保存されている動画,あるいは他のライブ動画を切り替えられるだけでなく,PiP (Picture-in-Picture) 機能があり,そこにそれらの他メディアを含めることができる。これをフルに活用すれば,複数カメラからの動画を適宜切り替えて表示させて,TV番組のように提示することも原理的には可能。
    文字データそのものをオーバーレイ表示する機能はないが,表示したテキストを含む画像を用意しておいて,それをPiP機能を利用して表示させるようにすれば目的は達成される。Facebook Liveへビデオ配信するのは簡単。一部有料のようなのだが,何が有料なのかがわからないのが不安。
    また,Facebookアプリで直接配信するのに比べて,どうも動きの滑らかさが損なわれている気がする(フレームレートが低い)。テコンドーの試合のように被写体の動きが激しいものについては,視聴する人にもわかるくらいのデメリットになるか。
  • LiLy Live…新参アプリ?Facebook Liveへのビデオ配信を直接はサポートしていない(RTMPリンクを介してやれば可能なはずだがなにせ手間)。明示的に文字列のオーバーレイ表示が可能。時刻表示もオーバーレイ表示できるようで,地味に有用…と思いきや,どうも自分指定のテキストと時刻テキストは,どちらか一方しか表示できない(がっかり)。ストリームしながら,自前でもデータを保存できるのは安心できてよい。今のところ,広告表示はあっても有料機能はない模様。
  • CamStream…Chromecastへのキャストにも対応,画像オーバーレイも可能で,細かい設定のできる「プロ仕様」なアプリ。ただし,Facebook Liveを簡便に行えるようにはなっていない。画像オーバーレイはanimated gifも可ということだから,TV番組でよくやるような少し動きのあるキャプションもできるということ。吐くエラーを見ると内部ではGStreamerを利用していると思われる。
  • CameraFi Liveウェブサイト)…徹底的にプロ仕様でお値段もプロ仕様。機能は非常に充実しており,PiP, 文字オーバーレイだけでなく,BGMを付けることもできる。ただし,アプリから直接Facebook Liveに配信することはできない。なんでもFacebookの規約に反するからとかで,代替方法を示している。

…他にもあるかもしれないが調べるの疲れた。無料でできる範囲でまがりなりにもやりたいことを達成できるものというと,ManyCamが一番の候補か。LiLy LiveがFacebook Liveに直接対応して,安定して動作するのならこれも候補。もちろんこれは手間。

考えてみれば,RTMPストリームを用意するのであればそれを利用してYouTube Liveを同時に行うこともできる。ただし,このリンクを手繰って,YouTube側の設定で事前にライブ配信できるようにしておく必要がある。その変更を行ってもすぐライブ配信できるわけではなく,24時間待たなければならないようなので早めにやる必要あり。

さらに,ストリームをmultiplexする必要があるので,自前で専用のサーバーを立てたりするのでなければ,RestreamとかCastrを利用することになるのだろうか。それなりの費用はどうしてもかかる。→Vimeoの無料お試し期間を利用すればYouTube Live, Facebook Live等複数プラットフォームにビデオの同時配信できる。

…というか,どうせそういうマルチ配信サーバーを利用せず,一つのサービスにしか流さないのであれば,FacebookよりもYouTubeか!特に若い人はFacebookを使ってなくても,YouTubeを視聴することは日常的にやっているはず。

Using Boya BY-A100 External Mic with A Smartphone in A Thick Cover

So I got a Boya BY-A100 omnidirectional condenser microphone. Even though I was happy with its performance, there was a problem.

I was going to use it with my then main smartphone Oppo R17 Neo. I have it in a relatively thick cover, and because of this cover, my Boya BY-100 will not go into the 3.5mm audio port. Actually, my main smartphone will be Oppo Reno A, but it is very close to R17 Neo in its physical size, so I am actually using the cover for R17 Neo on Reno A. So the problem will not disappear. What should I do?

One idea was to make the access hole of the cover to the audio port big enough for the BY-A100 to go in. Not only would it entail manual carving, which I do not know if I can handle, but also it would inevitably compromise the structural integrity of the cover, which is not a good thing. What is the point of using a thick cover if it does not protect the smartphone? But you might be able to make it work with different types of cover, an avenue I intend to explore later.

Another solution would be to use some sort of extension audio cable. That would probably make the mic dangle around, which in turn would make it hard to have it stably point in the desired direction, but it is better than not being able to use it at all.

What you need to make sure in choosing such an extension cable is that the signals are simply passed through as they are, and not converted or swapped in any way. The problem is that oftentimes the purpose of such cables are that very conversion (such as TRS/TRRS, CTIA/OMTP — see “Understanding TRRS and Audio Jacks – Cable Chick Blog” ), so most of the products do not meet this requirement.

Still, I found two products that seem to satisfy the requirement.

One is FDBRO Extension Cord Cable Audio Plug Jack 3.5mm Male to 3.5mm Jack Female Extend Wire Plug Connector. There is no clear explanation of what this connector does, but given the fact it is meant to give you access to the 3.5mm audio port of your iPhone when an external battery is attached the back of it and blocks your usual access to the 3.5mm port of your iPhone (see pic), I think it is safe to assume this connector just passes the signals through.

Another is 90 Degree Right Angled 3.5mm Male To Female Audio Converter Adapter Connector L Type Stereo Earphone Microphone Jack Plug. This one clearly states the following:

Contact definition: 1-1/2-2/3-3/4-4 (through straight in connection, extended use. Non mode conversion function)

So it looks promising. If the plug securely stays in place in the receptacle of the smartphone, then the mic will not either, so this will be the better solution. So I ordered this, but maybe I should have ordered this instead. It seems to have the same spec, but looks a bit cooler and only marginally more expensive.

By the way, a very similar looking product called 1Pcs/5Pcs Universal 3.5mm OMTP to CTIA Earphone Converter Adapter Cable Male to Female Aux to Aux 3.5mm Connector is an OMTP-to-CTIA converter, exactly the kind of product I needed to avoid.

We’ll see.

Boya BY-A100 Omnidirectional Condenser Microphone

I was looking for a unidirectional “shotgun”-type condenser microphone for use with smartphones to shoot videos of objects far away in “External Microphones for Use with Android Devices” (and eventually ended up buying a MIC-07 shotgun mic. While I was at it, I bought a Boya BY-A100 omnidirectional condenser microphone on eBay for ~$19, or a little over 2,000 yen. Clearly, this was for an entirely different purpose.

Once I shot an interview video with a smartphone without any external mic, the interviewee’s voice was recorded at such a low volume that when you watch the video, you have to crank the volume all the way up to be able to hear what he was saying. So I knew I needed an external microphone for possible similar situations in the future.

To shoot an-interview-and-an-interviewee videos, probably a stereo mic would have been better, but as I wrote in the article above, it is generally not easy to record audio in stereo using a smartphone with an external mic, so basically I just settled.

BY-A100 is obviously a discontinued product, but I managed to find its PDF manual, but there is not much useful info there.

I thought BY-A100 would be easy to use because all you have to do is to plug it into the 3.5mm headset port of a smartphone (and possibly use third-party auido/video recording apps that support external mics if the built-in ones do not, just as I did in “Oppo R17 Neo Supports Audio Recording in Stereo.”) Since such usage is assumed, I was certain that it had a TRRS plug (which was obvious from the photos too), and I would not need a TRS-to-TRRS converter.

When it arrived, I did a very basic testing with an old smartphone (Xperia UL) and there was a noticeable improvement in sound volume (listen to the recording below). Actually, I realized there was a problem using it with my then main smartphone Oppo R17 Neo, but I will talk about this in a separate article.

スマホデビューしたい老人向け契約

2018年10月に書きかけのままにしてたもの。完成してないがこのまま出す。


知り合いのお母さんがスマホデビューしたい,と。今まではソフトバンクのガラケーのりかえ割を利用してガラケーを利用してきて(自分もそう)既に更新期間に突入済み。「なにかいい案件を探してくれ」と頼まれてるが難航中。

以下の制約がある:

  1. ショップが各所にあるような主要なキャリアのいずれかと契約。
  2. 契約時購入する端末を実際に使用。
  3. 通話ごとの制限時間なしのかけ放題契約。
  4. MNPするとして,それに利用できる回線数は1のみ。
  5. 端末は1台。2台持ちは論外。
  6. 端末はシニア向け使用になっているのが望ましい。

背景には,ご本人がいろいろ直面するであろう技術的問題を極力自力で解決できるようにしたい,という思惑がある。そうしておかなければ特に家族がひっきりなしにトラブルシューティングにつきあわされて大変なことになるからだ。ここで「自力で」とは「周りの人間(家族など)には頼らず」の意味なので,キャリアのカスタマーサービスに直接問い合わせる,キャリアのショップに出向いてそこで解決してもらう,というのはOK。いやOKどころかそれを大いにやってもらいたいので,それができるようA.とB.が要件になる。

C.の通話ごとの制限時間なしのかけ放題も厳しい条件。「格安SIMの無制限電話かけ放題はどこだ?主要MVNO 12社の通話定額プランまとめ&比較 | XERA」によれればMVNOでそれを提供していると言えなくないのはイオンモバイルのみ。しかも,それはIP電話(番号が050で始まる)での話なので,通常音声回線の番号(090/080/070で始まる番号)から発信したいのなら,やはりMNOに分類される主要キャリアでなければならない。ここで注意すべきなのは,よく「格安SIM」にくくられてしまうワイモバイルが,実はれっきとしたMNOで,実際通話ごとの制限時間なしのかけ放題契約が可能であるということ。

D.によりありがちな複数回線同時契約による端末代の割り引きキャンペーンなどは利用できない。
もうこの段階で以下の経費削減の常套手段が使えないことがわかる。

  • いい条件の案件は複数回線同時契約が求められてることが多いがこれができない。
  • 単一回線契約で安く収めようと

ソフトバンクについては,今まで利用してきているので,機種変更することになる。ガラケ→スマホ割(ガラケースマホ割)では通話基本プランが要求されていてかけ放題プランは選択できない。

Auでは初スマホ割なるキャンペーンをやっているが,これで得られる割引は
Android™ MNPau購入サポート | キャンペーン | auでのそれと同じか少ない(全ての機種で比較したわけではない)


本日はワイモバイルでかんたんスマホ+60歳以上通話無料CPの組み合わせでの契約におつきあいで3時間潰れた。適用できる他の公式CPもなく店舗独自のもなし。MNPではなくソフトバンクからの番号移行だから新規契約より高いという個人的には非常に納得行かん契約。がご本人のさまざまな希望に沿うならこれぐらいしか選択肢がなかった。

最近はTwitterでCP情報も得られない。なんとか独自CPでCBがある店を大阪に見つけたがMNPのみが対象で番号移行は問題外,ということであえなく撃沈。まぁ副作用としては,どこのショップで手続きしても条件が変わらないということで,自分にとって交通の便のいいところで手続きできたのは不幸中の幸い。

Facebookの「ライブ」機能を使ってビデオをリアルタイム配信

Facebookの「ライブ」機能を使ってビデオをリアルタイム配信を,12月1日に行われたテコンドー大会の「中継」のために初めて使ってみた。そのとき得られた教訓をまとめておきたい。

  • 個人のアカウントからも,「ページ」からもライブ機能は利用できる。(余談:今回主催団体のページの編集者権限を頂いて,初めてページでどのようなことができるかを直接知ることができた。投稿一つずつに詳細な統計が得られるなどして,ビジネス向きであることがよくわかった。「今頃?」でしょうが…。)
  • Androidアプリでは,FacebookアプリでもFacebook Liteアプリでもライブ配信はできるのだが,Facebook Liteではなぜかポートレートモードでの撮影しかできない(以下がその例)。画面が自動回転しないような設定にしてしまっているせいかと疑ったがそうではなかった。ということは,ランドスケープで撮影したまま配信したいのならFacebookアプリを利用するしかない。そうでなくてもFacebookアプリは電池食いで悪名高いので,普段はサードパーティー製の軽量Facebookビューワーを使い,本家の機能が必要なときだけFacebook Liteアプリを使うようにしている。Facebookアプリはインストールすらしていなかったが,思うようにライブ配信するにはFacebookアプリを使わざるをえないようだ。
  • 視聴する側がFacebookアプリでライブビデオを見る際,実際撮影している画像の左2/3ほどしか見えなくなることがある。そのため,3面コートを全て写していても,視聴者の方に「2面しかコート映ってないですよ」という「ご指摘」をもらったりした。しかし後でFacebook上に保存されたビデオを見ても,実際ちゃんと3面全てを写していたことが確認できる。なにせ当日は忙しくて自分でじっくり検証している余裕がなかったが,私自身もこれをAndroid版Facebookアプリで経験した。これはアプリのバグだと思われる。ただ,その後追試を試みているが,再現はできていない。再現できた段階でバグ報告を開発者にする予定。
  • 「ライブ配信」ということではあっても,撮影されてから視聴者の元で再生されるまでの間に結構遅延がある。具体的な時間までその場では計測している余裕がなかったが,先ほど送信側は携帯電話のデータ通信を使用し,受信側は光ファイバーのインターネットサービスにwifiを利用する状況でテストしてみたところ,20秒以上の遅延があった。当日はもっと長かったように感じた。もっとも,現在のところ想定している使い方では,特に視聴者とやりとりするようなことは考えておらず,いわば一方的に動画を流すだけなので,リアルタイム性は重要ではない。
  • 冒頭の写真にあるような機材を使用したが,やはり外部マイクの効果は大きいと感じた。
  • 何度も勝手に配信が止まってしまった。理由は確定的にはわからないが,可能性として強く疑われるのがバックグラウンドミュージックに著作権のある楽曲を会場で流したこと。そういうのが一切なかった大会開始の頃のビデオは1時間半以上,手動で止めるまで問題なく配信できたのに,それ以降は全くランダムに思われる長さで切れてしまったことを見るに,その可能性は高いと思われる。まだ該当部分がミュートされるだけならまだマシだが,完全に配信がブロックされてしまっては目も当てられない(スクリーンショット参照)。最後に,世界から見ているであろう人たちに向けて,全員でメッセージを送ったつもりだったのだが(写真),そのとき既に配信は勝手に終わってしまっていた…(なんてこったい…)。今回の試みは,あくまで将来に向けてのテストという位置づけだったので,まぁ良しとするが,そうでなければこれは誰がどう見ても深刻な失敗。音楽担当者には,こういった問題を回避するよう,著作権に抵触しない楽曲を用意するよう強く依頼しなくてはならない。
  • 上と関係することだが,おそらく著作権に抵触する音楽が流されたせいでライブ配信が止められた際,どうもビデオを保存する選択肢が与えられていた(スクリーンショット参照)。そのときはともかくライブ配信を再開することに一生懸命でそこまで気が回らなかったが,保存していればいくらかは役にたったかも。
  • データ通信量は,上述のように必要なところで送信されなかった状態で,一日で計3GB強。どれだけ配信が途切れたのか正確に把握できてないが,ざっくり2倍あれば連続して配信し続けられたのではないか,と。多めに見積もっても10GB?いずれにせよ,今回は楽天モバイルの無料サポータープログラムで与えられたSIMカードを使用したので,データ量を気にする必要はなかったが。
  • 冒頭の写真には入ってないが,モバイルバッテリも途中から併用した。使用したOppo Reno Aはよくバッテリがもっていて,最後まで内蔵バッテリだけでもつのでは?とも思ったが,念のため。カメラに張り付いては状態を常時チェックすることはできなかったので。

後のために,こういったライブ配信をするために必要な機材は以下:

  • ライブ機能を搭載したFacebookアプリが使えて,それがインストール済みのスマホ。
  • スマホ自身のデータ通信で足りないかそもそもデータ通信が使えないようであればモバイル・ルータ。
  • 外付けマイク。オプションだが強く望まれる。
  • 三脚。
  • 三脚用スマホホルダ。
  • モバイル・バッテリ。大容量であるのが望ましい。
  • モバイル・バッテリからスマホに充電するの使うケーブル。バッテリは床に置くことになるので,三脚上のスマホに届くだけの長さのあるもの。
  • 今回できなかったが盗難やいたずらを防止する策を講じるのが理想的。

ビデオライブ配信の予告がFacebook上でされていて,その投稿中で実際にビデオ配信されるのを見たことがあったので,それをどうやるのか調べてみたら, “Your Step-by-Step Guide to Scheduling A Facebook Live | Social Media Network” によればモバイル機器からは,予め予定されたビデオ配信は行えないとのこと。→”ライブ配信するビデオに文字を被せる“でわかったように,PCでライブ配信の予定だけ設定して,モバイル機器からはその指定されたカスタムRMTPに流すようにするのなら,モバイル機器からもビデオ配信できるはず。

モバイル機器を使ったビデオ配信を前提にしている我々には少し残念ではあるが,今回やったように,事前に告知投稿をしておいて,別途(いわばいきなり)ビデオ配信を始めればよいだけのことともいえる。

また,同じビデオ配信を複数ページで公開するクロスポスティングという便利機能をFacebookは提供しているのだが, “Facebook Live crossposting: How to Live Stream to Multiple Facebook Pages — Lights, Camera, Live®” によれば,これまたモバイル機器を使用したビデオ配信はクロスポスティングできないとのこと。→これまたPCで事前に設定だけやっておいて,カスタムRMTPを取得しておいて,モバイル機器からそこにストリームすればできるんじゃないか?

今回はじっくり検討している時間的余裕がなかったこともあり,Facebook Liveを利用した。他の選択肢もある: “10 Best Mobile Live Streaming Apps (2019)” 。ターゲット層を考えるとFacebook Liveで正解だったと思うが,より若い人をターゲットにしたいならInstagramの同様な機能も検討対象となるだろう。

以下雑感: