Closed gsilva2016 closed 5 years ago
Should be using CPU to do nv12->rgb32 conversion. Would you please try: ./ffmpeg -hwaccel qsv -c:v h264_qsv -i /samba/anonymous/Videos/bbb_sunflower_1080p_30fps_normal.mp4 -vf "vpp_qsv=framerate=60,scale_qsv=format=rgb32, hwdownload,format=rgb32" -f sdl - scale_qsv can use HW to do nv12->rgb32.
FFMPEG-QSV filter for converting NV12 to rgb32 in HW doesn’t appear to work. Although the command executes and converts to RGB32 we see CPU usage dramatically increase thus indicating GPU is not being used.
Following are the observations( 9- 4K- People- H264- SDR-2_60fps.mp4 (4K @60fps) is used for this experiment) : • Ubuntu 16 LTS • ffmpeg –hwaccel qsv –c:v h264_qsv –I -vf “vpp_qsv=framerate=60,format=rgb32” –f sdl -
• ffmpeg -hwaccel qsv -c:v h264_qsv -i /home/test/TestFiles/Video/H264/9-\ 4K-\ People-\ H264-\ SDR-2_60fps.mp4 -vf vpp_qsv=framerate=60,format=rgb32 -f null –
• Output FPS : If the format is selected as rgb32 , output FPS is about 30-32 .However, the output FPS for nv12 and qsv format is 99 and 155 respectively.
• GPU Usage (measured using intel_gpu_time): For the rgb32 format , GPU utilization is 11% in comparison to 32.5% and 44.7% for nv12 and qsv format.
• Format option can only be applied after scaling and framerate filter.