TSファイルフォーマットとは何ですか、そしてTS動画を再生する方法は?

EdgeOne-Dev Team
Dec 25, 2024

多くの人は、TSファイルフォーマットにあまり馴染みがないかもしれません。MP4フォーマットほど一般的ではありません。TSは、オンラインビデオ再生やライブストリーミングで広く使用されるM3U8ビデオファイルにしばしば見られ、一連の小さなビデオフラグメントを運ぶ役割を果たします。TSビデオをトランスコード、配信、およびホストしたい場合は、当社のサービスを検討することをお勧めします。

この記事では、TSビデオフォーマットの起源、その用途、開く方法、編集と変換方法について詳しい情報を提供します。

TSビデオとは何ですか?

TSファイル(Transport Streamの略)は、デジタルビデオと音声ストリームを保存、伝送、および再生するために使用されるタイプのビデオファイルフォーマットです。TSは、カプセル化されたフォーマットであり、MPEG2-TSとも呼ばれます。MPEG2-TSは、音声とビデオの伝送および保存、ならびにプログラムとシステム情報プロトコルデータのための標準データコンテナフォーマットです。主にDVB、ATSC、IPTVなどのデジタル放送システムで使用されます。トランスポートストリームは元々放送用に設計されました。その後、標準188バイトデータパケットに4バイトのタイムコード(TC)を追加することで192バイトのデータパケットとなり、デジタルカメラ、ビデオレコーダー、およびプレーヤーで使用されるようになりました。

MPEG2は、デジタルTV放送において数百のプログラムチャンネルを提供できるマルチメディア伝送および多重化技術です。多重化とは、複数のプログラム層を同時に伝送できることを意味します。MPEG-2標準では、チャネルに出力されるビットストリームには2つの異なるタイプがあります。一つはプログラムストリーム(PS)で、伝送エラーのないシナリオに適しています。もう一つはトランスポートストリーム(TS)で、チャネルノイズのあるシナリオに適しています。

プログラムストリームは、光ディスク(DVD/CDなど)のような安定した信号に使用され、トランスポートストリームは、地上波または衛星放送などの不安定な伝送に使用されます。また、トランスポートストリームは複数のプログラムを伝送でき、それらは階層関係を持ちません。論理的には、すべてPES(Packetized Elementary Stream)パケットから構成されているため、相互に簡単に変換できます。

TSファイルフォーマットとは何ですか?

TSビデオ(ストリーム)は、TS層(Transport Stream)、PES層(Packetized Elementary Stream)、およびES層(Elementary Stream)の3層に分けられます。

ES層には音声とビデオデータが含まれており、PES層は音声とビデオデータにタイムスタンプなどのデータフレームに関する情報を追加します。TS層はPES層にデータストリームの識別と伝送に必要な情報を追加します。TSビデオ(ストリーム)は複数のTSパケットで構成されています。

TS層

TSパケットのサイズは固定で188バイトです。TS層はTSヘッダー、適応フィールド、ペイロードの3つの部分に分かれています。TSヘッダーは固定で4バイトです。適応フィールドは存在する場合としない場合があり、主に188バイト未満のデータを埋めるために使用されます。ペイロードにはPESデータが含まれます。

1. TSヘッダー

TSパケットヘッダーは、伝送に関する情報を提供します。

TSパケットヘッダーの長さは固定ではありません。最初の4バイトは固定であり、その後に適応フィールドが続く場合があります。最小ヘッダー長は4バイトです。

パケットヘッダーの構造フィールドは以下の通りです:

  • sync_byte(同期バイト): 固定で0x47。このバイトはデコーダによってパケットヘッダーとペイロードを区別するために認識されます。
  • transport_error_indicator(伝送エラーインジケーター): '1'は、関連するトランスポートパケットに少なくとも1つの訂正不可能なエラービットがあることを示します。一度'1'に設定されると、エラーが修正されるまで'0'にリセットできません。
  • payload_unit_start_indicator(ペイロード開始フラグ): '1'に設定されると、現在のTSパケットのペイロードがPESまたはPSIの開始位置を含むことを示します。最初の4バイトの後に、適応バイトが続き、続く適応フィールドの長さの値があります。したがって、ペイロードが開始する位置は1+[length]バイトオフセットする必要があります。
  • transport_priority(トランスポート優先フラグ): '1'は、現在のTSパケットの優先順位が、同じPIDを持つ他のTSパケットよりも高いことを示します。
  • PID: グループ化された有効ペイロードに格納されているデータの種類を示します。
  • transport_scrambling_control(スクランブル制御フラグ): TSストリームグループの有効ペイロードの暗号化モードを示します。空のパケットは'00'です。適応フィールドがパケットヘッダーに含まれている場合は暗号化してはいけません。他の値はユーザー定義です。
  • adaptation_field_control(適応フィールド制御フラグ): パケットヘッダーに適応フィールドまたは有効ペイロードがあるかどうかを示します。'00'はISO/IECの将来の使用のために予約されています;'01'は適応フィールドなしの有効ペイロードのみを含み;'10'は適応フィールドなしの適応フィールドのみを含み;'11'は適応フィールドの後に有効ペイロードが続き、適応フィールド内の最初のバイトは適応フィールドの長さを示し、ペイロードが開始する位置は[length]バイトオフセットする必要があります。空のパケットは'10'である必要があります。
  • continuity_counter(連続カウンター): 同じPIDのTSストリームグループごとに増加し、最大値に達すると0に戻ります。範囲は0〜15です。

2. TS適応フィールド

適応フィールドの長さには、伝送エラーインジケーターのための1バイトが含まれる必要があります。

PCR(プログラムクロック参照)はプログラムクロック参照です。PCR、DTS、およびPTSはすべて同じシステムクロックのサンプリング値です。PCRは増分であるため、DTS値に設定することができ、音声データにはPCRが必要ありません。

TSストリームをパッキングする際、PATおよびPMTテーブルには適応フィールドがありません。長さが不足している場合は、0xffで埋めることができます。

ビデオストリームと音声ストリームの両方には適応フィールドが必要で、通常、フレームの最初と最後のTSパケットに追加されますが、中間のTSパケットには追加されません。

3. TSペイロード

TSパケットのペイロードに伝送される情報には、ビデオおよび音声のPESパケットと補助データ、プログラム特定情報(PSI)が含まれます。

TSパケットも空のパケットになることがあります。空のパケットはTSストリームを埋めるために使用され、デマルチプレクシング中に挿入または削除されることがあります。

ビデオおよび音声のESストリームはPESストリームにパッケージ化する必要があります。補助データ(テレックス情報など)はPESパケットにパッケージ化する必要はありません。

PES層およびES層

1. PES層

PES層は、各ビデオ/音声フレームにタイムスタンプなどの情報を追加します。PESパケットの内容は複雑ですが、最も一般的に使用されるフィールドは次のとおりです:

  1. PESスタートコード: 固定で0x000001。
  2. ストリームID: 音声の場合、値は0xc0-0xdfの範囲で、通常は0xc0です。ビデオの場合、値は0xe0-0xefの範囲で、通常は0xe0です。
  3. PESパケット長: 後続のPESデータの長さ。値が0の場合、長さは無制限ですが、ビデオデータの長さだけが0xffffを超えることができます。
  4. PESデータ長: 後続のデータの長さで、値は5または10です。
  5. PTS: プレゼンテーションタイムスタンプを示す33ビットの値。
  6. DTS: デコーディングタイムスタンプを示す33ビットの値。

PTS(プレゼンテーションタイムスタンプ)は表示タイミングに使用され、DTS(デコーディングタイムスタンプ)はデコードタイミングに使用されます。

ビデオと音声のデータには両方ともPTSとDTSのタイムスタンプが必要ですが、音声データの場合、PTSとDTSは同じであるため、PTSのみが必要です。

PTSとDTSは両方ともBフレームに使用されます。IフレームとPフレームの場合、PTSはDTSと等しくなります。ビデオストリームにBフレームが含まれていない場合、PTSは常にDTSと等しくなります。

ファイルからビデオフレームを読み取るとき、フレームの順序はDTSタイムスタンプの順序と同じです。DTSアルゴリズムは比較的単純で、初期値に増分を加算します。PTSの計算はより複雑で、DTSにオフセットを追加する必要があります。

音声PESの場合、PTS(DTSと同じ)だけが必要であり、ビデオのIフレームおよびPフレームの場合は、両方のPTSとDTSのタイムスタンプが必要です。ビデオのBフレームの場合、PTS(DTSと同じ)のみが必要です。

2. ES層

ES層はエレメンタリーストリーム層を指し、生の音声およびビデオデータを含みます。

一般的に、ビデオはH.264形式でエンコードされ、音声はAAC形式でエンコードされます。

なぜTSファイルフォーマットを使用するのか?

TSビデオはコンテナファイルフォーマットの一種であり、広範囲にわたる用途があります。具体的には:

1. 放送およびテレビ: TSビデオは、DVBやATSCなどの放送システムで一般的に使用されます。このフォーマットはエラー修正とストリーム同期機能を備えており、信号が劣化した際にも伝送の整合性を維持できます。TSストリームの最も古典的な用途は、日常生活で使用されるデジタルハイビジョンテレビです。

2. リアルタイムストリーミングメディア: AppleのHTTP Live StreamingメディアはTSファイルに基づいています。ライブ放送では、ビデオストリームがファイルフラグメントに切り分けられたり、指定されたTSファイルアドレスを通じて順次再生されたりします。

3. ブルーレイディスク / フルHDビデオ: コンテナフォーマットとして、TSはMPEG-2またはVC-1エンコーディングをカプセル化でき、ブルーレイディスクおよびフルHDビデオの一般的なコンテナフォーマットでもあります。したがって、TSフォーマットのビデオは通常、高品質で大きなファイルサイズを持ち、正確な復元が可能であり、高解像度愛好者にとってお気に入りのフォーマットとなっています。

4. デジタルカメラ: デジタルカメラで使用するために、TSフォーマットグループには4バイトのタイムコードが追加されています。さらに、タイムコードの助けを借りて、複数のカメラで撮影したコンテンツを同期させることができます。

TSビデオフォーマットが使用される理由は次の通りです:

  1. エラー修正: TSビデオは他のフォーマットよりもエラー処理が得意です。これは、データがネットワーク経由でストリーミングまたは放送される際にデータ損失が発生する可能性があるため重要です。
  2. 多重化: TSビデオは、複数の音声およびビデオストリーム、ならびにメタデータを含むことができます。これにより、複数の言語、字幕、または追加データサービスを含める必要がある放送アプリケーションに最適です。
  3. 同期: TSフォーマットにはタイミング情報が含まれており、音声とビデオストリームを再生時に正しく同期させることができます。
  4. 互換性: TSビデオフォーマットはMPEG-2標準の一部であり、ハードウェアとソフトウェアの両方で広くサポートされているため、放送に適した選択肢となります。
  5. 高品質: TSビデオは高品質のビデオと音声を維持し、プロフェッショナルな放送および制作に適しています。

TSビデオを再生するには?

TSビデオをサポートするプログラムはいくつかあります:

  • VLCメディアプレーヤー
  • Windows Media Player
  • MPC-HC
  • KMPlayer
  • PotPlayer

さらに、私たちはWebRTC、FLV、HLSライブストリーミングをサポートし、HLS、DASH、FLV、MP4フォーマットでのオンデマンド再生を便利に行うための無料オンラインM3U8プレーヤーを提供しています。ぜひご利用ください。

一部のTSビデオは、正常に再生するために追加のコーデックが必要な場合があります。TSファイルの再生に問題がある場合は、追加のコーデックをインストールするか、別のメディアプレーヤーを使用する必要があるかもしれません。

TSファイルをダウンロードするには?

TS(トランスポートストリーム)ファイルをダウンロードすることは、HLS(HTTP Live Streaming)などのストリーミングプロトコルでよく使用され、個々のTSセグメントを取得し、必要に応じて単一のビデオファイルに結合することを含みます。TSファイルをダウンロードするためのいくつかの方法を以下に示します:

方法1:FFmpegを使用する

FFmpegは、TSファイルを含むさまざまなビデオおよび音声フォーマットを扱える強力なマルチメディアフレームワークです。

1. FFmpegをインストールする

  • Windows: 公式ウェブサイトからFFmpeg実行ファイルをダウンロードし、システムPATHに追加します。
  • Mac: Homebrewを使用してFFmpegをインストールします: brew install ffmpeg
  • Linux: パッケージマネージャを使用します。例:Debianベースのシステムではsudo apt-get install ffmpeg

2. TSファイルをダウンロードして結合する

ターミナルまたはコマンドプロンプトを開き、次のコマンドを実行します:

ffmpeg -i "http://example.com/path/to/playlist.m3u8" -c copy output.mp4

http://example.com/path/to/playlist.m3u8をTSセグメントを参照するM3U8ファイルのURLに置き換え、output.mp4を希望する出力ファイル名に置き換えます。

方法2:ブラウザ拡張機能を使用する

ブラウザから直接TSファイルをダウンロードするのに役立ついくつかのブラウザ拡張機能が利用可能です。

1. ブラウザ拡張機能をインストールする

  • Chrome: "Video DownloadHelper"や"HLS Downloader"などの拡張機能。
  • Firefox: "Video DownloadHelper"や"HLS Downloader"などの拡張機能。

2. TSファイルをダウンロードする

  • TSファイルまたはM3U8プレイリストを含むウェブページに移動します。
  • 拡張機能を使用してTSファイルを検出し、ダウンロードします。拡張機能の指示に従ってファイルをコンピュータに保存します。

方法3:コマンドラインツールを使用する

TSファイルをダウンロードするために特に設計されたコマンドラインツールがあります。

1. ツールをインストールする

youtube-dl: M3U8やTSファイルを使用するさまざまなウェブサイトからビデオをダウンロードできる人気のコマンドラインプログラムです。公式ウェブサイトの手順に従ってyoutube-dlをインストールします。

2. TSファイルをダウンロードする

ターミナルまたはコマンドプロンプトを開き、次のコマンドを実行します:

youtube-dl "http://example.com/path/to/playlist.m3u8"

http://example.com/path/to/playlist.m3u8をM3U8ファイルのURLに置き換えます。

方法4:TSファイルを手動でダウンロードして結合する

TSファイルへの直接URLがある場合、手動でダウンロードして結合することができます。

1. TSファイルをダウンロードする

ダウンロードマネージャやブラウザを使用して、各TSファイルを個別にダウンロードします。

2. TSファイルを結合する

ダウンロードしたTSファイルを単一のビデオファイルに結合するためにFFmpegを使用します。次の内容を含むテキストファイル(例:filelist.txt)を作成します:

file 'segment1.ts'
file 'segment2.ts'
file 'segment3.ts'
...

次に、次のコマンドを実行します:

ffmpeg -f concat -safe 0 -i filelist.txt -c copy output.mp4

filelist.txtをテキストファイルの名前に置き換え、output.mp4を希望する出力ファイル名に置き換えます。

重要な考慮事項

  • 法的問題: コンテンツをダウンロードする権利があることを確認してください。許可なく著作権のある素材をダウンロードすることは違法です。
  • 品質: ダウンロードしたビデオの品質は、TSセグメントの品質に依存します。
  • 依存関係: 一部の方法では、システムに追加のソフトウェアや依存関係をインストールする必要があります。

これらの方法に従うことで、TSファイルをダウンロードし、オプションで単一のビデオファイルに結合することができます。

TSをMP4に変換するには?

モバイルや他のポータブルメディアプレーヤーでTSビデオファイルを再生したい場合、最良の方法は、MP4のようなよりアクセスしやすいフォーマットに変換することです。TSとMP4の両方のフォーマットはビデオファイルやストリーミングメディアを保存するために使用されますが、適用範囲は大きく異なります。TSはプロフェッショナルなストリーミングメディア再生に適しているのに対し、MP4はコンピュータやモバイルデバイスで動画を保存・視聴するのに優れた選択肢です。モバイルデバイスでTSビデオファイルを再生したい場合は、アクセスしやすく再生しやすいMP4フォーマットに変換するのが最適です。

TSとMP4の顕著な違いを説明する表を以下に示します。

TSをMP4に変換するには、ビデオ変換ソフトウェアを使用できます。HandBrake、Freemake Video Converter、Any Video Converter、Wondershare UniConverterなど、多くのビデオ変換ソフトウェアがあります。TSをMP4に変換する手順は、使用するソフトウェアによってわずかに異なる場合があります。

結論

結論として、TS(トランスポートストリーム)フォーマットはデジタルビデオ放送およびストリーミングの世界で重要な役割を果たしています。ビデオ資産管理に関するより広範なニーズがある場合、例えば迅速なアップロード、トランスコーディング、ストレージ、加速再生など、EdgeOne VODが最適なソリューションです。

Tencent EdgeOne VOD(ビデオオンデマンド)は、クラウドビデオストレージ、ビデオトランスコーディング、ビデオ再生加速など、音声/ビデオキャプチャ、アップロード、ストレージ、自動トランスコーディング、加速再生、メディア資産管理、音声/ビデオ通信に対応した包括的なVPaaS(ビデオプラットフォームサービス)ソリューションを提供します。VODは、高品質のビデオの迅速かつ柔軟な配信を可能にし、ビジネスに集中し、必要に応じてサービスを選択し、市場の変化に柔軟に対応できます。デモページでは、EdgeOneのビデオサービスを直接体験できます。

現在、無料トライアルを開始しました。こちらをクリックまたはお問い合わせで詳細情報をご確認ください。そして、ぜひ私たちとの旅を始めてください

よくある質問

1. TSファイルとは何ですか?

TS(トランスポートストリーム)ファイルは、DVB、ATSC、IPTVなどのデジタル放送システムで音声、ビデオ、データを伝送するための標準フォーマットです。主にストリーミングおよび放送目的で使用されます。

2. TSファイルの一般的な用途は何ですか?

TSファイルは主に以下に使用されます:

  • デジタルテレビおよびラジオの放送。
  • インターネット上でのビデオストリーミング(例:HLS)。
  • DVDへのビデオの保存。

3. TSファイルを開くにはどうすればよいですか?

TSファイルは、以下のようなさまざまなメディアプレーヤーで開くことができます:

  • VLCメディアプレーヤー
  • Windows Media Player(適切なコーデックが必要)
  • KMPlayer
  • GOMプレーヤー
  • PotPlayer

4. TSファイルを他のフォーマットに変換するにはどうすればよいですか?

ビデオ変換ソフトウェアを使用して、TSファイルを他のフォーマット(MP4、AVI、MKVなど)に変換できます。人気のあるツールには:

  • FFmpeg: マルチメディアファイルを変換するためのコマンドラインツール。
ffmpeg -i input.ts -c:v libx264 -c:a aac output.mp4
  • HandBrake: ユーザーフレンドリーなビデオコンバータ。
  • Any Video Converter: 多用途のビデオ変換ツール。

5. なぜストリーミングにTSファイルが使用されるのですか?

TSファイルはエラーとパケットロスを処理するように設計されているため、ストリーミングに使用されます。これは、信頼性のないネットワークに適しています。リアルタイムデータ伝送もサポートされており、ライブストリーミングに不可欠です。

6. TSとMP4の違いは何ですか?

  • TS: ストリーミングおよび放送用に設計されており、エラー修正をサポートし、リアルタイム伝送に適しています。
  • MP4: ビデオ、音声、その他のデータを保存するために使用されるマルチメディアコンテナフォーマットで、広くサポートされており、オフライン再生に適しています。

7. TSファイルを編集できますか?

はい、TSファイルをサポートするビデオ編集ソフトウェアを使用して編集できます。例えば:

  • Adobe Premiere Pro
  • Avidemux
  • FFmpeg(基本的な編集タスク用)

8. 複数のTSファイルを結合するにはどうすればよいですか?

FFmpegを使用して複数のTSファイルを結合できます。次の内容を含むテキストファイル(例:filelist.txt)を作成します:

file 'segment1.ts'
file 'segment2.ts'
file 'segment3.ts'
...

次に、次のコマンドを実行します:

ffmpeg -f concat -safe 0 -i filelist.txt -c copy output.ts

filelist.txtをテキストファイルの名前に置き換え、output.tsを希望する出力ファイル名に置き換えます。

9. TSファイルは圧縮されていますか?

TSファイルは圧縮されたビデオおよび音声ストリームを含むことができますが、TSフォーマット自体は圧縮フォーマットではありません。さまざまな種類の圧縮データを保持できるコンテナです。

10. TSファイルのファイル拡張子は何ですか?

トランスポートストリームファイルのファイル拡張子は.tsです。

11. TSファイルをテレビで再生するにはどうすればよいですか?

TSファイルをテレビで再生するには:

  • TSファイルをサポートするメディアプレーヤーを使用し、テレビに接続します。
  • TSファイルをテレビがサポートするフォーマット(例:MP4)に変換し、USBまたはネットワーク経由で再生します。

12. TSとM2TSの違いは何ですか?

  • TS: デジタル放送システムで音声、ビデオ、データを伝送するための標準フォーマット。
  • M2TS: Blu-ray Disc Audio-Video(BDAV)およびAVCHDに使用されるTSフォーマットのバリアントで、Blu-rayおよびAVCHD再生のための追加情報を含みます。

13. TSファイルをインターネット経由でストリーミングできますか?

はい、TSファイルは特にHLS(HTTP Live Streaming)などのプロトコルを使用して、インターネット上でストリーミングするために一般的に使用されます。

14. TSファイルの構造はどうなっていますか?

TSファイルは、通常188バイトのサイズのパケットで構成されています。これらのパケットにはヘッダーとペイロードが含まれ、ビデオ、音声、データストリームが含まれています。

15. TSファイルの再生問題をトラブルシューティングするには?

  • ファイルの整合性を確認する: TSファイルが破損していないことを確認します。
  • コーデックを更新する: 必要なコーデックがインストールされていることを確認します。
  • 別のプレーヤーを使用する: TSファイルをサポートする別のメディアプレーヤーを試してみます。
  • ファイルを変換する: 再生問題が続く場合は、TSファイルを別のフォーマットに変換することを検討します。