Is it possible to receive IP cameras signals straight into Gamma?
It seems that the VLC plugin doesn’t work properly with network streams. I am not sure.
But some users suggest to use Spout or NDI with some kind of wrapper software.
@andresc4 There is also an option to use the OBS virtual camera.
But for some reason this is not available as an option in the VideoIn node.
@yar in that case, if OBS will be your middle man, just do SpoutOut
Would be great to have this option directly in VVVV
Discord and some other applications see this camera, but VVVV doesn’t
What do you think the reason might be?
pretty sure that this is because the obs virtual cam (like many other virtual cams) don’t use the modern mediafoundation driver backend.
spout from OBS to VVVV works really good though.
I guess is related to the implementation of the MediaFundation VLC part
As a second and automated workaround ( I did it for a project ) is to use a python script that can take arguments as input and spout as output, and you run it using ShellExecute
I was a code for a 3rd party project I can ask permision to upload it, but it
You can try this MWE of something similar using CEF and another python script that I ask chatGPT to build for me
import cv2
from flask import Flask, Response
app = Flask(__name__)
camera = cv2.VideoCapture(1)
def gen_frames():
while True:
success, frame = camera.read()
if not success:
break
else:
ret, buffer = cv2.imencode('.jpg', frame)
frame = buffer.tobytes()
yield (b'--frame\r\n'
b'Content-Type: image/jpeg\r\n\r\n' + frame + b'\r\n')
@app.route('/')
def video_feed():
return Response(gen_frames(), mimetype='multipart/x-mixed-replace; boundary=frame')
if __name__ == '__main__':
app.run(host='0.0.0.0', port=80, debug=True)
Just google how to pass arguments to the python script, insted of calling the device number 0/1/2 you can pass a URL and it works
You could also try Utragrid (haven’t used it yet myself):