Need help installing ustreamer
-
@luckyflyer The two files I posted aren't meant to be executed. You just need to save them with the path's indicated and reboot.
The system automatically reads the rules files at boot and any time after that when it detects that /dev/video0 is present, it'll automatically start the ustreamer service. -
Well I guess I need to admit I don't know how to save a file in linux. I googled "how to save a file with raspbian command line" but they talk more about editing files. Can you give me the exact syntax for saving these files.
Looks like an editor like nano may be the way to save files, trying to figure it out.
-
@gtj0 said in Need help installing ustreamer:
/etc/udev/rules.d/80-ustreamer.rules
so run
sudoedit /etc/udev/rules.d/80-ustreamer.rules
and pasteKERNEL=="video0", SUBSYSTEM=="video4linux", TAG+="systemd", ENV{SYSTEMD_WANTS}+="ustreamer@%k.service"
into it. hit ctr + x to exit the editor (say yes to save on your way out)*.
similar for
/etc/systemd/system/ustreamer@.service
*) edit: this assumes the default EDITOR enviornment variable is set to nano, but if you've changed it you probably know how to use the editor:)
-
Thank you sir.
-
@gtj0 ,
I have both files entered and saved, rebooted but am unable to log onto http://0.0.0.0:8080 or my printers address http://192.168.0.181:8080. I've double checked that everything is correct, I removed "--encoder=HW and -m JPEG" from /etc/systemd/system/ustreamer@.service: since they don't apply to my camera. But have tried it with and without those two items.
It starts up ok if I use the start script. -
This happens when I try to start the service manually,
pi@duet3:~ $ sudo systemctl start ustreamer@.service Failed to start ustreamer@.service: Unit name ustreamer@.service is missing the instance name.
-
@luckyflyer said in Need help installing ustreamer:
sudo systemctl start ustreamer@.service
this seems to be a so called template service, so it needs the name in the invocation;
sudo systemctl start ustreamer@video0.service
which probably means
Description=UStreamer for video0
should be changed toDescription=UStreamer for %I
but doesn't affect the issue at hand I believe. -
@luckyflyer Yeah sorry about that. I should have given more compete instructions. @bearer is correct about being a template service and has the correct command line to manually start and stop the service.
I don't see (or don't remember) whether the camera you're using is a USB cam or a MIPI cam directly attached to the Pi's camera connector. If it's a USB camera, then here are updated service and rules files that will automatically stop the service when the device disconnects..
/etc/udev/rules.d/80-ustreamer.rules:
ACTION=="add", KERNEL=="video0", SUBSYSTEM=="video4linux", TAG+="systemd", ENV{SYSTEMD_WANTS}+="ustreamer@%k.service" ACTION=="remove", KERNEL=="video0", SUBSYSTEM=="video4linux", RUN+="/bin/systemctl --no-block stop ustreamer@%k.service"
/etc/systemd/system/ustreamer@.service:
[Unit] Description=UStreamer for %I [Service] Type=simple ExecStart=/usr/local/bin/ustreamer --exit-on-parent-death -r 640x480 --static /tmp/ -d /dev/%i --host=0.0.0.0 --port=8080 [Install] WantedBy=multi-user.target
As a reminder... "0.0.0.0" is a special IP address that tells server software to listen for connections on all ip addresses on the system. It can never be used to actually connect to anything.
-
@gtj0,
Yes usb cam, I will try this in about an hour. Thanks to you and @bearer . -
@gtj0 thanks for sharing this, gonna have to try with with my auto--bossac-recovery plan.
re: 0.0.0.0 that had me questioning a few things (in the sense OP said he could connect to it)
-
What mipi camera do you guys recommend for print monitoring? I've been looking at the arducam v2 https://www.amazon.com/Arducam-Raspberry-Official-Megapixel-Acrylic/dp/B083FNFPF2/ref=sr_1_3?dchild=1&keywords=arducam+v2&qid=1590854384&sr=8-3
Or is there something better out there.
-
@luckyflyer said in Need help installing ustreamer:
What mipi camera do you guys recommend for print monitoring? I've been looking at the arducam v2 https://www.amazon.com/Arducam-Raspberry-Official-Megapixel-Acrylic/dp/B083FNFPF2/ref=sr_1_3?dchild=1&keywords=arducam+v2&qid=1590854384&sr=8-3
Or is there something better out there.
Have you seen this one High Res PI Camera with interchangeable lens
-
@Dougal1957
Nice looking cam , I would like to buy from a US vendor if possible, is it available here anywhere? -
The downside of RPi cameras is the distance limit and the flat ribbon cable. You get a lot more choices if you use a USB camera.
I use this one
https://www.amazon.com/gp/product/B07HVT2XZL/ref=ppx_yo_dt_b_search_asin_title?ie=UTF8&psc=1
because it has LED illumination, is easy to mount, move, and use for other things if needed. -
@luckyflyer You can get RPi cameras with interchangeable lenses on Amazon. Here's one...
https://www.amazon.com/Arducam-Camera-Raspberry-Interchangeable-LS-2717CS/dp/B012ETE75I/ -
@luckyflyer said in Need help installing ustreamer:
@Dougal1957
Nice looking cam , I would like to buy from a US vendor if possible, is it available here anywhere?I would have thought it would be as it is an official Raspberry device https://www.raspberrypi.org/products/raspberry-pi-high-quality-camera/
and 2 meter long cables are available for cheap as well https://shop.pimoroni.com/products/raspberry-pi-camera-cable?variant=10312200583 don't know what effect they would have mind
-
@gtj0 But don't the mipi cams offer greater programmability and flexibility than usb cams?
A picture of the back of my printer, a 30 cm cable would be perfect, up to the top and out.! -
@luckyflyer I don't really know as I don't have one yet but am considering one with possible a wide angle lens on it not a cheap combination mind
-
Sup. The ustreamer developer here. I am glad that you use my software, but just in case I want to warn those who want to use RPi CSI cameras: it doesn't work with ustreamer. The reason is that these cameras use their own specific non-v4l2 driver. It is possible to configure them as v4l2, but this requires research and I have not yet addressed this issue. So if you don't want any problems, use regular USB cameras.
Quick answers to old questions:
0.0.0.0
is a special address that means "listen all ipv4 interfaces". If you choose this option, you can connect to the streamer via the ip address of your network card orlocalhost
(127.0.0.1
).- You can't listen to port
80
unless you are root or have theCAP_NET_BIND_SERVICE
capability (blah-blah-blah the network magic). If you want to run ustreamer via systemd on port 80 under non-root user, you need to add a parameterAmbientCapabilities=CAP_NET_BIND_SERVICE
to the Service section - Use the HW encoder: almost all cameras support it.
- If you're afraid that someone will see your video, use password authorization. It's better than nothing.
PS: I was just passing by, so if you need any help, go to discord, the link is in the ustreamer repository on github.
-
@mdevaev Thank you very much for that info just saved me a ton of cash