It looks like the VLC Source plugin uses the software decoder by default, even if the user's VLC preferences have a hardware decoder defined. As an example from ~/.config/vlc/vlcrc:
Launching VLC and playing a video will respect this option, but the plugin from OBS doesn't. So I looked at running VLC on the command line and forcing that option. I'm able to choose between 3 different decoders successfully:
Code:
# Hardware decoding (string)
avcodec-hw=vdpau_avcodec
Launching VLC and playing a video will respect this option, but the plugin from OBS doesn't. So I looked at running VLC on the command line and forcing that option. I'm able to choose between 3 different decoders successfully:
- vlc --avcodec-hw=avcodec video.mp4 - This chooses the software decoder
- vlc --avcodec-hw=vdpau_avcodec video.mp4 - This chooses the NVDEC hardware decoder through VDPAU
- vlc --avcodec-hw=vaapi video.mp4 - This chooses Intel iGPU through VAAPI, another hardware decoder