issues installing on PI 3 B+
-
hi here is the answers
Do you have motion set to stream ? I.e. when viewing in a browser does http://10.0.1.110/stream show live video (as opposed to a single static image)?
answer : yes live video
Assuming that the motion feed is video. What happens when you run ffmpeg -y -i http://10.0.1.110/stream -vframes 1 ~/tes[x].jpeg (changing [x] to get different images).
answer :it take a pic and i can open that pic and i change the name to anotherone in the link and redo it and it save another pic
Note that the command above is subtly different to the one used in DuetLapse - which may not be supported by the ffmpeg version on your machine (although its supposed to be). But one step at a time ...
answer : yes it works the same as you gave me it save a picture every time i do it
my config now is
-basedir /home/pi/DuetLapse
-duet 10.0.1.126
-port 8082
-seconds 30
-detect none
-weburl1 http://10.0.1.110/stream
-verbose
-camera1 streammaybe that camera1 stream is wrong ?
it seem the motion is saving video files see below the motion log
and maybe the format of the streaming need to be changed to mjpeg so the Duetlapse can see it but what i need to do to make this happen in motion ? But that is the job of ffmpeg no??
another note i find opne image always under 10-0-1-126 which is camera1_0-000001.jpg if i delete it it takes another pic with the same name but only one pic same name is this normal ? what is the output looks like a clip with still images or images to be a clip in another program ?
-
There should be sequentially named images in the "capture" folder. The fact that there is only one is a symptom of the problem.
Try this version. Its a long shot but I have removed a portion of the ffmpeg command so that it is the same as the one I had you manually test. If that does not change anything, then I think the issue is with motion.
Ideally - you want motion to be configured to output jpeg or mjpeg. I do not know what it streams by default. Also - I would disable the motion detection (just to take a variable out of play).
I used motion a long time ago but the version at that time used way too much CPU - so I developed videostream. That has the disadvantage of using opencv which can be tricky to get installed. Bottom line, I cannot help you directly with motion. -
so let us do videostream then but you know there is a part fails what i need to to ?? do you have a solution for that ? if less cpu then we do that but tell me what i need to do exact i will do it
i used the last ver you gave me it does the exact same thing one image same name the only difference in this one when the print cancel or stoped it does not force the duetlapse to stop it keep running idle
-
@sankafola said in issues installing on PI 3 B+:
so let us do videostream then but you know there is a part fails what i need to to ?? do you have a solution for that ? if less cpu then we do that but tell me what i need to do exact i will do it
If you are using a pi camera (ribon cable) then videostream can be used without opencv (which I mentioned can be reluctant to install). To use a USB camera requires opencv.
The version on github tries to import opencv. The version below has a small change and should not try to install opencv. To use this version you MUST use the -pires and -pistream options. This will use the pi libcamera libraries. I've not used it this way for quite a while so do not know if the libraries have changed much.
i used the last ver you gave me it does the exact same thing one image same name the only difference in this one when the print cancel or stoped it does not force the duetlapse to stop it keep running idle.
The difference is incidental - the change I made was just to the ffmeg call.
If videostream does not work, I have one other trick up my sleeve.
-
i made a dir called videostream and i put the file you sent videostream.py there and i ran python3 ./videostream.py -port8081 & -pires -pistream
and i got this error no module named imutilswhat i do ?
i installed imutils but now am getting another error for cv2
-
You tried to run videostream without -pires etc. so it tried to use opencv (cv2 is its internal name).
-
Also best to run without & at end when you are testing.
-
Also - please read the instructions especially on -pires settings and how to determine them.
-
i did try with and without the & and with the option -pires and -pistream and it gives the same results its asking for cv2 see below
i will try to install the opencv i see now the notes you refered to it i will give it a try
a lot of errors see the log file down and as soon as i open the address 10.0.1.110:8081/stream i get this msg repeating " empty frame detected
pi@raspberrypi:~ $ python3 videostream.py -port 8081 &
[1] 2213
pi@raspberrypi:~ $ python3: can't open file '/home/pi/videostream.py': [Errno 2] No such file or directory
^C
[1]+ Exit 2 python3 videostream.py -port 8081
pi@raspberrypi:~ $ cd videostream
pi@raspberrypi:~/videostream $ python3 videostream.py -port 8081 &
[1] 2221
pi@raspberrypi:~/videostream $ Version: 2.1.1Scanning for available Cameras
[ WARN:0@0.777] global cap_v4l.cpp:997 open VIDEOIO(V4L2:/dev/video1): can't open camera by index
[ERROR:0@0.792] global obsensor_uvc_stream_channel.cpp:159 getStreamChannelGroup Camera index out of range
[ WARN:0@0.792] global cap_v4l.cpp:997 open VIDEOIO(V4L2:/dev/video2): can't open camera by index
[ERROR:0@0.796] global obsensor_uvc_stream_channel.cpp:159 getStreamChannelGroup Camera index out of range
[ WARN:0@0.796] global cap_v4l.cpp:997 open VIDEOIO(V4L2:/dev/video3): can't open camera by index
[ERROR:0@0.799] global obsensor_uvc_stream_channel.cpp:159 getStreamChannelGroup Camera index out of range
[ WARN:0@0.800] global cap_v4l.cpp:997 open VIDEOIO(V4L2:/dev/video4): can't open camera by index
[ERROR:0@0.803] global obsensor_uvc_stream_channel.cpp:159 getStreamChannelGroup Camera index out of range
[ WARN:0@0.803] global cap_v4l.cpp:997 open VIDEOIO(V4L2:/dev/video5): can't open camera by index
[ERROR:0@0.807] global obsensor_uvc_stream_channel.cpp:159 getStreamChannelGroup Camera index out of range
[ WARN:0@0.807] global cap_v4l.cpp:997 open VIDEOIO(V4L2:/dev/video6): can't open camera by index
[ERROR:0@0.811] global obsensor_uvc_stream_channel.cpp:159 getStreamChannelGroup Camera index out of range
[ WARN:0@0.811] global cap_v4l.cpp:997 open VIDEOIO(V4L2:/dev/video7): can't open camera by index
[ERROR:0@0.816] global obsensor_uvc_stream_channel.cpp:159 getStreamChannelGroup Camera index out of range
[ WARN:0@0.817] global cap_v4l.cpp:997 open VIDEOIO(V4L2:/dev/video8): can't open camera by index
[ERROR:0@0.821] global obsensor_uvc_stream_channel.cpp:159 getStreamChannelGroup Camera index out of range
[ WARN:0@0.821] global cap_v4l.cpp:997 open VIDEOIO(V4L2:/dev/video9): can't open camera by index
[ERROR:0@0.825] global obsensor_uvc_stream_channel.cpp:159 getStreamChannelGroup Camera index out of range
[ WARN:0@0.825] global cap_v4l.cpp:997 open VIDEOIO(V4L2:/dev/video10): can't open camera by index
[ERROR:0@0.829] global obsensor_uvc_stream_channel.cpp:159 getStreamChannelGroup Camera index out of range
[ WARN:0@0.829] global cap_v4l.cpp:997 open VIDEOIO(V4L2:/dev/video11): can't open camera by index
[ERROR:0@0.833] global obsensor_uvc_stream_channel.cpp:159 getStreamChannelGroup Camera index out of range
[ WARN:0@0.833] global cap_v4l.cpp:997 open VIDEOIO(V4L2:/dev/video12): can't open camera by index
[ERROR:0@0.836] global obsensor_uvc_stream_channel.cpp:159 getStreamChannelGroup Camera index out of range
[ WARN:0@0.837] global cap_v4l.cpp:997 open VIDEOIO(V4L2:/dev/video13): can't open camera by index
[ERROR:0@0.840] global obsensor_uvc_stream_channel.cpp:159 getStreamChannelGroup Camera index out of range
[ WARN:0@10.862] global cap_v4l.cpp:1134 tryIoctl VIDEOIO(V4L2:/dev/video14): select() timeout.
[ WARN:0@20.888] global cap_v4l.cpp:1134 tryIoctl VIDEOIO(V4L2:/dev/video15): select() timeout.
[ WARN:0@20.892] global cap_v4l.cpp:997 open VIDEOIO(V4L2:/dev/video16): can't open camera by index
[ERROR:0@20.900] global obsensor_uvc_stream_channel.cpp:159 getStreamChannelGroup Camera index out of range
[ WARN:0@20.901] global cap_v4l.cpp:997 open VIDEOIO(V4L2:/dev/video17): can't open camera by index
[ERROR:0@20.910] global obsensor_uvc_stream_channel.cpp:159 getStreamChannelGroup Camera index out of range
[ WARN:0@20.910] global cap_v4l.cpp:997 open VIDEOIO(V4L2:/dev/video18): can't open camera by index
[ERROR:0@20.919] global obsensor_uvc_stream_channel.cpp:159 getStreamChannelGroup Camera index out of range
[ WARN:0@20.919] global cap_v4l.cpp:997 open VIDEOIO(V4L2:/dev/video19): can't open camera by index
[ERROR:0@20.927] global obsensor_uvc_stream_channel.cpp:159 getStreamChannelGroup Camera index out of rangeNo camera was specified but one camera was found and will be used
Opening camera with identifier: 0
Scanning for available sizes and formats - be patient
The following resolutions are available from the camera: 2592x1944(BGR3) 2592x1944(MJPG) 2592x1944(JPEG) 2592x1944(H264) 2048x1080(BGR3) 2048x1080(MJPG) 2048x1080(JPEG) 2048x1080(H264) 1920x1800(BGR3) 1920x1800(MJPG) 1920x1800(JPEG) 1920x1800(H264) 1640x1232(BGR3) 1640x1232(MJPG) 1640x1232(JPEG) 1640x1232(H264) 1280x720(BGR3) 1280x720(MJPG) 1280x720(JPEG) 1280x720(H264) 800x600(BGR3) 800x600(MJPG) 800x600(JPEG) 800x600(H264) 720x480(BGR3) 720x480(MJPG) 720x480(JPEG) 720x480(H264) 640x480(BGR3) 640x480(MJPG) 640x480(JPEG) 640x480(H264) 320x240(BGR3) 320x240(MJPG) 320x240(JPEG) 320x240(H264)
The requested size was not available
Using a smaller size: 2592x1944
The requested format: MJPG is available
[ WARN:0@23.454] global cap_v4l.cpp:2183 setProperty VIDEOIO(V4L2:/dev/video0): Bad buffer size 0, buffer size must be from 1 to 10
[ WARN:0@34.068] global cap_v4l.cpp:1134 tryIoctl VIDEOIO(V4L2:/dev/video0): select() timeout.The video stream can be access from:
http://10.0.1.110:8081/streamIf on the same computer as the camera - you can also try the following:
localhost:8081/stream
127.0.0.1:8081/streamwhen i open the http://10.0.1.110:8081/stream i get this msg
i disconnected the ribbon camera and tried a USB camera now no more empty frame msg but other msg see below and only one image just like motion do ( am now with opencv and videostream )
-
Please read the documentation carefully. -pires requires something other than blank input
-pistream can usually be omitted
The documentation is here:
https://github.com/stuartofmt/videostream/blob/master/videostream on Raspberry.md
Try something LIKE
python3 ./videostream.py -port 8082 -camera 0 -rotate 180 -debug -pires "--width 800 --height 600"
tou can also try
libcamerify python3 ./videostream.py -port 8082 -camera 0 -rotate 180 -debug -pires "--width 800 --height 600"
-
am using USB camera now
and when i use this one
python3 ./videostream.py -port 8081 -camera 0 -rotate 180 -debug -pires "--width 800 --height 600"
i get this
-
As I said a while back - I don’t have access to my test septup. This is too hard trying to do it remotely. I’ll pick it back up in the new year and we can try again. Happy New Year !
-
ok thanks , happy new year to you too
-
As a follow up. Go through the procedure described here
https://github.com/stuartofmt/Pi-Notes/blob/master/Resolution Testing.md
As an observation; getting camera setting that work is largely trial and error. Different combinations of computer, operating system, streaming software, camera type ( usb vs pi) , camera libraries etc
Finding working combination requires an approach that is methodical (one thing at a time), consistent (use only the appropriate commands for the type of camera). Jumping from one approach to the other creates false trails. Even for a camera that is working, not all the resolutions ( for example) that it reports as supported will necessarily work.
-
is it easier to install the duetlapse on videostream on window 10 ? or a mac ?
-
I’ve never tried it on the Mac.
Otherwise try it and see. Same potential issues with opencv. It worked fine in the past -
Merry Christmas
i tried on pc and same exact issues so am back to PI and the ribbon cam will keep trying until you have time
-
i finally was able to install opencv ver 4.6.0.66 on it and now video stream works right
now i will try the duetlapse the file you gave me on 20 decits like 90% working
and this while printing , there are some errors but i see the images in the dir and it keep coming while printing , even with no printing it keep coming here is my command i used and it worked finaly to install opencv
sudo pip install opencv-python==4.6.0.66
and to make videostream ver 2.1 works with ribbon cam
sudo python3 ./videostream.py -port 80 -camera 0 -size 4 -format MJPG -host 10.0.1.110
now that is a Merry Christmas
-
The first lot of “errors” are an artifact of scanning for available cameras. They are not true errors.
The disconnect messages are to do with connections being closed (e.g. browser window). Again, not true errors.
Enjoy! -
great so i have a working system now maybe i should make a youtube short one on my channel to show how to do it , i never found a video explaining ,
now for the pic taken i take that and i put them together with a someftware like final cut to be like a movie clip right ?
another question about the m3291 as i understand this one make the printer take the head away from the printed area and then the duetlapse take a pic right? if yes then this is not working now in my setup unless there is extra setting to activate that in duetlapse.config