51 lines
1.3 KiB
Python
Executable File
51 lines
1.3 KiB
Python
Executable File
#!/usr/bin/env python3
|
|
import include_homekit
|
|
|
|
from pprint import pprint
|
|
from argparse import ArgumentParser
|
|
from time import sleep
|
|
from homekit.util import Addr
|
|
from homekit.camera import esp32
|
|
from homekit.config import config
|
|
|
|
if __name__ == '__main__':
|
|
parser = ArgumentParser()
|
|
parser.add_argument('--addr', type=str, required=True,
|
|
help='camera server address, in host:port format')
|
|
parser.add_argument('--status', action='store_true',
|
|
help='print status and exit')
|
|
|
|
arg = config.load_app(False, parser=parser)
|
|
cam = esp32.WebClient(addr=Addr.fromstring(arg.addr))
|
|
|
|
if arg.status:
|
|
status = cam.getstatus()
|
|
pprint(status)
|
|
sys.exit(0)
|
|
|
|
if cam.syncsettings(dict(
|
|
vflip=True,
|
|
hmirror=True,
|
|
framesize=esp32.FrameSize.SVGA_800x600,
|
|
lenc=True,
|
|
wpc=False,
|
|
bpc=False,
|
|
raw_gma=False,
|
|
agc=True,
|
|
gainceiling=5,
|
|
quality=10,
|
|
awb_gain=False,
|
|
awb=True,
|
|
aec_dsp=True,
|
|
aec=True
|
|
)) is True:
|
|
print('some settings were changed, sleeping for 0.5 sec')
|
|
sleep(0.5)
|
|
|
|
# cam.setdelay(200)
|
|
|
|
cam.setflash(True)
|
|
sleep(0.2)
|
|
cam.capture('/tmp/capture.jpg')
|
|
cam.setflash(False)
|