TSファイルの編集

提供:Mark Science Wiki
移動: 案内, 検索


デジタル放送のフォーマットであるTSファイルには、放送の情報の他に色々と情報が含まれている。
ワンセグの情報なども一緒に送信され記録され、ファイルが大きくなってしまう。
特にCS放送では、同じ周波数で複数の放送を送信する記録されるので特に巨大化する。
通常でも5倍程度で、中には6~7倍ほどにもなる事がある。(地デジやBSの場合は、2倍まで行かない。)
その為に、保存には、大量のHDDを必要としてしまう。
※このページで記述するCS放送とは、全て「スカパーe2!」を指す。
※このページで記述する録画などの放送時間の目安は全て30分番組を対象としている。
その他にも、変に暗号化処理がなされている為に時折、復号漏れが発生する事もあり、その部分が見られないと言うのも珍しく無い。
このページでは、それらの対処法について記載しようと思った。
ま、専門的な事を記述しているページは、多々有る訳で、勉強したい場合は、そちらを参照して頂きたい。
このページは、実使用がメインなのでその様な事は記載していないので。

目次

背景

HDD使用量の増加

確かに最近は、HDDもかなり安くなってきている(2010/12時点で2TBが\8,000.-弱)が、それでも消費量は結構大きい。
例えば、通常、番組を録画した時のファイルサイズは、

  • 地デジ:2.5GB程度
  • BS:3.0GB超
  • CS:7~8GB程度[1]

と、CSのTSファイルの大きさが顕著であり、同じ番組でも地デジの3~4倍程度になる。
しかし、これはCS放送が幾つかの放送局の放送を1つの物理チャンネルで一緒に送信している為に、発生する。
実際は、CS放送でも肝心な部分[2]は、画質にもよるが、

  • SD放送:1~1.5GB程度
  • HD放送:4GB程度

と、SDだと確実に1/5以下になり、HDでも半分程度にはなってしまう。
実際、地デジを始めて1年ほどで、BSとCSも見始めて半年を越えたところだが、記録用HDDは実に数十本!に達した。[3]
と言う事で、少しでもHDDの占める場所を減らそうということになった。

再生時のチャンネルズレ

これはさほど大きな問題ではないが、録画したTSファイルを再生する際に目的のサービスではなく別のサービスが再生される事がある。
CSの時に顕著だが、同じ周波数内で複数の番組を放送しているためで、通常は目的のサービスが再生されるがそうで無い場合も有る。
これって、VLCなどのプログラムで合わせることは出来るが、その情報が残らないので再生するたびに変更する必要が有り結構めんどくさい。
これについては、目的のサービスのみを残す事で解決できる。

復号漏れの発生

録画した物を見ていると時折、真っ黒になり見られない部分が発生したり、最初から最後まで全く見られないものが存在する。
これは何かと調べてみると、どうも録画する際に本来ならきちんと記録されるべき物がされなかった為に発生する。
比較的頻度の高い物が、

  • ドロップの異常発生(多少なら無理矢理再生する事は可能)
  • ノイズの異常発生(同上)
  • 復号漏れの発生

と言った物が考えられる。
1つ目と2つ目の発生で見られないものは、諦めるしかないと思う。
ファイルが壊れているといると言っても良い状態に近いので。(Mepg2Winなどの修復ツールで復活できる可能性もあるらしい。)
3つ目は、正しく復号処理がなされず暗号化されたままの状態になってしまっているもので復号処理する事で視聴可能に出来る。
当方の場合、1枚の糟カードを5台(内1台は、臨時用で通常待機状態なので実質4台)で共用している。
ネットの情報などでは、1枚のカードで最大8チューナーくらいが限界らしいのでそう言うのが起きてるのかも知れない。
地デジ/BS機は、余剰のカードが有ったので、そちらを使うように変更した。
CS契約のカードは1枚で3台の録画PC(6チューナー)とMuti2Dec用に使うように変更した。
予約状況などを見ると最大で4~5チューナー程度のようで、余裕はあるんじゃ無いかな?

どうすればよいか?

この辺りのソフトウェアもBon系のアプリケーションとしてネットワーク上に存在する。
全部は、紹介しきれないし、使っていない物は判らないので、私が現在使っているものについてのみと言うことにする。

  • TSファイル編集ソフト - TsSplitter
  • 復号漏れ対応ソフト - Multi2Dec

と言うものを使用している。
これらは、何れも処理は軽く処理時間のボトルネックは何れもHDDへの書き出しのみとなる。
また、操作も簡単なので、現在はこの2つのみ使っている。
ここでは、全て操作は、Windows上のGUIで行う事とする。(CUIとかは、自分で何とかしてくれ。)

TsSplitterについて

世の中に他にも色々とTSファイル編集ソフトは、存在するが個人的には一番扱いやすいのでこればかり使っている。
と言うか、必要な番組の情報のみを抽出するだけなのでこれで十分だと言う事。

入手とインストール

このソフトを探す場合、Googleなどで「TsSplitter」で検索すると最新版のありかが分かるのでそこからDLする。
インストールは、適当なところにフォルダを作成し、DLしてきたアーカイブの内容を全てそのフォルダに解凍する。
(アーカイブは、ディレクトリ構造になっていないので、フォルダを作っておかないと変な事になる。)
削除する時は、作成したフォルダごと削除すればよい。
また、動作する上で特に前提となるランタイムなどは必要ないようだ。
Windows 7の場合、インストール先をc:\Program Filesに作ると後々面倒なので、その他の場所に作った方が良いかも?
参考までに私は、c:ドライブ直下にTsSplitterと言うフォルダを作成してそこに入れている。

使い方

起動は、上記で作成したフォルダ内に「TsSplitterGUI.exe」と言うファイルを起動する。
ここでは、ザックリとした使用法しか紹介しないので、詳細を知りたい場合は、同フォルダ内の「TsSplitter.txt」を参照されたし。
更に詳しい情報は、ググルと一杯出てくるので、その辺で確認すべし。
なお、インストーラとかは無いので、スタートメニューやデスクトップには、ショートカットは登録されない。
適当にスタートメニューやタスクバー、デスクトップなどに手動で上記起動ファイルのショートカットを登録した方が使いやすい。
参考までに私は、タスクバーにショートカットを入れている。(ここならいつでも見えるので。)[4]
起動すると、以下のような画面になる。
TsSplitterGUI.jpg
設定部分は、私は、特定の番組情報だけを抜き出したいだけなので、以下の2点のみ設定している。

  • 番組情報で分割する - EPGの情報で分割できるようだ
  • CS放送の分割を行う - 地上波やBSはそれほど小さくならないのでやってない
    • すぐ右側のテキストボックスに分割したい放送局のCH番号を入力する。(アニマックスなら332と言うように)
      チャンネル設定をしないと全てのファイルが書き出されて、必要以上に時間がかかる。

ファイルの選択は、右上の参照ボタンをクリックし、していたいファイルを探して設定する。
この時、Windowsのファイル選択と同様にShiftキーとCtrlキーを使って複数のファイルを同時に選択する事が可能。
選択後「開く」ボタンをクリックすると、元の画面に戻ってくる。
なお、ファイルの選択は、Exproller上からドラッグ&ドロップして行う事も可能。
ただし、後から追加しようとすると前に登録されていた分はキャンセルされて消えてしまうようだ。
右下にある「変換」ボタンをクリックする事でファイルの分割が始まる。
書き出しは、徐々に行われ、目的のファイルのは、元のファイルにチャンネル情報が吹かされたものとなる。
処理経過は、ログコンソールで確認でき、「終了しました」と出たら全ファイル完了となる。
なお、この際にTvRockなどで前後にマージンを取っている場合は、その分も別ファイルとして書き出される。(多くの場合は無駄ファイルのようだ)
1つのチャンネル分だけ切り出すのであれば、正確には計測していないが、30分番組で大体1分程度だろうか?
完了したら、時々、失敗する事もあるらしい[5]ので、念の為、再生できるかをチェックしておく事を忘れずに。
問題なく再生できることが確認できたら、元のファイルや前後のファイルなどは削除しても大丈夫。

おまけ話

3本あるCG-HDC4EU3500が、ほぼ満杯になってしまい、その他にも大量のHDDを購入しており、既に置く場所がなくなってしまった。
そこで、先日TsSplitterの事を思い出し、処理をしてみる事にした。
対象は、1クールの番組を保存する為に使っていたCG-HDC4EU3500の1台。
これには、2TBのHDDを4本を搭載し6TBのHDDとして使っていたが、ついに足りなくなってしまった。
中身は、色々で、TSファイルの他にアナログで録画していたMPEG2ファイルなども入っている。
通産でどれくらい時間が不明だが、1フォルダずつ処理をしてみた。
一部、復号漏れや分割ファイルで再生できないなどの問題があった。
それらのファイルの処理は後回しにしたので全部のファイルを処理できた訳ではないが、大体半分ほどに減らすことが出来た。
思ったほど減っていないのは、

  • アナログ保存のMPEG2ファイルには全く効果が無いので何もしていない
  • 地デジやBS放送の場合、それほどメリットが無いのでやってない(削れる情報がワンセグ情報程度なので)
  • キッズステーションHDなどのHD放送の場合、半分程度にしかならない(30分番組で4GB位)

と言った事が有る為。
全てSDのCS放送なら、最低限1/5くらいにはなる計算なので。
他にまだ、総量として50TBほどのHDDがある(全体の使用量は7~8割ほどかな?)ので、今後はこれらを徐々に実施予定。
そう言えば、キッズステーションと言えば、どうして、アスペクト比がおかしくなるものがあるんだろうか?
時折、画面が横方向が縮んで真四角になってしまう物がある。
このような場合、アスペクト比を強引に16:9にすればいいんだけど、再生のたびにする必要が有り、結構面倒だ。
アスペクト比が変更できるツールでも探してみるか?
どうも元々HDのものでは発生していないみたいで、昔の物を無理矢理HD送信している物で発生している。
もしかすると再生ソフト側の問題なのかも知れないけれど。(当方は、VLC Media Playerを使っている。)
違う再生ソフトでも試してみる事にするか。

も一つおまけのおまけ話

別ページで記載しているが、実際のところTsSplitterを使わずとも録画する時点で似た様な事が出来る。
TVTestの設定の1つで録画の設定で「現在のサービスのみ保存する」を有効にしておくと目的外のチャンネルを保存しなくなる。
大きいけど、TsSplitterで分割すると言うのが面倒だと言う場合には、こちらを試してみると良いだろう。(面倒になったので現在はこの設定をしている。)
ただ、録画前後のマージン部分は残ってしまうけど。(デフォルトで前:60秒分、後:30秒分)

Multi2Decについて

TSファイルの暗号情報復号化ソフトは、他にも色々と有るようだが、個人的にこれしか使った事が無いので他の物は知らない。
前提条件として、暗号を復号するものなので、そのための復号キーの情報が必要になる。
ここでは、いわゆる糟カードと言う奴だが、このソフトはBonCasLinkにも対応しているのでこれ専用に用意する必要は無い。
CS放送の場合、契約情報の有無が必要になるので実際にスカパーe2!などで契約しているカードが必須となる。
CS放送でも無料放送分と元々無料放送の地デジやBS放送については、使えるカードならどれでも大丈夫。
なお、TSファイルのエラーチェックだけに使うのであれば、カードはいらないとの事だ。

入手とインストール

TsSplitter同様Google等で「Muti2Dec」で検索できるので、特に問題なければ最新版をダウンロードしてくる。

前提条件

詳細は、同梱のReadMe.txtを読んでみてもらうとして、基本的に

  • 復号させるには、例のカードが必要[6]
  • Windows XP SP3以降のOSであること[7]
  • Microsoft Visual C++ 2005 SP1 再頒布可能パッケージをインストールしていること[8]

が必要となる。

インストール

ダウンロードしてきたアーカイブをそのままディレクトリ構造を維持したまま適当な場所に全て解凍する。
中のファイルの内実行ファイルとdllファイルは全て必要になる。
反対に一緒に解凍されてくるzipファイルとテキストファイルは、動作には関係ないので削除しても可。(ReadMe.txtは残しておくべきだと思うが。)
解凍先は、TsSplitterと同様の場所で構わない。
解凍する際にディレクトリ構造を維持するように設定していれば、Multi2Decと言うフォルダが作成されそこに全てのファイルが解凍される。
私は、同様にc:ドライブ直下に解凍している。

使い方

起動は、ディレクトリ構造のまま解凍すると、「Multi2Dec」フォルダ内に「Multi2DecWin.exe」が有るのでこれを起動する。
ここでは、ザックリとした使用法しか紹介しないので、詳細を知りたい場合は、同フォルダ内の「Readme.txt」を参照されたし。
なお、TsSplitter同様インストーラとかは無いので、ショートカットは登録されない。
TsSplitter同様、適当にショートカットを登録した方が使いやすい。
参考までに私は、TsSplitter同様タスクバーにショートカットを登録している。
起動すると、以下のような画面になる。
ファイル:Multi2Dec.jpg
復号漏れを解除したいファイルをファイルリストから選択するかエクスプローラなどから直接ドラッグ&ドロップで登録する。
複数登録する事も可能。
大元の未加工のTSファイルでやった方が安全かも知れないが、でかいので、処理に時間が掛かってしまう事になる。
TsSplitterで分割したファイルでも可能なので、分割後にやった方が処理時間を短縮できる。
後は、メニューバーにある実行ボタン(緑の横向き三角)をクリックする。
解除されたファイルは、ファイル名に「_dec」と言う文字列が付加されて徐々に書き込まれていく。
ただ見ていると、復号不要の箇所は処理が早いみたいだけど、復号処理している部分に差し掛かるとそれなりの時間が掛かっている模様。
とは言っても目に見えて劇的に遅くなるのではなくなんか遅くなってね?程度の感覚。
何れにせよこちらも最大のボトルネックは、復号化したファイルの書込み時だ。
当方の環境で復号に完全に失敗している[9]8GB程度のファイルを復号すると10分程度じゃ終らなかったと思う。


  1. 放送局や日時によりかなり差異があるが、平均的にはこのくらい。
  2. 要するに録画したい部分と言う意味で。
  3. まぁ、ビデオテープ換算だと...考えたくない。(^^;
  4. 個人的に何でもかんでもデスクトップに置くのは嫌いなんで。
  5. 1000ファイル以上やったが、TsSplitterが原因と言うのは見たこと無いけどね。
  6. BonCasLinkにも対応しているので専用に用意する必要は無い
  7. これについては、もうすでにお約束レベルか?
  8. BonCasLink等のBon系アプリで必須なので既にそれらをインストール済みなら不要のはず
  9. BonCasLinkのアクセス失敗やBonCasServerPCが落ちた時など
個人用ツール
Google AdSense