VLCシーンフィルタを使用してすべてのフレームをキャプチャ

VLCシーンフィルタを使用してすべてのフレームをキャプチャ

scene-filterVLCを使用して抽出しようとしています。みんなビデオのフレームmp4。映像のランニングタイム25fpsはで、長さもぴったり適しています38s

コマンドラインで次のオプションを実行しました。

--video-filter = scene --start-time = 0 --stop-time = 35 --scene-ratio = 1

シーンの割合は、フレーム全体から取り出したフレームの割合(つまり、保存されたフレームの割合)であることがわかっています(?)31/3しかし、~900私が期待するフレームでは、500それに関する情報だけを得ることができます。

25-1およびデフォルト値を試してみましたが、scene-ratio役に立ちません。

私は何が間違っていましたか?文書はVLCこれについては明確ではありません。

答え1

コメントできないので、ここでもっと詳しく見てみましょう。

単にフレームを抽出したい場合は、Pythonを使用するなどの他の方法を教えてください。また、vlcを使用してフレームを抽出して確認しましたが、各フレームで次のエラーが発生しました。

[00007fd7d8005430] main video output warning: picture is too late to be displayed (missing 40 ms)

-vこのエラーが発生するには、コードの末尾に追加するだけです。-vvより詳細な出力を得るために。したがって、次のようにする必要があります。

cvlc video.mp4 --video-filter scene --start-time 0 --stop-time 20 --scene-ratio 1 --scene-path Downloads/video -v

どのように解決すべきかわかりません。すべてのフレームを抽出するには、Pythonを使用することをお勧めします。この質問への回答を具体的にご希望の場合は、下記にコメントを残していただければ回答を削除いたします。 Pythonソリューションに満足している場合は、Pythonコードで回答を更新します。

関連情報