0

私は gstreamer コミュニティの新参者で、.mp4 ファイルをデコードしてトレースするためのパイプラインを持っています。

gst-launch --gst debug=filesrc:7,queue:7,audioconvert:7,audioresample:7,qtdemux:7,faad:7,ffmpeg:7,audioresample:7,audioconvert:7,autoaudiosink:7,autovideosink:7,  filesrc location=...! qtdemux name=demuxer demuxer. ! queue ! faad ! audioconvert ! audioresample ! autoaudiosink demuxer. ! queue ! ffdec_h264 ! ffmpegcolorspace ! autovideosink > file1

「アイデンティティ」コンポーネントを挿入してデコードを妨害したところ、効果的に、画像が非常に遅くなり、音が消えました。私はこのコマンドを使用しました:

gst-launch --gst debug=filesrc:7,queue:7,audioconvert:7,audioresample:7,qtdemux:7,faad:7,ffmpeg:7,audioresample:7,audioconvert:7,autoaudiosink:7,autovideosink:7,  filesrc location=...! qtdemux name=demuxer demuxer. ! queue ! faad ! audioconvert ! audioresample ! autoaudiosink demuxer. ! queue ! identity sleep-time=1000000 ! ffdec_h264 ! ffmpegcolorspace ! autovideosink > file2

初めてこの実行を行ったとき、file2 に 2 つの新しい関数が表示されました。

(i) gst_ffmpegdec_chain...「スキップ中...」

(ii) gst_ffmpegdec_video_frame...「ドロップ中..」

意味は、一部のデータがドロップされたか、または何か他のものであると想定しました

ただし、何日もの間、同じビデオをデコードする同じパイプラインを使用しています。私は同じ悪い視覚化を取得しますが、ファイル2の新しい関数:(唯一の違いは、以下の関数の発生数です:

*gst_ffmpegdec_update_qos:...'update* 1ケースで558回

*gst_ffmpegdec_update_qos:...'update* それ以外の場合は 4 回

「skipping..」「dropping..」で乱れたトレースを再度作成できない理由がわかりません。

私の質問は次のとおりです。

1-上記の関数の意味について何か考えがありますか?

2- A/V デコード処理を妨害するのに役立つコンポーネントを他に知っていますか?

返信ありがとうございます

4

0 に答える 0