第 183 回 東京エリア Debian 勉強会資料.Deb
銀河系唯一のDebian専門誌
2020 年 3 月 21 日集特議会ビデオデビアン勉強会

2.6

目次(znz)
2.7

ィング報告

1.1
1.2

2

2020 年 1 月 度 東 京 エ リ ア
Debian 勉強会 . . . . . . . .

2

OSC 2020 Tokyo/Spring . .

2

事前課題

2

3

NISHIYAMA. . . . . . . . . . . .

AkihiroTerasaki3(aki-hiro terasaki) . . . . . . . .

3

2.8

Kouhei Maeda (mkouhei) .

3

2.9

ysaito . . . . . . . . . . . .

3

2.10

yosuke san . . . . . . . . .

3

2.11

koedoyoshida. . . . . . .

3

2.12

yy y ja jp. . . . . . . . .

3

2.13

あ . . . . . . . . . . . . . .

3

2.14

NOKUBI Takatsugu (knok)

3

動画配信環境をしらべてみた

4

最近の Debian 関連のミーテ

1Kazuhiro

2.1

dictoss. . . . . . . . . . .

3

2.2

YukiharuYABUKI . . . . .

3

2.3

ItSANgo . . . . . . . . . .

3

3.1

はじめに . . . . . . . . . . .

4

2.4

nabaua (inaba kazuhiko) .

3

3.2

勉強会形式による検討 . . . .

42.5matoken

3

3.3

ツール . . . . . . . . . . . .

5. . . . . . . . . .

13

第 183 回 東京エリア Debian 勉強会 2020 年 3 月

1 最近の Debian 関連のミーティング報告杉本典充

1.1 2020 年 1 月度 東京エリア Debian 勉強会
2020 年 1 月 18 日 (土) に東京エリア Debian 勉強会を開催しました。会場はサイバートラスト株式会社の会議室を借りて行いました。参加者は 3 名でした。
各自用意した課題に取り組み、Debian に関する動向について情報の共有を行いました。

1.2 OSC 2020 Tokyo/Spring2020 年 2 月 22 日 (土) に開催する OSC 2020 Tokyo/Spring*1 に東京エリア Debian 勉強会は参加する予定でした。しかし、新型コロナウイルス感染症（COVID-19）が流行しているためイベントは中止となりました。

*1 https://www.ospn.jp/osc2020-spring/2第 183 回 東京エリア Debian 勉強会 2020 年 3 月

2 事前課題杉本典充

今回の事前課題は以下です。

1. 何か１つ以上のビデオチャットアプリケーションのインストールを試してみてください。

2.1

2.8

dictoss

1. （回答なし）

1. Skype、Microsoft Teams、Google ハングアウト

2.2

2.9

YukiharuYABUKI

2.10

ItSANgoyosuke san

1. tox: buster だと tox client の qtox と utox が package になっています。

1. Zoom https://us04web.zoom.us/

2.4

ysaito1. skype (teams)

1. 書ききれません。

2.3

Kouhei Maeda (mkouhei)nabaua (inaba kazuhiko)

2.11

koedoyoshida

1. zoom,meet,slackcall,discode あ た り を 良 く 使って ま1. zoomす。

2.5

matoken

2.12

yy y ja jp

1. zoom、NextcloudTalk、Discord
1. （回答なし）

2.6

Kazuhiro NISHIYAMA (znz)

2.13

1. zoom.us、Skype

2.7

あ1. （回答なし）

Akihiro Terasaki (akihiro terasaki)

2.14

1. zoom、google hangouts、skype

NOKUBI Takatsugu (knok)

1. Hangout, Zoom

3

第 183 回 東京エリア Debian 勉強会 2020 年 3 月

3 動画配信環境をしらべてみた
上川純一

3.1 はじめに未知の感染症が流行している今日この頃いかがお過ごしでしょうか。感染症を回避するには人にあわないのが一番です。Debian 勉強会はそもそもオンラインでしか交流のなかった Debian 界隈の方々にオフラインで集まる会を作った気もするのですが、一周回ってオンラインで開催してみようと思い調べてみました。
ここ１５年で日本の家庭向けネットワークの速度もコンピュータの処理能力も向上しビデオチャットが実用されるようになってきました。２００５年に３００万家庭程度であった FTTH も今日においては３０００万家庭とほぼすべての家庭に導入されています*2 。Debian 環境でオープンソースツールだけで大人数にレクチャー形式で動画配信する仕組みについて検討してみました。目標はオンラインで Debian 勉強会を開催することです。

Debian 勉強会のスタイルは事前資料を用意しつつも人が集まった現場でのかけあいを重視しています。しかしその環境を再現するのはなんとなく難しそうです。技術的な制約によりとりあえずレクチャー形式で観客はあまり話をしなくてもよいと仮定して発言したい場合は電話するなりテキストチャットするなりして手を上げてもらうかたちにすればよいのでしょうか。

3.2 勉強会形式による検討
まずどういう勉強会の形式があるだろうか、考えてみましょう。

3.2.1 単一拠点での配信講師が一人でずっと話をし続けていいならば Youtube Live などのストリーミング配信形式が適当でしょう。FLV形式のデータを RTMP で指定された URL に送信すればよいです。たとえば ﬀmpeg で動画をキャプチャーしてエンコードして送信すればよい。ソースはデスクトップのキャプチャーと、マイク入力と USB UVC Camera でよいでしょう。
他にもいろいろなサービスがあるのでそれを使えばよいし、別に視聴者の数が大人数になる予定でないなら、RTMP サーバを立ち上げればよいだけでしょう。
何もフィードバックがないなら録画してのちに配信するのとかわらないので、付帯するコメントシステムや、IRCなどのテキストチャットとかで適当に質問などのフィードバックを貰えばよいでしょう。

*2 https://www.soumu.go.jp/johotsusintokei/whitepaper/ja/r01/html/nd111120.html 図表 1-1-1-17

サービス等の契約数推移より

4固定系ブロードバンド

3.2.2 複数拠点からの配信要素としては講師役が複数いるときに切り替えながらやるという場合です。テキストチャットなどを補助ツールとして使いながら拠点映像ソースの切り替えをする感じになると思います。
フィードバックはテキストなどの別途システムを使い、講師だけは切り替えがあるということはある程度の熟練が期待でき、事前にタイミングも打ち合わせができるということで、たとえば OBS などのストリーミングソフトウェアで手動で切り替えることも可能でしょう。
テレビのニュース番組とかで別の拠点のアナウンサーに切り替わるけどかけあいができない場面をイメージしています。

3.2.3 かけあいがある通信勉強会なので参加者が相互に意見を言い合いながら参加する形にしたい。通常室内ではクイズやってみたりその場で議論してみたりするわけです。
予想としてはレイテンシとノイズが大きいのが問題になりそうです。テキストベースのチャットを補助ツールとして使うのがよいかもしれません。
映像は光が直行するので映り込みはあまり問題にならないと思うのですが、音はエコーがあります。ヘッドホンと指向性マイクをつかうのがよいでしょう。壁に吸音材を貼ったりして反射を減らすのも良いかもしれません。

Bluetooth ヘッドセットは便利そうなんですが残念ながら Bluetooth の HSP に切り替わると音質がひどくなります。8kHz もしくは 16kHz 程度でフィルタリングされ、あーこれは電話だ、という音質になります。
発言しないときは音声をミュートしておきましょう。発言するときには手をあげてタイミングをみはからいましょう。ビデオを通常時はきっておいて必要なときだけオンにするなどを検討してみましょう。
キーボードの音が聞こえると結構萎えます。キーボードから物理的に離れたマイクが理想です。ノートパソコンの内蔵のマイクはどうしたらよいものか。
システムの処理能力の上限に近づいているようであればビデオを切りましょう。

3.3 ツール
活用できるオープンソースのツールをいくつか試してみました。

3.3.1 nginx rtmp モジュール
RTMP サーバにはいろいろあるのですが、ウェブサーバとしても人気の nginx の rtmp モジュールがなんか人気みたいなので試してみました。

Debian パッケージになっているのでインストールはシンプルです。
$ sudo apt install nginx libnginx-mod-rtmp/usr/share/doc/libnginx-mod-rtmp/README.md.gz を眺めた感じだとシンプルに nginx.conf に設定をいく
つか書くと良いようです。このまま設定すると 1935 番ポートでうけとったデータを同じチャンネルで配るようになります。
全く認証とかないので普通は on publish とかで認証するみたい。
rtmp {
server {listen 1935;
chunk_size 4000;# Many publishers, many subscribers# no checks, no recording
application videochat {live on;}}}5

設定を反映させるために nginx を再起動しましょう。
$ sudo /etc/init.d/nginx restart

これで rtmp://server/videochat/streamkey で接続できるようになります。ファイアウォールの設定で TCP
ポート 1935 を開けておきましょう。

videochat の部分は任意の名前が設定できて、あと stream key の部分はアプリケーションによっては URL の一部として指定します*3 が、アプリケーション*4 によっては別のフィールドにパスワードみたいな扱いで入力します。

3.3.2 ﬀmpeg
ﬀmpeg は便利なコマンドラインの動画変換ツールです。ストリーミングするときにも便利。いろいろなフラグがあるんだけど例えば以下のようなフラグをつかうことが多いのか。試行錯誤しているのだけれどもこれでは十分ではないよう。

• [-re] 全力で処理するんじゃなくてフレームレートに合わせて処理する• [-ﬄags nobuﬀer] バッファリングしない$ ffmpeg -re -fflags nobuffer -i xxxx -f flv rtmp://server/videochat/name

ﬀplay というツールもあって、それで再生するのを試してみるのも良いです。
$ ffplay -fflags nobuffer -f flv

rtmp://server/videochat/namehttps://trac.ffmpeg.org/wiki/StreamingGuide#Latency
3.3.3 vlc
VLC は万能なビデオプレイヤーですが、rtmp の再生にも便利です。配信が動作しているのかを確認するには便利。
$ sudo apt install vlc$ vlc rtmp://server/videochat/name

3.3.4 OBS Studio
GUI のアプリケーションで、いろいろなソースからビデオとオーディオをミックスして再配信と録画ができます。
$ sudo apt install obs-studio

複数の Scene を定義できて、それぞれの Scene に Source を複数定義できます。Source としてはマイクとかカメラとか、あとメディアソースというのでファイルとか RTMP などが扱えます。頑張ろうと思えば手動でビデオカンファレンスが実現できる気もする。
ぱっとみてわからなかった操作としてはソースの Cropping は alt おしながらドラッグすればよいみたいです。

Sources Guide https://obsproject.com/wiki/Sources-Guide を読むまではさっぱり使い方がわからなかったです。

*3 ﬀmpeg, vlc など*4 OBS6

Debian 勉強会資料
2020 年 3 月 21 日
初版第 1 刷発行
東京エリア Debian 勉強会 （編集・印刷・発行）

7