From d8ec259e9a8f3677bf60700d8576d14e69a29875 Mon Sep 17 00:00:00 2001 From: Assaf Inbal Date: Tue, 14 Feb 2023 00:12:12 +0200 Subject: [PATCH] Add mjpeg camera stream_source (#86908) Co-authored-by: J. Nick Koston --- homeassistant/components/mjpeg/camera.py | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/homeassistant/components/mjpeg/camera.py b/homeassistant/components/mjpeg/camera.py index 5c42d392142..27f5c7a1411 100644 --- a/homeassistant/components/mjpeg/camera.py +++ b/homeassistant/components/mjpeg/camera.py @@ -10,6 +10,7 @@ from aiohttp import web import async_timeout import requests from requests.auth import HTTPBasicAuth, HTTPDigestAuth +from yarl import URL from homeassistant.components.camera import Camera from homeassistant.config_entries import ConfigEntry @@ -118,6 +119,15 @@ class MjpegCamera(Camera): if device_info is not None: self._attr_device_info = device_info + async def stream_source(self) -> str: + """Return the stream source.""" + url = URL(self._mjpeg_url) + if self._username: + url = url.with_user(self._username) + if self._password: + url = url.with_password(self._password) + return str(url) + async def async_camera_image( self, width: int | None = None, height: int | None = None ) -> bytes | None: