1

プログラマーの皆さん、こんばんは、RPiでgstreamerを使用して.tsファイルを再生しようとしています。Gstreamer-1.0 と gst-omx は正常にインストールされており、このサンプル パイプラインは魅力的に動作します。 gst-launch-1.0 -v filesrc location=h264_720p_hp_5.1_6mbps_ac3_planet.mp4 ! qtdemux ! h264parse ! omxh264dec ! autovideosink

実際に使用しても機能しますgst-launch-1.0 playbin uri=file:/root/h264_720p_hp_5.1_6mbps_ac3_planet.mp4

ただし、playbin を使用して .ts ファイルを再生しようとすると、実際には実行されますが、フレーム レートが非常に低いため、このアプローチは使用できません。

上記のようなカスタム パイプラインを構築しようとすると、「tsparse」が「omxmpeg2videodec」と互換性がないように見えます。

これは私が実行するものです:

gst-launch-1.0 -v filesrc location=parkrun1920_12mbps.ts ! tsdemux ! tsparse ! omxmpeg2videodec ! autovideosink

このエラーを出力するもの:

erroneous pipeline: could not link mpegtsparse2-0 to omxmpeg2videodec-omxmpeg2videodec0

gstreamerでmpeg2-tsファイルを流暢に再生する方法を知っている人はいますか?

私の目標は、同じ RPi で mumudvb によって提供される http ユニキャスト mpeg2-ts ストリームを再生することです。

ご協力いただきありがとうございます。

編集: omxplayer は .ts ファイルを完全にスムーズに再生するので、ハードウェアやファイルに問題があるとは思いません。

4

2 に答える 2

2

問題は、tsparse を使用したことです。ストリームを逆多重化すると、TS ファイルではなくなるため、mpegvideoparse または同様のパーサー要素を使用する必要があります。

于 2014-02-04T07:47:45.673 に答える
1

Ubuntuでtsをプレイするためにこのように使用しています。gst-launch-1.0 スープ httpsrc location= http://xxx.xxx.x.xx/location/test.ts ! tsdemux name=d d.video_0324 ! 列 !h264パース!avdec_h264 ! ビデオコンバート!ビデオスケール!ximagesink.

参考までに、playbin が機能している場合は、GST_DEBUG_DUMP_DOT_DIR 変数を設定することで xdot grapfile を生成できます。次に、xdot を分析して解決策を見つけます。

于 2014-02-03T05:01:44.880 に答える