Filming stuff, need advice please

I’m filming how to videos. I have a camera on a robot arm and a monitor. I need a low cost way to display the camera feed on the monitor and run some recording software. OBS?

Looking for suggestions, surplus hardware, anything. Thanks!

My setup:

What resolution, frame rate, and camera?

Easiest solution: Many consumer cameras can work as a USB webcam these days. Just plug it into a PC by USB.

Alternate solution: Use a HDMI capture device, which will be either a PCI-X card or a USB device that’ll also show up as a webcam. PCI-X if you need high resolutions or high framerate, USB otherwise (much cheaper).

My preferred way of capturing USB webcams is FFMPEG as it’s 1) free, 2) cross-platform, 3) well documented, and 3) completely scriptable as it’s a command-line tool.

This is an abbreviated version of the script I use to capture a camera mounted over my workbench on Windows:

set FFMPEG=C:\utils\ffmpeg-win64-gpl-vulkan\bin
set INPUT_OPTS=-f dshow -use_wallclock_as_timestamps 1 -thread_queue_size 1024 -rtbufsize 200MiB -audio_buffer_size 50 -channels 1 -video_size 1920x1080 -framerate 30 -pixel_format yuyv422
set OUTPUT_OPTS=-codec:a aac -codec:v libx264 -preset faster -tune film -x264opts opencl -video_track_timescale 30

set V_BENCH="@device_pnp_\\?\usb#vid_1bcf&pid_2c99&mi_00#8&236043ce&0&0000#{65e8773d-8f56-11d0-a3b9-00a0c9223196}\global"
set A_BENCH="@device_cm_{33D9A762-90C8-11D0-BD43-00A0C911CE86}\wave_{83FEAD99-921C-4F56-922F-79D83C7520DD}"

%FFMPEG%\ffmpeg.exe -hide_banner -n %INPUT_OPTS% -i video=%V_BENCH%:audio=%A_BENCH% -vf "hqdn3d=12:9:18:13.5" %OUTPUT_OPTS% -crf 21 -map 1 "%WORKING_DIR%\captures\"

To get the list of devices on your system:

%FFMPEG%\ffmpeg.exe -hide_banner -list_devices true -f dshow -i dummy 2>&1

My roommate, Neil, agrees about the capabilities of FFMPEG that Richard provided.
Personally, he found OBS easier to use with either USB or HDMI input,allows overlays, dubbing with audio files. It depends on what you are trying to do.