#7511: FFmpeg Windows version with QSV hwaccel fails over TERMINAL -------------------------------------+----------------------------------- Reporter: msiders | Owner: Type: enhancement | Status: new Priority: wish | Component: avcodec Version: git-master | Resolution: Keywords: qsv | Blocked By: Blocking: | Reproduced by developer: 0 Analyzed by developer: 0 | -------------------------------------+----------------------------------- Comment (by atorp): Hi, I found a solution to this problem: Use initialization of D3D11 in the command line. - Example (based on the initial command described above): {{{ ffmpeg.exe -init_hw_device d3d11va=qsv:MFX_IMPL_hw_any -hwaccel qsv -filter_hw_device qsv -c:v h264_qsv -i file.ts -filter_complex "[i:256]deinterlace_qsv,scale_qsv=720:576[out]" -map [out] -map i:257 -c:0 h264_qsv -preset medium -c:1 copy -f mpegts output.ts }}} So the trick is to use "-init_hw_device d3d11va=qsv:MFX_IMPL_hw_any" before the "-hwaccel qsv", and "-filter_hw_device qsv" after it. Using this, instead of initialize the MFX context using a D3D9 surface, it's enforced to use a D3D11 surface. I hope it helps! Note: I suggest to add some example of D3D11va initialization in the documentation: https://trac.ffmpeg.org/wiki/Hardware/QuickSync -- Ticket URL: <https://trac.ffmpeg.org/ticket/7511#comment:8> FFmpeg <https://ffmpeg.org> FFmpeg issue tracker