Closed zar1978 closed 4 years ago
Can you please paste the output of arlo.GetDevices()
.
The first error message you're receiving is telling you that you have the wrong device. Once I see your device JSON I'll probably be able to tell you why.
I believe the second error message is telling you that you waited too long to download the video stream after calling StartStream
.
To avoid the timeout issue, you might try rewriting the script like so:
import sys, traceback
from arlo import Arlo
from subprocess import call
from pprint import pprint
USERNAME =
PASSWORD =
try:
arlo = Arlo(USERNAME, PASSWORD)
cameras = arlo.GetDevices('camera')
basestations = arlo.GetDevices('basestation')
url_soggiorno = arlo.StartStream(basestations[0], cameras[0])
call(['ffmpeg', '-re', '-i', url_soggiorno, '-t', '10', '-acodec', 'copy', '-vcodec', 'copy', '/srv/openhab2-conf/html/soggiorno.mp4'])
url_niccolo = arlo.StartStream(basestations[0], cameras[1])
call(['ffmpeg', '-re', '-i', url_niccolo, '-t', '10', '-acodec', 'copy', '-vcodec', 'copy', 'niccolo.mp4'])
url_balcone_ovest = arlo.StartStream(basestations[0], cameras[2])
call(['ffmpeg', '-re', '-i', url_balcone_ovest, '-t', '10', '-acodec', 'copy', '-vcodec', 'copy', 'balconeOvest.mp4'])
url_balcone_nord = arlo.StartStream(basestations[0], cameras[3])
call(['ffmpeg', '-re', '-i', url_balcone_nord, '-t', '10', '-acodec', 'copy', '-vcodec', 'copy', 'balconeNord.mp4'])
except Exception as e:
traceback.print_exc(file=sys.stdout)
print(e)
This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs.
@jeffreydwalter Do you know why / when does the ingress timeout error happens?
@slobglob I don't, but my gut tells me it's related to starting a stream and not consuming it. You have to consume the stream with a certain number of seconds. (I don't know how many anymore.)
@jeffreydwalter But why does the startStream
call gets it?
It should just return the url, if you don't consume it you'll get 403
error from ffmpeg (or any other client you use).
@slobglob I really don't know. There's 0 documentation available about Arlo's API. It could be issues with the basestation talking to the server.
Please answer these questions before submitting your issue. Thanks!
What version of Python are you using (
python -V
)?2.7.13
What operating system and processor architecture are you using (
python -c 'import platform; print(platform.uname());'
)?'Linux', 'openHABianPi', '4.14.98-v7+', '#1200 SMP Tue Feb 12 20:27:48 GMT 2019', 'armv7l'
Which Python packages do you have installed (run the
pip freeze
orpip3 freeze
command and paste output)?arlo==1.2.18 beautifulsoup4==4.5.3 certifi==2019.3.9 chardet==3.0.4 cryptography==1.7.1 dnspython==1.15.0 enum34==1.1.6 html5lib==0.999999999 idna==2.8 ipaddress==1.0.17 keyring==10.1 keyrings.alt==1.3 lxml==3.7.1 monotonic==1.5 pyasn1==0.1.9 PyBluez==0.18 pycrypto==2.6.1 pygobject==3.22.0 PySocks==1.6.8 pyxdg==0.25 requests==2.21.0 RPi.GPIO==0.6.5 SecretStorage==2.3.1 six==1.12.0 sseclient==0.0.18 tzupdate==1.3.1 urllib3==1.24.1 webencodings==0.5
Which Arlo hardware do you have (camera types - [Arlo, Pro, Q, etc.], basestation model, etc.)?
base station
What did you do?
I have 4 cameras and for each one I would like to save a 10 second MP4 file. If I try to connect to only camera 0, the file is created. If instead I try to insert all 4 of them I get an error:
What did you expect to see?
4 file MP4 with video
What did you see instead?
Does this issue reproduce with the latest release?
Yes