mirror of
https://github.com/home-assistant/core.git
synced 2025-07-17 10:17:09 +00:00
Move yi imports at top-level (#29001)
* Move yi imports at top-level * Review 1 : removing useless disable=import-error * Review 2 : removing useless disable=import-error
This commit is contained in:
parent
3dd5222ec7
commit
c4108fec4f
@ -2,21 +2,24 @@
|
|||||||
import asyncio
|
import asyncio
|
||||||
import logging
|
import logging
|
||||||
|
|
||||||
|
from aioftp import Client, StatusCodeError
|
||||||
|
from haffmpeg.camera import CameraMjpeg
|
||||||
|
from haffmpeg.tools import IMAGE_JPEG, ImageFrame
|
||||||
import voluptuous as vol
|
import voluptuous as vol
|
||||||
|
|
||||||
from homeassistant.components.camera import Camera, PLATFORM_SCHEMA
|
from homeassistant.components.camera import PLATFORM_SCHEMA, Camera
|
||||||
from homeassistant.components.ffmpeg import DATA_FFMPEG
|
from homeassistant.components.ffmpeg import DATA_FFMPEG
|
||||||
from homeassistant.const import (
|
from homeassistant.const import (
|
||||||
CONF_HOST,
|
CONF_HOST,
|
||||||
CONF_NAME,
|
CONF_NAME,
|
||||||
CONF_PATH,
|
|
||||||
CONF_PASSWORD,
|
CONF_PASSWORD,
|
||||||
|
CONF_PATH,
|
||||||
CONF_PORT,
|
CONF_PORT,
|
||||||
CONF_USERNAME,
|
CONF_USERNAME,
|
||||||
)
|
)
|
||||||
|
from homeassistant.exceptions import PlatformNotReady
|
||||||
from homeassistant.helpers import config_validation as cv
|
from homeassistant.helpers import config_validation as cv
|
||||||
from homeassistant.helpers.aiohttp_client import async_aiohttp_proxy_stream
|
from homeassistant.helpers.aiohttp_client import async_aiohttp_proxy_stream
|
||||||
from homeassistant.exceptions import PlatformNotReady
|
|
||||||
|
|
||||||
_LOGGER = logging.getLogger(__name__)
|
_LOGGER = logging.getLogger(__name__)
|
||||||
|
|
||||||
@ -82,8 +85,6 @@ class YiCamera(Camera):
|
|||||||
|
|
||||||
async def _get_latest_video_url(self):
|
async def _get_latest_video_url(self):
|
||||||
"""Retrieve the latest video file from the customized Yi FTP server."""
|
"""Retrieve the latest video file from the customized Yi FTP server."""
|
||||||
from aioftp import Client, StatusCodeError
|
|
||||||
|
|
||||||
ftp = Client()
|
ftp = Client()
|
||||||
try:
|
try:
|
||||||
await ftp.connect(self.host)
|
await ftp.connect(self.host)
|
||||||
@ -125,8 +126,6 @@ class YiCamera(Camera):
|
|||||||
|
|
||||||
async def async_camera_image(self):
|
async def async_camera_image(self):
|
||||||
"""Return a still image response from the camera."""
|
"""Return a still image response from the camera."""
|
||||||
from haffmpeg.tools import ImageFrame, IMAGE_JPEG
|
|
||||||
|
|
||||||
url = await self._get_latest_video_url()
|
url = await self._get_latest_video_url()
|
||||||
if url and url != self._last_url:
|
if url and url != self._last_url:
|
||||||
ffmpeg = ImageFrame(self._manager.binary, loop=self.hass.loop)
|
ffmpeg = ImageFrame(self._manager.binary, loop=self.hass.loop)
|
||||||
@ -142,8 +141,6 @@ class YiCamera(Camera):
|
|||||||
|
|
||||||
async def handle_async_mjpeg_stream(self, request):
|
async def handle_async_mjpeg_stream(self, request):
|
||||||
"""Generate an HTTP MJPEG stream from the camera."""
|
"""Generate an HTTP MJPEG stream from the camera."""
|
||||||
from haffmpeg.camera import CameraMjpeg
|
|
||||||
|
|
||||||
if not self._is_on:
|
if not self._is_on:
|
||||||
return
|
return
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user