On Sat, 2 Feb 2019 at 18:47, Mahmood Naderan <[email protected]> wrote:
> >Then don't use the cuda filter. > > So, my time measurements show that > > CPU: ./ffmpeg -i ../4k_normal.mp4 -vf scale=1280:720 720p1.mp4 > real 0m23.748s > > GPU: ./ffmpeg -hwaccel cuvid -c:v h264_cuvid -i ../4k_normal.mp4 -vf > scale_npp=1280:720 -c:v h264_nvenc 720p1.mp4 > real 0m20.889s > > > > Do you think that is normal? > > Regards, > Mahmood > _______________________________________________ > ffmpeg-user mailing list > [email protected] > http://ffmpeg.org/mailman/listinfo/ffmpeg-user > > To unsubscribe, visit link above, or email > [email protected] with subject "unsubscribe". And yes, what you're seeing here is normal. The scale filter is software based (and doesn't thread so well). The scale_npp (and scale_cuda) run on the GPU and should be slightly faster for single transcodes, and much faster with 1:N transcodes. There's a patch set on this mailing list that speeds up 1:N transcodes when paired with multiple scalers behind -filter_complex, via a new abr_pipeline option... For initializing the device for filtering, pass this to ffmpeg before the -i section: -init_hw_device cuda=0 -filter_hw_device 0 Assuming you're also running the NVENC encoder on that GPU number (via the -gpu 0 ) option, etc, when you have multiple NVENC capable GPUs. And for the scaler, you'll want to call up a hwupload+format filter chain as shown: format=nv12,hwupload,scale_npp=w=1280:h=720 Using your sample above: ./ffmpeg -init_hw_device cuda=0 -i ../4k_normal.mp4 -vf format=nv12,hwupload,scale_npp=1280:720 -c:v h264_nvenc 720p1.mp4 Try that and report back. _______________________________________________ ffmpeg-user mailing list [email protected] http://ffmpeg.org/mailman/listinfo/ffmpeg-user To unsubscribe, visit link above, or email [email protected] with subject "unsubscribe".
