この記事は DTV Advent Calendar 2015 3日目の記事です。
録画ファイルがドロップした…
そんな経験が一度や二度ではない皆様、おはようございます。今回はパケットのドロップを”失踪”になぞらえて、なぜドロップが起こるのか、その実態に迫ろうと思います。
パケットとは何者か
まず、ドロップについてではなく、ドロップする対象であるパケットについて知っているでしょうか。放送では、一つのストリームでいろいろな種類のメディア(映像、音声、字幕等々)を送るため、トランスポートストリームという形式で送っています。それぞれのメディアを切り分けて、一定の大きさのパケット(小包)に包み、それを繋げて送るというものです。それぞれのパケットにはどのメディアかわかるようにPID(宛先)が書かれていて、受け取った側はPIDが一緒のものをつなげると元通りになり再生できるというわけです。
パケットが失踪すると何が起こるのか
メディアの一部であるパケットがドロップしたらどうなるでしょうか。受け取った側では、そのパケットの部分なしで再生することになります。つまり、映像ならブロックノイズ、音声なら無音になってしまうわけです。
パケットの失踪に気づけるわけ
同じPIDのパケットには流れてくる順番に0~15の番号が割り振られており、15まで来たらまた0から割り振られます。これが連続していないことを検知することで、ドロップが発生した、と分かるようになっています。
事件発生!パケットが失踪した!
パケットがドロップした、なぜ?そのパケットはいつどこでドロップしたのでしょうか。ドロップには主に次のケースが考えられます。
Case.A 受信感度不足による失踪
受信感度が悪い場合、データが正常に受け取れず、パケットが破棄される場合があります。例えるならば、パケットは受信した時点で既に死んでいたため、録画ソフトがパケットを遺棄したわけです。
対処方法としては、間違えて遠くの電波を受信してないかの確認、同軸ケーブルの確認、アンテナの方向の調整、ブースターの設置、より感度の高いアンテナへの置換が考えられます。
Case.B コンピューターによる失踪
受信感度が悪くない場合はコンピューターの処理速度に問題がある可能性があります。コンピューターがデータの処理(復号など)に追いつかない場合、一部のパケットが処理できなくなり、ドロップする可能性があるのです。例えるならば、録画ソフトがパケットを電子の海に沈めた形になります。
対処方法としては、より速いCPUへの置換、復号処理する場所の変更などが考えられます。
Case.C 放送側による失踪
上記の場合以外では、放送局がそもそもパケットを送出していなかったということが考えられます。BS11の0時にNITがドロップするのはこのためです。例えるなら、パケットが引きこもりがちだったというところでしょう。
これは対処方法というよりも、どうしようもないものなので、ドロップしたPIDが映像や音声、字幕などでなければ問題はないと考えましょう。
Case.D 失踪判定ミス
パケットの失踪に気づけるのは上記の通りなのですが、その時に割り振られる番号がリセットされたりする場合があり、その状況を想定していないソフトウェアの場合、ドロップしていないのにドロップ扱いになってしまうことがあります。例えるなら、パケットは架空の人物であったということになります。
対処方法としては、ドロップ判定したソフトウェアを変えることが考えられます。
事件解決!しかし、事件はまた起きる…
上記以外にも、ドロップが起きる原因はまだあります。ケーブルテレビにしていても、受信感度が良すぎて閾値を超えてしまい、多くのドロップが出た、なんていうのも身近にありました。ドロップの原因は所謂”糞環境”以外にもいろいろとあります。関連スレなんかを覗いてみてもいいかもしれませんね。