Menu Close

How Can We Help?

< Back
You are here:
Print

How to encode by using the Intel QuickSync GPU (QSV)

To use the Multipurpose Encoder with Intel Quicksync:

– the Intel CPU must support QuickSync

– if a NVIDIA GPU is installed and it is not working verify this point: http://faq/what-bios-setting-is-required-to-enable-intel-quicksync-when-a-nvidia-gpu-is-installed/


A) to record through the FFmpeg command line

– in the FFmpeg command line, replace “-c:v h264”  by “-c:v h264_qsv”, e.g.:

VideoGrabber.VideoSource = vs_VideoCaptureDevice;
VideoGrabber.VideoDevice = VideoGrabber.VideoDeviceIndex (“c922 Pro Stream Webcam”);
VideoGrabber.StoragePath = “c:\myrecordings”;
VideoGrabber.RecordingMethod = rm_mp4;
CommandLine = “ffmpegLGPL.exe -threads 8 -i %PIPE% -c:v h264_qsv -profile:v baseline -b:v 1M -an -f mp4 %FILENAME%”; // (*)
VideoGrabber.SetMultipurposeEncoderSettings (mpe_Recording, CommandLine);
VideoGrabber.EnableMultipurposeEncoder (mpe_Recording, true);
VideoGrabber.StartRecording();

(*) if the file name must not be generated automatically, replace “%FILENAME%” by its full path/name

B) to record through the Datastead Encoder:

VideoGrabber.VideoSource = vs_VideoCaptureDevice;
VideoGrabber.VideoDevice = VideoGrabber.VideoDeviceIndex (“c922 Pro Stream Webcam”);
VideoGrabber.RecordingMethod = rm_mp4;
VideoGrabber.StoragePath = “c:\myrecordings”;
//enable the line below if the file name must not be generated automatically
// VideoGrabber.RecordingFileName = “c:\myfolder\otherrecording.mp4”;
Videograbber.CompressionMode = cm_CompressOnTheFly;
Videograbber.VideoCompressor = VideoGrabber.VideoCompressorIndex (‘Datastead Multipurpose Encoder’);
VideoGrabber.Encoder_SetInt (0, Enc_Video_Bitrate_kb, 1000);
VideoGrabber.Encoder_SetInt (0, Enc_Video_Thread_Count, 8);
VideoGrabber.Encoder_SetInt (0, Enc_Video_GPU_Encoder, integer (Enc_GPU_Intel_QSV));
VideoGrabber.StartRecording();

Table of Contents