MPEG-2システム

**MPEG-2システム**（MPEG-2 Systems）とはMPEG-2を多重化し、伝送するための規格である。ISO/IEC 13818-1およびITU-T勧告H.222.0において標準化されている。MPEG-2システムは用途別に、MPEG-2プログラムストリーム（**MPEG-2 PS**）とMPEG-2トランスポートストリーム（**MPEG-2 TS**）の2種類に分けられている。

## エレメンタリストリーム
符号化された画像・音声データのそれぞれを、**エレメンタリストリーム**（ES：Elementary Stream）と呼ぶ。MPEG-2システムファイルにおける各ES（格納可能なメディアデータ・コーデックの種類）を以下に説明する。

;ビデオ
:MPEG-1、MPEG-2（拡張規格：MPEG-4、MPEG-4 AVC、VC-1）
;オーディオ
:MP1、MP2、MP3、AC-3、リニアPCM、DTS（拡張規格：AAC）
;静止画
:JPEG

なおMPEG-2システムの誕生経緯はDVDのパッケージソフトの規格化を目指して策定された規格であるが、MPEG-2システムの規格とDVDの規格は全く等しい内容ではない。実際にDVDのアプリケーションフォーマットとして定められた仕様はあくまでMPEG-2システムを前提条件にしたものになる。

## エレメンタリストリームのパケット化
画像ES または 音声ES を適当な大きさに分割してパケット化したものを**PES**（Packetized Elementary Stream）と呼ぶ。MPEG-2システム規格ではESの分割の単位について詳しく定義していないが実際の運用においては映像ならピクチャ単位、音声ならブロック単位などの意味のある単位ごとに分割することが多い。PESパケットヘッダは再生時刻の情報を含むことができ、これを用いて映像と音声を同期して再生することができる。

MPEG-2システムでは、PESを多重化し伝送又は蓄積する形式の用途別に**プログラムストリーム**（Program Stream：PS）と**トランスポートストリーム**（Transport Stream：TS）の2種類が定義されている。

PSとTSはデータ形式が異なるだけであり、相互に画像を無劣化で変換することが可能である。

## プログラムストリーム

単一のプログラム（お互いに同期をとった一組の映像や音声、データの固まり）を光ディスクやHDDなどの蓄積メディア等エラーの可能性が低い環境で取り扱うことを想定した形式で、CDなどに記録することを目的に策定されたMPEG-1システムの拡張版でもある。DVD等の記録形式として使用されている。複数のPESパケットを連結し先頭に**パックヘッダ**（pack_header）を付与したものを**パック**（pack）と呼び、さらに複数のパックを連結したものがプログラムストリームとなる。

PSには映像や音声のPESのほかに、**Program Stream map**とよばれる各ESの詳細情報や**Program Stream directory**とよばれる再生時刻とビットストリーム上のオフセット値を含むランダムアクセスのための情報を挿入することができる。

## トランスポートストリーム

同時に1つ以上のプログラムを、エラーが発生しうる環境で取り扱う放送や通信で用いることを想定した形式である。日本の地上／BSデジタル放送をはじめとして、世界各国のデジタル放送規格の多くで採用されている。D-VHSや、DVテープにHDTVビデオ映像を記録するHDV規格、第3世代光ディスク（Blu-ray DiscやHD DVD）、ハイビジョンテレビ放送を録画するレコーダーなどにも採用されている。

TSにおいては、PESパケットを**トランスポートパケット**（Transport Packet。TS packetとも）と呼ばれる188バイト固定長のパケットへ分割する。このトランスポートパケットの連続が、トランスポートストリームとなる。各TSパケットには**パケット識別子**（PID）と呼ばれる13ビットの情報が含まれる。これは各トランスポートパケットのそれぞれが何を伝送しているものか示すためのものである。同一の画像、同一の音声はそれぞれ同じPIDを持つためTSを受信した側はそれを用いて元のPES（ES）に戻すことが可能である。

TSパケットの先頭4バイトにタイムスタンプ情報を付加して合計192バイトのパケットにしたTSを特に「TTS（Timestamped TS）」

と呼び、主に放送局で用いられている。
### PSI/SI
TSでは複数のプログラムを取り扱うことが可能であるがそのTSにどのようなプログラムが存在し、TSに含まれる各ESがどのプログラムに属しているかを記した情報を**PSI**（Program Specific Information）という。PSIは 動画や音声とは別のPIDを持つTSパケットとして、TSに挿入される。PSIは、以下のようなものが存在する。特にPID=0のものはPATと呼ばれるほかPMT、CATなどが存在する。

;PAT（Program Association Table）
:あるTS内に含まれるプログラム一覧を、PMTのPID一覧で格納したのがPATである。PATのPIDは必ず0と決まっている。なおワンセグでは帯域削減の為含まれず、PMTは0x1FC8もしくは0x1FC9といった特定の値を持つ。
;PMT（Program Map Table）
:あるプログラムに含まれる画像や音声などの各PIDを格納したのがPMTである。PMTから画像や音声などのPIDを得ることが出来れば、それらPIDのついたTSパケットを抽出することでプログラムを再生できる。
;CAT（Conditional Access Table）
:限定受信をサポートする情報が含まれる。CATのPIDは必ず1と決まっている。

MPEG-2 System規格ではPSIのみが記述されているがMPEG-2 TSを採用する多くのデジタル放送規格ではPSIを拡張し、番組情報などを含めた**SI**（Service Information）が規定されている。

SIはPSIの一部であると見なして、PSI/SI情報としてまとめて扱う場合が多い。またSIにはEPGのほぼ全てが含まれるので、SI/EPGとまとめて扱う場合も多い

ARIBがARIB STD-B10で規定するSIには、以下のようなものが存在する。

;NIT（Network Information Table）
:チャンネル番号や変調方式、ガードインターバルなど、送信するネットワークに関する情報が含まれる。NITのPIDは必ず0x10と決まっている。
;BIT（Broadcaster Information Table）
:放送局識別情報（BSD）や系列情報（地上D）、各SIテーブルの再送周期、SIの掲載期間、ロゴ情報の伝送方法など放送局のSI送信情報が含まれる。BITのPIDは必ず0x24と決まっている。
;SDT（Service Description Table）
:チャンネルの名称が含まれる。また各チャンネル（サービス）で送出されるEITの種類、デジタルコピー制御情報も含まれる。SDTのPIDは必ず0x11と決まっている。
;EIT（Event Information Table）
:番組の名称や放送日時、放送内容など番組に関連する情報が含まれる。EPGは主にこの情報を用いて作成される。EITのPIDは必ず0x12と決まっている。
:EITはその示す内容により自局の現在及び次の番組、他局の現在及び次の番組、自局のそれ以外を含む番組、他局のそれら以外を含む番組の4種類に大別される。自局の現在及び次の番組に関する情報は必ず送出する必要があるがその他の情報は送出が任意であり、また送出の頻度も重要性に応じて小さくすることができる。
;TOT（Time Offset Table）
:現在の日付、時刻、およびサマータイムの情報が含まれる。TOTのPIDは0x14と決まっている。
;NBIT（Network Board Information Table）
:案内等の掲示板情報が含まれる。
;LDT（Linked Description Table）
:他のテーブルから参照するための情報を集約している。
;TDT（Time Date Table）
:現在の日付、時刻に関する情報が含まれる。ただしTOTにはTDTの全ての情報が含まれるため送信されるのはTDTかTOTのいずれかのみ（PIDは双方とも0x14）と規定されており、実際のところTDTだけが送信されている。

番組より小さい単位（番組内イベント）の内容を記述するための、さらにいくつかの拡張が行われている。
;LIT（Local Event Information Table）
:番組内イベントに関する情報が含まれる。
;ERT（Event Relation Table）
:番組、および番組内イベントの関係に関する情報が含まれる。
;ITT（Index Transmission Table）
:番組内イベントに関係する時刻情報が含まれる。時刻情報はLITにも含まれているが放送ごとに異なる値が必要になるため、LITとは別に送出される。

ARIB STD-B1、B21では以下のような情報も規定されている。

;SDTT（Software Download Trigger Table）
:デジタル放送受信機の最新ソフトウェア（Engineering Stream Serviceで伝送される）の伝送スケジュールが記載される。本テーブルは、全放送局で全く同一の情報が伝送されている。実際のデータはARIB STD-B16で規定されるDCT（Download Control Table）、DLT（Download Table）で伝送される。
;CDT（Common Data Table）（地上D）
:EPG画面等で表示される、各サービス毎に対応したロゴ情報が伝送される。ロゴ情報は1サービスあたり6種類（それぞれ大きさが異なるpngファイル）がセクション化され、伝送される。

#### 日本のデジタル放送における配信方式
; 各局SI
: 各放送局は自局のSIのみを放送波に多重化して配信する方式。地上デジタル放送等で採用されている。
: 受信機では受信中の局のSIのみ受信するため、急な編成変更にも素早く追従出来る。一方で原理上他局のSIは受信出来ないが、受信機側に複数チューナーを搭載するか受信機のスタンバイ中に他局のSIを受信することによって、このデメリットは解消される。
; 全局SI集
: 各放送局は一度各局のSIクライアントからSIセンターに自局のSIを伝達し、それらを基にSIセンターで「全局SI」を生成して各局に返送し、その全局SIを放送波に多重化して配信する方式。BSデジタル放送で採用され、放送衛星システム（B-SAT）にSIセンターを設置している。
: 受信機では視聴していない他局のSIも受信出来るが、放送事業者が増加すると必然的に各局ごとのSI容量が減少するうえ、全局SIの生成までのラグが避けられないため急な編成変更が発生しても追従は難しい。しまいには前述の理由でデメリットのみが残ってしまい、新4K8K衛星放送での採用は見送られた。

### トランスポートストリームのエラー検出
トランスポートパケットヘッダには同じPID内において値が1ずつ増加する**continuity_counter**という4ビットのカウンタがあり、TS受信側でこのカウンタの不連続を検出することでトランスポートパケットのロストを検出することができる。またトランスポートパケットヘッダの先頭バイトは必ず**sync_byte**という特定の値（0x47）となっており、伝送路上のエラーで受信側が一時的にパケットの先頭を見失ったとしても188バイト毎のsync_byteを検出して同期しなおすことで比較的早期に同期を回復することができる。加えてPSIはCRCチェックサムを必ず含み、PSIのエラーで受信機が混乱することを防いでいる。

## 脚注

## 関連項目
*MP4
*コンテナフォーマット

## 外部リンク
*VIDEO-ITを取り巻く市場と技術 第3回 MPEG-2 TSの概要 前編・後編
*VIDEO-ITを取り巻く市場と技術 第6回 MPEG-2 PS概要 前編・後編