2017-11-06 3 views
0

私はh264_nvencエンコーダでエンコードされているビデオにフェードアウトフィルタを適用しようとしています。ffmpegを使用したCUDA電源のスケールの後にフェードフィルタを適用するにはどうすればよいですか?

この: ffmpeg -hwaccel cuvid -c:v h264_cuvid -i input.mp4 -c:v h264_nvenc -c:a copy -vf scale_cuda=-1:720,hwdownload,fade=t=out:st=24:d=0.5,hwupload -y output.mp4

は、このエラーメッセージで失敗します。

[hwdownload @ 0000028b4c8c7ea0] Invalid output format yuv420p for hwframe download. 
[Parsed_hwdownload_1 @ 0000028b4d833620] Failed to configure output pad on 
Parsed_hwdownload_1 
Error reinitializing filters! 
Failed to inject frame into filter network: Invalid argument 
Error while processing the decoded data for stream #0:0 
Conversion failed! 

私は本当に前にffmpegののハードウェアアクセラレーション機能で働いていない、と明らかに誰もがいずれか、持っていません。少なくとも誰もそれを文書化するのに悩まされていません。

私はこの問題の助けに非常に感謝します。

答えて

2

実際、よく文書化されていませんが、ドキュメントは何とかそこにあります。

エラーはInvalid output format yuv420p for hwframe downloadと表示されているため、フィルタのピクセル形式を変更する方法を見つける必要があります。

FFmpeg filter documentは言う:

は、すべての形式は出力にサポートされるわけではありません - それはすぐにサポートされる形式で出力を得るために、グラフに以下の追加形式のフィルタを挿入する必要があるかもしれません。

例:

ffmpeg -hwaccel cuvid -c:v h264_cuvid -i input.mp4 -c:v h264_nvenc -c:a copy -vf scale_cuda=-1:720,hwdownload,format=nv12,fade=t=out:st=24:d=0.5,hwupload -y output.mp4 
+0

は、私はそれを推測したことがないでしょう。ありがとう! –

関連する問題