GStreamer-1.0 を使用してローカル ファイルを再生するには、次の静的パイプラインを使用します。
- GStreamer-1.0 を使用したファイル再生のための静的パイプライン
- ビデオ ストリームのみを含む TS (Transport Stream) ファイルを再生する場合:
gst-launch-1.0 filesrc location=/media/card/abc.ts ! tsdemux ! \ queue ! h265parse ! omxh265dec ! kmssink bus-id=a0070000.v_mix
この例では、ファイルは SD カードにあり、コンテナー フォーマットは TS で、ビデオのエンコード フォーマットは H265 です。
- ビデオおよびオーディオストリームを含む TS ファイルを再生する場合:
gst-launch-1.0 filesrc location=/media/card/abc.ts ! \ tsdemux name=demux ! queue ! h265parse ! omxh265dec ! queue max-size-bytes=0 ! \ kmssink bus-id=a0070000.v_mix sync=true demux. ! queue ! faad ! audioconvert ! \ audio/x-raw, rate=48000, channels=2, format=S24_32LE ! alsasink device=hw:2,0
この例では、ファイルは SD カードにあり、コンテナー フォーマットは TS で、ビデオのエンコード フォーマットは H265 です。エンコード後のオーディオ ストリームは AAC で、サンプル レートは 48000 (48kHz)、オーディオ フォーマットは S24_32LE です。オーディオ再生デバイスは hw:2,0 です。
- ビデオ ストリームのみを含む TS (Transport Stream) ファイルを再生する場合:
- GStreamer-1.0 を使用したファイル再生のための動的パイプライン
GStreamer には、メディア再生に関する詳細のほとんどを自動で処理してくれる基本的なメディア再生プラグインの uridecodebin もあります。次の例は、必要なでマルチプレクサーおよびデコーダー プラグインがインストールされている場合のファイル再生方法を示しています。
- ビデオ ストリームのみを含む TS ファイルを再生する場合:
gst-launch-1.0 uridecodebinuri=file:///media/card/abc.ts ! \ queue ! kmssink bus-id=a0070000.v_mix
この例では、ファイルは SD カードにあります。
- ビデオ ストリームのみを含む TS ファイルを再生する場合:
- ビデオおよびオーディオストリームを含む TS ファイルを再生する場合:
gst-launch-1.0 uridecodebinuri="file:///media/card/test.ts" name=decode ! \ queue max-size-bytes=0 ! kmssink bus-id="a0070000.v_mix" decode. ! \ audioconvert ! audioresample ! audio/x-raw, rate=48000, channels=2, format=S24_32LE ! \ queue ! alsasink device="hw:2,0"