From aae0945c8570363d4ac4851271efdc169de399a0 Mon Sep 17 00:00:00 2001 From: iAmInAction <83808704+iAmInActions@users.noreply.github.com> Date: Sat, 8 Jul 2023 15:13:52 +0000 Subject: [PATCH] Add elgato2v4l2 Simple script to automatically configure and pipe the streams from the elgato game capture card to a virtual camera. Ideal for use with OBS. --- elgato2v4l2.sh | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) create mode 100644 elgato2v4l2.sh diff --git a/elgato2v4l2.sh b/elgato2v4l2.sh new file mode 100644 index 0000000..7aaf59d --- /dev/null +++ b/elgato2v4l2.sh @@ -0,0 +1,25 @@ +#!/bin/bash + +rmmod v4l2loopback +modprobe v4l2loopback + +if [ "$1" = "hdmi" ]; then + echo "HDMI mode selected." + gchd -i hdmi -c rgb $2 $3 -of fifo /dev/elgatotmp.ts & + sleep 6 + ffmpeg -i /dev/elgatotmp.ts -vcodec rawvideo -f v4l2 $(ls /dev/video* | tail -n1) +elif [ "$1" = "composite" ]; then + echo "Composite mode selected." + gchd -i composite -of fifo /dev/elgatotmp.ts & + sleep 6 + ffmpeg -i /dev/elgatotmp.ts -f v4l2 $(ls /dev/video* | tail -n1) +elif [ "$1" = "component" ]; then + echo "Component mode selected." + gchd -i component -c rgb $2 $3 -of fifo /dev/elgatotmp.ts & + sleep 6 + ffmpeg -i /dev/elgatotmp.ts -vcodec rawvideo -f v4l2 $(ls /dev/video* | tail -n1) +else + echo "ERROR:" + echo "Please specify a mode." + echo "Usage: elgato2v4l2.sh [mode] " +fi