Recording with Custom FFmpeg output: How to Set Parameters


New Member
I'm using OBS on Linux.
I have tried to record screen by integrated graphics card via VAAPI on ffmpeg with the following command:
ffmpeg -vaapi_device /dev/dri/renderD128 -f x11grab -video_size 1920x1080 -i :0 -c:v hevc_vaapi -qp 36 output.mp4
This works perfectly, but in OBS's settings pane, under type "standard" and Encoder "FFMPEG VAAPI", the only VAAPI Codec I can choose is "H.264 (default)".
In "Custom Output (FFmpeg)", I don't know how to fill out Muxer Settings and Video Encoder Settings.
Screenshot from 2022-02-06 07-58-19.png

I have tried this, but it doesn't work.
Screenshot from 2022-02-06 08-08-19.png

Does anyone know how to fill this?


New Member
Have you tried this with empty "Video Encoder Settings" and "Muxer Settings" fields? I think that is what it's complaining about. DRI128 is probably the default vaapi device and does not need to be specified, and maybe ffmpeg can figure out hwupload and format conversion automatically. This is how I stream to my local streaming server using nvidia hardware encoding:

Try depopulating all of the fields that say "(if any)".

Looks like I've been using Video Encoder Settings incorrectly for years, whoops! Your post helped me solve my own issue of selecting which gpu to encode video on!


New Member
Found my way back here trying to do the same thing as you, and it's not possible without a new text field to enter the vaapi_device parameter.