Home Assistant custom component for viewing IP cameras RTSP stream in real time using WebRTC technology

Overview

WebRTC Camera

hacs_badge Donate Donate

Home Assistant custom component for viewing IP cameras RTSP stream in real time using WebRTC technology.

Based on:

Why WebRTC:

  • works in any modern browser, even on mobiles
  • the only browser technology with minimal camera stream delays (0.5 seconds and below)
  • works well with unstable channel
  • does not use transcoding and does not load the CPU
  • support camera stream with sound

FAQ

Q. I can't see video stream
A.

  • If your camera works with another integration - it doesn’t mean it will work with this integration
  • If your camera works in VLC - it doesn’t mean it will work with this integration
  • If your camera works remotely with another integration - it doesn’t mean it will work remotely with this integration

In case of any problems, check:

  1. Check that you have installed the integration on the "Configuration > Integrations" page
  2. Check that you are on the same network as your Hass server
  3. Check that you don't setup Hass server with forward only 8123 port (users with Virtual Machine or Docker installation or firewall), because WebRTC using 50000-50009 UDP ports for video streaming
  4. Check that you don't have any erros in "Configuration > Logs" page
  5. Check if default video with Bunny works:
type: 'custom:webrtc-camera'
url: 'rtsp://wowzaec2demo.streamlock.net/vod/mp4:BigBuckBunny_115k.mov'

PS. Some mobile browsers can't show stream without HTTPS. There are also problems with the stream in the Firefox browser.

Q. Error: Custom element doesn't exist: webrtc-camera.
A. Component automatically adds custom card /webrtc/webrtc-camera.js to your resources.

Check if you install component in "Integrations" page. And try to clear your browser cache. Also, you can try to add this card to your resources manually.

Q. Exernal access to streams doesn't work
A. WebRTC technology can't use your HTTP/HTTPS-access to Hass. It uses its own UDP port range (50000-50009 ports by default). And it can handle access to stream even if you have private IP-address, but not in all cases.

For a better user experience it is recommended to forward UDP ports 50000-50009 to Hass server on your router.

50000-50009 ports are used only during video streaming. At each start of the streaming, a random port is occupied. The port is released when the streaming ends. The data should theoretically be encrypted, but I haven't tested :)

For more tech info read about STUN, Symmetric NAT and UDP hole punching.

Q. Some streams are not loaded when there are many cameras on the page.
A. The default settings only support 10 simultaneous streams (from Hass server to app or browser). Go to "Configuration > Integrations > WebRTC Camera > Options" and increase port range. You also need forward new port range on your router if you want external access to cameras.

Q. Which codecs are supported?
A. WebRTC supported: AVC/H.264 for video and G.711 PCM (A-law), G.711 PCM (µ-law) for audio.

WebRTC technology doesn't support HEVC/H.265 for video and AAC for audio.

Install

You can install component with HACS custom repo: HACS > Integrations > 3 dots (upper top corner) > Custom repositories > URL: AlexxIT/WebRTC > Category: Integration

Or manually copy webrtc folder from latest release to custom_components folder in your config folder.

Config

Video DEMO

WebRTC Camera real time streaming component for Home Assistant

With GUI. Configuration > Integration > Add Integration > WebRTC Camera.

If the integration is not in the list, you need to clear the browser cache.

Component doesn't create devices/entities/services. It creates only lovelace custom card:

Minimal

type: 'custom:webrtc-camera'
url: 'rtsp://rtsp:[email protected]:554/av_stream/ch0'

Full

type: 'custom:webrtc-camera'
url: 'rtsp://rtsp:[email protected]:554/av_stream/ch0'
poster: https://home-assistant.io/images/cast/splash.png  # still image when stream is loading
intersection: 0.75  # auto pause stream when less than 75% of video element is in the screen, 50% by default

About

Supported clients:

  • macOS: Google Chrome, Safari
  • Windows: Google Chrome
  • Android: Google Chrome, Home Assistant Mobile App
  • iOS: Home Assistant Mobile App

Limitations:

  • works only with H.264 camaras
  • sometimes there are difficulties with external access to streams

Known work cameras:

  • ActiveCam AC-D2121IR3
  • ActiveCam AC-D7121IR1W (support sound)
  • EZVIZ C3S
  • Hikvision DS-2CD2T47G1-L, DS-2CD1321-I, DS-2CD2143G0-IS
  • Reolink: RLC-410, RLC-410W, E1 Pro, 4505MP
  • Sonoff GK-200MP2-B (support sound)
  • TP-Link Tapo C200
  • Wyze Cam v2 (support sound)
  • Dahua DH-IPC-HDPW1431FP-AS-0280B (support sound)
  • Yi 1080p Dome Hi3518e Chipset (with hack)
  • Yi 1080p Dome MStar Infinity Chipset (with hack)
Comments
  • Error during setup of component (core-2021.12.0)

    Error during setup of component (core-2021.12.0)

    System Health

    version | core-2021.12.0.dev20211110 -- | -- installation_type | Home Assistant OS dev | true hassio | true docker | true user | root virtualenv | false python_version | 3.9.7 os_name | Linux os_version | 5.10.70 arch | x86_64 timezone | Europe/Amsterdam

    Home Assistant Community Store

    GitHub API | ok -- | -- Github API Calls Remaining | 4952 Installed Version | 1.16.0 Stage | running Available Repositories | 965 Installed Repositories | 8

    AccuWeather

    can_reach_server | ok -- | -- remaining_requests | 28

    Home Assistant Cloud

    logged_in | true -- | -- subscription_expiration | November 22, 2021, 01:00 relayer_connected | true remote_enabled | true remote_connected | true alexa_enabled | false google_enabled | true remote_server | eu-central-1-0.ui.nabu.casa can_reach_cert_server | ok can_reach_cloud_auth | ok can_reach_cloud | ok

    Home Assistant Supervisor

    host_os | Home Assistant OS 7.0.dev20211104 -- | -- update_channel | dev supervisor_version | supervisor-2021.11.dev0901 docker_version | 20.10.8 disk_total | 30.8 GB disk_used | 6.9 GB healthy | true supported | true board | ova supervisor_api | ok version_api | ok installed_addons | Samba share (9.5.1), SSH & Web Terminal (9.0.1), Home Assistant Google Drive Backup (0.105.2), MariaDB (2.4.0), ESPHome (dev) (dev)

    Lovelace

    dashboards | 1 -- | -- resources | 7 views | 4 mode | storage

    This error originated from a custom integration.
    
    Logger: homeassistant.setup
    Source: custom_components/webrtc/utils.py:74
    Integration: webrtc (documentation, issues)
    First occurred: 08:37:12 (1 occurrences)
    Last logged: 08:37:12
    
    Error during setup of component webrtc
    Traceback (most recent call last):
      File "/usr/src/homeassistant/homeassistant/setup.py", line 254, in _async_setup_component
        result = await task
      File "/config/custom_components/webrtc/__init__.py", line 75, in async_setup
        utils.register_static_path(hass.http.app, url_path, path)
      File "/config/custom_components/webrtc/utils.py", line 74, in register_static_path
        app['allow_cors'](route)
      File "/usr/local/lib/python3.9/site-packages/aiohttp/web_app.py", line 186, in __getitem__
        return self._state[key]
    KeyError: 'allow_cors'
    
    
    bug 
    opened by r3mcos3 35
  • WebRTC stops working on HA 2022.7.0b0

    WebRTC stops working on HA 2022.7.0b0

    The next Home Assistant release drops Python 3.9. This may be the cause?

    https://rc.home-assistant.io/blog/2022/06/29/release-20227/

    No error logs are visibile.

    opened by tkdrob 34
  • Does not install, does not work after manuall install

    Does not install, does not work after manuall install

    I got “Custom element doesn’t exist: ‘webrtc-camera’” on lovelace dashboard

    no webrtc in custom_elements found after installation. “Add Integrations” search does not find webrtc camera ok, I copied it manually, restarted, and added integration, but no card at lovelace present now.

    question 
    opened by a-x- 31
  • [Bug]: custom shortcuts and title overlap

    [Bug]: custom shortcuts and title overlap

    The new custom shortcuts added in PR #169 create a layout issue. They overlap with the title, if it is configured.

    image

    type: custom:webrtc-camera
    entity: camera.sd
    title: Dining Room
    ui: true
    shortcuts:
      - name: Record
        icon: mdi:record-circle-outline
        service: switch.toggle
        service_data:
          entity_id: switch.camera_record
    
    bug 
    opened by amitkeret 27
  • MSE: fix sign_path call for compatiblity with 2022.7

    MSE: fix sign_path call for compatiblity with 2022.7

    Since https://github.com/home-assistant/core/pull/73829 was merged, HA now requires that full path including the query parameters is signed.

    Prior to this commit, the parameters were not included and this resulted in the websocket setup failures due to JWT token being invalid.

    This commit resolves https://github.com/AlexxIT/WebRTC/issues/318 for me, although I have not tested this on any older HA instances as I don't have access to any.

    opened by skrobul 26
  • Stream not stopping when app goes to background in Android app

    Stream not stopping when app goes to background in Android app

    A few days ago my phone drained from over 50% to 0% overnight (usually it drains 10% or less). The culprit, according to Android battery stats, was the Home Assistant app and this happened after adding this component and viewing the cameras on my phone. Also, it indicated that the app downloaded 18GB of data this month (I'm assuming most was on that night):

    image

    On another day, while I was editing the cards in lovelace (changing PTZ, options, etc), I noticed that my phone was warm while the screen was off (it was not sleeping).

    enhancement 
    opened by abmantis 25
  • Uncaught DOMException: Failed to execute 'define' on 'CustomElementRegistry'

    Uncaught DOMException: Failed to execute 'define' on 'CustomElementRegistry'

    Hi,

    creating a new issue, it looks like this one : https://github.com/AlexxIT/WebRTC/issues/30

    But the error is different, it also happens when i clear cache or incognito mode...

    Uncaught DOMException: Failed to execute 'define' on 'CustomElementRegistry': the name "webrtc-camera" has already been used with this registry
        at https://xxx8123/hacsfiles/webrtc/webrtc-camera.js:692:16
    
    invalid 
    opened by pergolafabio 18
  • Invalid config - Can't start webrtc

    Invalid config - Can't start webrtc

    I'm getting this notification after installing WebRTC and restarting HA.

    Invalid config The following integrations and platforms could not be set up:

    webrtc Please check your config and logs.

    The logs say this: 2022-03-28 14:52:24 WARNING (SyncWorker_1) [homeassistant.loader] We found a custom integration webrtc which has not been tested by Home Assistant. This component might cause stability problems, be sure to disable it if you experience issues with Home Assistant (...) 2022-03-28 14:52:36 ERROR (MainThread) [homeassistant.setup] Error during setup of component webrtc Traceback (most recent call last): File "/usr/src/homeassistant/homeassistant/setup.py", line 235, in _async_setup_component result = await task File "/config/custom_components/webrtc/__init__.py", line 75, in async_setup utils.register_static_path(hass.http.app, url_path, path) File "/config/custom_components/webrtc/utils.py", line 74, in register_static_path app[allow_cors](route)

    Any ideas?

    Home Assistant 2022.3.7 Operating System Version 5.10.92-v8

    duplicate 
    opened by webdados 15
  • Can't setup after install

    Can't setup after install

    core-2022.3.5 supervisor-2022.03.5 Home Assistant OS 7.5 Hardware odroid XU4

    `Logger: homeassistant.setup
    Source: custom_components/webrtc/utils.py:74
    Integration: WebRTC Camera (documentation, issues)
    First occurred: 20:58:50 (1 occurrences)
    Last logged: 20:58:50
    
    Error during setup of component webrtc
    Traceback (most recent call last):
      File "/usr/src/homeassistant/homeassistant/setup.py", line 235, in _async_setup_component
        result = await task
      File "/config/custom_components/webrtc/__init__.py", line 75, in async_setup
        utils.register_static_path(hass.http.app, url_path, path)
      File "/config/custom_components/webrtc/utils.py", line 74, in register_static_path
        app['allow_cors'](route)
      File "/usr/local/lib/python3.9/site-packages/aiohttp/web_app.py", line 186, in __getitem__
        return self._state[key]
    KeyError: 'allow_cors'<!--`
    
    duplicate 
    opened by Harvsch 14
  • iOS cant view livestream

    iOS cant view livestream

    Not able to view livestream through iOS, it stops at the 'starting connection (WebRTC)' phase and never loads. I also get this error when following the logs.

    2021-10-11 14:30:09 ERROR (MainThread) [frontend.js.latest.202106030] homeurl.home.com/webrtc/webrtc-camera.js:675:22 NotSupportedError: Cannot define multiple custom elements with the same tag name
    

    This only happens on iOS through the mobile app and via browser. I do not have this issue on Android or web browser through a laptop.

    bug 
    opened by dpomnean 14
  • FR: Merge multiple RTSP cameras into one WebRTC stream

    FR: Merge multiple RTSP cameras into one WebRTC stream

    Hi,

    A lot of people, including myself, are bumping up against the limits of how many WebRTC sessions we can have going in a single browser window. One thing that would really make this the "ultimate" camera option for hass would be if we could somehow merge those camera stream into one WebRTC stream. I think this would alleviate most of the issues people have about displaying multiple cameras. A google search returned this as a starting point: https://stackoverflow.com/questions/59320085/record-multiple-rtsp-streams-into-a-single-file#59324096 What do you think?

    question go2rtc 
    opened by scstraus 14
  • No stream on cellular network, but working on wifi

    No stream on cellular network, but working on wifi

    I'm displaying my camera streams on my Home Assistant lovelace. On wifi, all is working as expected. But when I try to disconnect to the wifi network, the webRtc is trying to load the stream with MP4 and I only have black picture.

    I'm using a reverse proxy to access to my server outside of the local network. Is their something to do ?

    opened by matthieup240 0
  • Intersection & Browser Mod Popups

    Intersection & Browser Mod Popups

    The "intersection" option works well so far, but unfortunately not with e.g. "Browser Mod" popups because the video element is still on screen but is covered. It would be good if the streams are also automatically stopped if they are covered by an element.

    Thank you for the work.

    opened by nima-1102 0
  • Failed to read the 'buffered' property

    Failed to read the 'buffered' property

    http://192.168.12.1:8123/webrtc/video-rtc.js:402:31 Uncaught InvalidStateError:  from 'SourceBuffer': This SourceBuffer has been removed from the parent media source.
    http://192.168.12.1:8123/webrtc/video-rtc.js:509:31 Uncaught TypeError: Cannot read properties of null (reading 'connectionState')
    
    bug 
    opened by AlexxIT 0
  • Version 3

    Version 3

    • [x] Update custom card for support go2rtc streamer
    • [x] Check built-in go2rtc application
    • [x] Check go2rtc stream names
    • [x] Check entity camera url
    • [x] Check Home Assistant Cast
    • [x] Check DashCast
    • [x] Check public link
    • [x] Check go2rtc add-on
    • [x] Check Frigate 12 add-on
    • [x] Update readme
    enhancement 
    opened by AlexxIT 51
  • Some Camera's Live Streams Aren't Starting

    Some Camera's Live Streams Aren't Starting

    So I recently migrated from the Core Webrtc integration to Alex's. I have about 12 IP camera's connected to my Dahua NVR (all Dahua camera's) and I have a page that displays all my cameras. I am using the custom WebRTC card but am running into an issue where all the camera's won't connect everytime. About 30% of the time all camera's connect fine, but the other 70% anywhere from 2-5 camera's won't connect. I have tried this on the iOS companion app, Chrome Windows, and Safari on Mac all exhibit the same behavior. When this happens I usually have to close the app, and then reopen a few times for all camera's to come online. The camera's are online and working when I use the picture glance card but that is using HLS so its very far behind. See some logs below, you can see I restarted the app but I am seeing a few possible errors.

    PS. I tried go2rtc, but have had troubles with the picture card so I prefer to use Webrtc with its custom card.

    HA OS 2022.12.6 WebRTC V2.3.1

    2022-12-16 10:05:50.403 DEBUG (webrtc) [custom_components.webrtc.utils] 2022/12/16 10:05:50 muxerWebRTC.WritePacket WebRTC Client Offline
    2022-12-16 10:05:50.407 DEBUG (webrtc) [custom_components.webrtc.utils] 2022/12/16 10:05:50 muxerWebRTC.WritePacket WebRTC Client Offline
    2022-12-16 10:05:50.408 DEBUG (webrtc) [custom_components.webrtc.utils] 2022/12/16 10:05:50 muxerWebRTC.WritePacket WebRTC Client Offline
    2022-12-16 10:05:50.409 DEBUG (webrtc) [custom_components.webrtc.utils] 2022/12/16 10:05:50 muxerWebRTC.WritePacket WebRTC Client Offline
    2022-12-16 10:05:50.409 DEBUG (webrtc) [custom_components.webrtc.utils] 2022/12/16 10:05:50 muxerWebRTC.WritePacket WebRTC Client Offline
    2022-12-16 10:05:50.409 DEBUG (webrtc) [custom_components.webrtc.utils] 2022/12/16 10:05:50 muxerWebRTC.WritePacket WebRTC Client Offline
    2022-12-16 10:05:50.417 DEBUG (webrtc) [custom_components.webrtc.utils] 2022/12/16 10:05:50 muxerWebRTC.WritePacket WebRTC Client Offline
    2022-12-16 10:05:50.417 DEBUG (webrtc) [custom_components.webrtc.utils] 2022/12/16 10:05:50 muxerWebRTC.WritePacket WebRTC Client Offline
    2022-12-16 10:05:50.418 DEBUG (webrtc) [custom_components.webrtc.utils] 2022/12/16 10:05:50 muxerWebRTC.WritePacket WebRTC Client Offline
    2022-12-16 10:05:50.419 DEBUG (webrtc) [custom_components.webrtc.utils] 2022/12/16 10:05:50 muxerWebRTC.WritePacket WebRTC Client Offline
    2022-12-16 10:05:50.419 DEBUG (webrtc) [custom_components.webrtc.utils] 2022/12/16 10:05:50 muxerWebRTC.WritePacket WebRTC Client Offline
    2022-12-16 10:05:51.717 DEBUG (webrtc) [custom_components.webrtc.utils] 2022/12/16 10:05:51 muxerWebRTC.WritePacket WebRTC Client Offline
    2022-12-16 10:05:52.813 DEBUG (webrtc) [custom_components.webrtc.utils] 2022/12/16 10:05:52 Set ICEServers [stun:stun.l.google.com:19302]
    2022-12-16 10:05:52.814 DEBUG (webrtc) [custom_components.webrtc.utils] 2022/12/16 10:05:52 Set UDP ports to 50000 .. 50240
    2022-12-16 10:05:52.818 DEBUG (webrtc) [custom_components.webrtc.utils] 2022/12/16 10:05:52 Set ICEServers [stun:stun.l.google.com:19302]
    2022-12-16 10:05:52.830 DEBUG (webrtc) [custom_components.webrtc.utils] 2022/12/16 10:05:52 Set UDP ports to 50000 .. 50240
    2022-12-16 10:05:52.830 DEBUG (webrtc) [custom_components.webrtc.utils] 2022/12/16 10:05:52 Set ICEServers [stun:stun.l.google.com:19302]
    2022-12-16 10:05:52.830 DEBUG (webrtc) [custom_components.webrtc.utils] 2022/12/16 10:05:52 Set UDP ports to 50000 .. 50240
    2022-12-16 10:05:52.830 DEBUG (webrtc) [custom_components.webrtc.utils] 2022/12/16 10:05:52 Set ICEServers [stun:stun.l.google.com:19302]
    2022-12-16 10:05:52.830 DEBUG (webrtc) [custom_components.webrtc.utils] 2022/12/16 10:05:52 Set UDP ports to 50000 .. 50240
    2022-12-16 10:05:52.830 DEBUG (webrtc) [custom_components.webrtc.utils] 2022/12/16 10:05:52 Set ICEServers [stun:stun.l.google.com:19302]
    2022-12-16 10:05:52.831 DEBUG (webrtc) [custom_components.webrtc.utils] 2022/12/16 10:05:52 Set UDP ports to 50000 .. 50240
    2022-12-16 10:05:52.831 DEBUG (webrtc) [custom_components.webrtc.utils] 2022/12/16 10:05:52 Set ICEServers [stun:stun.l.google.com:19302]
    2022-12-16 10:05:52.831 DEBUG (webrtc) [custom_components.webrtc.utils] 2022/12/16 10:05:52 Set UDP ports to 50000 .. 50240
    2022-12-16 10:05:52.839 DEBUG (webrtc) [custom_components.webrtc.utils] 2022/12/16 10:05:52 websocket.JSON.Send write tcp 127.0.0.1:8083->127.0.0.1:52760: i/o timeout
    2022-12-16 10:05:52.846 DEBUG (webrtc) [custom_components.webrtc.utils] 2022/12/16 10:05:52 websocket.JSON.Send write tcp 127.0.0.1:8083->127.0.0.1:52726: i/o timeout
    2022-12-16 10:05:52.847 DEBUG (webrtc) [custom_components.webrtc.utils] 2022/12/16 10:05:52 websocket.JSON.Send write tcp 127.0.0.1:8083->127.0.0.1:52740: i/o timeout
    2022-12-16 10:05:52.857 DEBUG (webrtc) [custom_components.webrtc.utils] 2022/12/16 10:05:52 websocket.JSON.Send write tcp 127.0.0.1:8083->127.0.0.1:52766: i/o timeout
    2022-12-16 10:05:52.858 DEBUG (webrtc) [custom_components.webrtc.utils] 2022/12/16 10:05:52 websocket.JSON.Send write tcp 127.0.0.1:8083->127.0.0.1:52776: i/o timeout
    2022-12-16 10:05:52.858 DEBUG (webrtc) [custom_components.webrtc.utils] 2022/12/16 10:05:52 websocket.JSON.Send write tcp 127.0.0.1:8083->127.0.0.1:52750: i/o timeout
    2022-12-16 10:05:54.701 DEBUG (webrtc) [custom_components.webrtc.utils] 2022/12/16 10:05:54 Stream Exit On Demand No Viewer
    2022-12-16 10:05:54.702 DEBUG (webrtc) [custom_components.webrtc.utils] 2022/12/16 10:05:54 Stream Exit On Demand No Viewer
    2022-12-16 10:05:54.709 DEBUG (webrtc) [custom_components.webrtc.utils] 2022/12/16 10:05:54 Stream Exit On Demand No Viewer
    2022-12-16 10:05:54.710 DEBUG (webrtc) [custom_components.webrtc.utils] 2022/12/16 10:05:54 Stream Exit On Demand No Viewer
    2022-12-16 10:05:54.731 DEBUG (webrtc) [custom_components.webrtc.utils] 2022/12/16 10:05:54 Stream Exit On Demand No Viewer
    2022-12-16 10:05:54.731 DEBUG (webrtc) [custom_components.webrtc.utils] 2022/12/16 10:05:54 Stream Exit On Demand No Viewer
    2022-12-16 10:05:54.739 DEBUG (webrtc) [custom_components.webrtc.utils] 2022/12/16 10:05:54 Stream Exit On Demand No Viewer
    2022-12-16 10:05:54.740 DEBUG (webrtc) [custom_components.webrtc.utils] 2022/12/16 10:05:54 Stream Exit On Demand No Viewer
    2022-12-16 10:05:54.756 DEBUG (webrtc) [custom_components.webrtc.utils] 2022/12/16 10:05:54 Stream Exit On Demand No Viewer
    2022-12-16 10:05:54.757 DEBUG (webrtc) [custom_components.webrtc.utils] 2022/12/16 10:05:54 Stream Exit On Demand No Viewer
    2022-12-16 10:06:08.389 DEBUG (webrtc) [custom_components.webrtc.utils] 2022/12/16 10:06:08 websocket.JSON.Receive EOF
    2022-12-16 10:06:08.390 DEBUG (webrtc) [custom_components.webrtc.utils] [GIN] 2022/12/16 - 10:06:08 | 200 | 55.530241761s | 127.0.0.1 | GET "/ws?url=rtsp://xxxxx:[email protected]:554/cam/realmonitor?channel%3D6%26subtype%3D0"
    2022-12-16 10:06:08.399 DEBUG (webrtc) [custom_components.webrtc.utils] 2022/12/16 10:06:08 websocket.JSON.Receive EOF
    2022-12-16 10:06:08.400 DEBUG (webrtc) [custom_components.webrtc.utils] [GIN] 2022/12/16 - 10:06:08 | 200 | 55.539636039s | 127.0.0.1 | GET "/ws?url=rtsp://xxxxx:[email protected]:554/cam/realmonitor?channel%3D8%26subtype%3D0"
    2022-12-16 10:06:08.401 DEBUG (webrtc) [custom_components.webrtc.utils] 2022/12/16 10:06:08 websocket.JSON.Receive EOF
    2022-12-16 10:06:08.402 DEBUG (webrtc) [custom_components.webrtc.utils] [GIN] 2022/12/16 - 10:06:08 | 200 | 55.536878279s | 127.0.0.1 | GET "/ws?url=rtsp://xxxxx:[email protected]:554/cam/realmonitor?channel%3D12%26subtype%3D0"
    2022-12-16 10:06:08.402 DEBUG (webrtc) [custom_components.webrtc.utils] 2022/12/16 10:06:08 websocket.JSON.Receive EOF
    2022-12-16 10:06:08.403 DEBUG (webrtc) [custom_components.webrtc.utils] [GIN] 2022/12/16 - 10:06:08 | 200 | 55.563622773s | 127.0.0.1 | GET "/ws?url=rtsp://xxxxx:[email protected]:554/cam/realmonitor?channel%3D2%26subtype%3D0"
    2022-12-16 10:06:08.407 DEBUG (webrtc) [custom_components.webrtc.utils] 2022/12/16 10:06:08 websocket.JSON.Receive EOF
    2022-12-16 10:06:08.408 DEBUG (webrtc) [custom_components.webrtc.utils] [GIN] 2022/12/16 - 10:06:08 | 200 | 55.568271473s | 127.0.0.1 | GET "/ws?url=rtsp://xxxxx:[email protected]:554/cam/realmonitor?channel%3D1%26subtype%3D0"
    2022-12-16 10:06:08.409 DEBUG (webrtc) [custom_components.webrtc.utils] 2022/12/16 10:06:08 websocket.JSON.Receive EOF
    2022-12-16 10:06:08.409 DEBUG (webrtc) [custom_components.webrtc.utils] [GIN] 2022/12/16 - 10:06:08 | 200 | 55.543820223s | 127.0.0.1 | GET "/ws?url=rtsp://xxxxx:[email protected]:554/cam/realmonitor?channel%3D2%26subtype%3D0"
    2022-12-16 10:06:08.960 DEBUG (webrtc) [custom_components.webrtc.utils] 2022/12/16 10:06:08 Stream Try Connect rtsp://xxxxx:[email protected]:554/cam/realmonitor?channel=2&subtype=0
    2022-12-16 10:06:08.961 DEBUG (webrtc) [custom_components.webrtc.utils] 2022/12/16 10:06:08 Stream Try Connect rtsp://xxxxx:[email protected]:554/cam/realmonitor?channel=1&subtype=0
    2022-12-16 10:06:08.991 DEBUG (webrtc) [custom_components.webrtc.utils] 2022/12/16 10:06:08 Stream Try Connect rtsp://xxxxx:[email protected]:554/cam/realmonitor?channel=6&subtype=0
    2022-12-16 10:06:08.991 DEBUG (webrtc) [custom_components.webrtc.utils] 2022/12/16 10:06:08 Stream Try Connect rtsp://xxxxx:[email protected]:554/cam/realmonitor?channel=8&subtype=0
    2022-12-16 10:06:08.996 DEBUG (webrtc) [custom_components.webrtc.utils] 2022/12/16 10:06:08 Stream Try Connect rtsp://xxxxx:[email protected]:554/cam/realmonitor?channel=12&subtype=0
    2022-12-16 10:06:09.119 DEBUG (webrtc) [custom_components.webrtc.utils] 2022/12/16 10:06:09 Set ICEServers [stun:stun.l.google.com:19302]
    2022-12-16 10:06:09.120 DEBUG (webrtc) [custom_components.webrtc.utils] 2022/12/16 10:06:09 Set UDP ports to 50000 .. 50240
    2022-12-16 10:06:09.120 DEBUG (webrtc) [custom_components.webrtc.utils] 2022/12/16 10:06:09 Set ICEServers [stun:stun.l.google.com:19302]
    2022-12-16 10:06:09.120 DEBUG (webrtc) [custom_components.webrtc.utils] 2022/12/16 10:06:09 Set UDP ports to 50000 .. 50240
    2022-12-16 10:06:09.127 DEBUG (webrtc) [custom_components.webrtc.utils] 2022/12/16 10:06:09 Set ICEServers [stun:stun.l.google.com:19302]
    2022-12-16 10:06:09.127 DEBUG (webrtc) [custom_components.webrtc.utils] 2022/12/16 10:06:09 Set UDP ports to 50000 .. 50240
    2022-12-16 10:06:09.131 DEBUG (webrtc) [custom_components.webrtc.utils] 2022/12/16 10:06:09 Set ICEServers [stun:stun.l.google.com:19302]
    2022-12-16 10:06:09.138 DEBUG (webrtc) [custom_components.webrtc.utils] 2022/12/16 10:06:09 Set UDP ports to 50000 .. 50240
    2022-12-16 10:06:09.142 DEBUG (webrtc) [custom_components.webrtc.utils] 2022/12/16 10:06:09 Set ICEServers [stun:stun.l.google.com:19302]
    2022-12-16 10:06:09.143 DEBUG (webrtc) [custom_components.webrtc.utils] 2022/12/16 10:06:09 Set UDP ports to 50000 .. 50240
    2022-12-16 10:06:09.146 DEBUG (webrtc) [custom_components.webrtc.utils] 2022/12/16 10:06:09 Set ICEServers [stun:stun.l.google.com:19302]
    2022-12-16 10:06:09.146 DEBUG (webrtc) [custom_components.webrtc.utils] 2022/12/16 10:06:09 Set UDP ports to 50000 .. 50240
    2022-12-16 10:06:09.147 DEBUG (webrtc) [custom_components.webrtc.utils] 2022/12/16 10:06:09 Set ICEServers [stun:stun.l.google.com:19302]
    2022-12-16 10:06:09.147 DEBUG (webrtc) [custom_components.webrtc.utils] 2022/12/16 10:06:09 Set UDP ports to 50000 .. 50240
    2022-12-16 10:06:09.147 DEBUG (webrtc) [custom_components.webrtc.utils] 2022/12/16 10:06:09 Set ICEServers [stun:stun.l.google.com:19302]
    2022-12-16 10:06:09.147 DEBUG (webrtc) [custom_components.webrtc.utils] 2022/12/16 10:06:09 Set UDP ports to 50000 .. 50240
    2022-12-16 10:06:09.153 DEBUG (webrtc) [custom_components.webrtc.utils] 2022/12/16 10:06:09 Set ICEServers [stun:stun.l.google.com:19302]
    2022-12-16 10:06:09.153 DEBUG (webrtc) [custom_components.webrtc.utils] 2022/12/16 10:06:09 Set UDP ports to 50000 .. 50240
    2022-12-16 10:06:09.153 DEBUG (webrtc) [custom_components.webrtc.utils] 2022/12/16 10:06:09 Set ICEServers [stun:stun.l.google.com:19302]
    2022-12-16 10:06:09.153 DEBUG (webrtc) [custom_components.webrtc.utils] 2022/12/16 10:06:09 Set UDP ports to 50000 .. 50240
    2022-12-16 10:06:09.157 DEBUG (webrtc) [custom_components.webrtc.utils] 2022/12/16 10:06:09 Set ICEServers [stun:stun.l.google.com:19302]
    2022-12-16 10:06:09.158 DEBUG (webrtc) [custom_components.webrtc.utils] 2022/12/16 10:06:09 Set UDP ports to 50000 .. 50240
    2022-12-16 10:06:09.158 DEBUG (webrtc) [custom_components.webrtc.utils] 2022/12/16 10:06:09 Set ICEServers [stun:stun.l.google.com:19302]
    2022-12-16 10:06:09.159 DEBUG (webrtc) [custom_components.webrtc.utils] 2022/12/16 10:06:09 Set UDP ports to 50000 .. 50240
    2022-12-16 10:06:09.451 DEBUG (webrtc) [custom_components.webrtc.utils] 2022/12/16 10:06:09 websocket.JSON.Receive EOF
    2022-12-16 10:06:09.452 DEBUG (webrtc) [custom_components.webrtc.utils] [GIN] 2022/12/16 - 10:06:09 | 200 | 439.429463ms | 127.0.0.1 | GET "/ws?url=rtsp://xxxxx:[email protected]:554/cam/realmonitor?channel%3D4%26subtype%3D0"
    2022-12-16 10:06:09.560 DEBUG (webrtc) [custom_components.webrtc.utils] 2022/12/16 10:06:09 websocket.JSON.Receive EOF
    2022-12-16 10:06:09.561 DEBUG (webrtc) [custom_components.webrtc.utils] [GIN] 2022/12/16 - 10:06:09 | 200 | 543.759599ms | 127.0.0.1 | GET "/ws?url=rtsp://xxxxx:[email protected]:554/cam/realmonitor?channel%3D9%26subtype%3D0"
    2022-12-16 10:06:09.759 DEBUG (webrtc) [custom_components.webrtc.utils] 2022/12/16 10:06:09 websocket.JSON.Receive EOF
    2022-12-16 10:06:09.760 DEBUG (webrtc) [custom_components.webrtc.utils] [GIN] 2022/12/16 - 10:06:09 | 200 | 748.18406ms | 127.0.0.1 | GET "/ws?url=rtsp://xxxxx:[email protected]:554/cam/realmonitor?channel%3D3%26subtype%3D0"
    2022-12-16 10:06:10.288 DEBUG (webrtc) [custom_components.webrtc.utils] 2022/12/16 10:06:10 websocket.JSON.Receive EOF
    2022-12-16 10:06:10.291 DEBUG (webrtc) [custom_components.webrtc.utils] [GIN] 2022/12/16 - 10:06:10 | 200 | 1.279658824s | 127.0.0.1 | GET "/ws?url=rtsp://xxxxx:[email protected]:554/cam/realmonitor?channel%3D10%26subtype%3D0"
    2022-12-16 10:06:10.356 DEBUG (webrtc) [custom_components.webrtc.utils] 2022/12/16 10:06:10 websocket.JSON.Receive EOF
    2022-12-16 10:06:10.357 DEBUG (webrtc) [custom_components.webrtc.utils] [GIN] 2022/12/16 - 10:06:10 | 200 | 1.341265755s | 127.0.0.1 | GET "/ws?url=rtsp://xxxxx:[email protected]:554/cam/realmonitor?channel%3D11%26subtype%3D0"
    2022-12-16 10:06:10.389 DEBUG (webrtc) [custom_components.webrtc.utils] 2022/12/16 10:06:10 websocket.JSON.Receive EOF
    2022-12-16 10:06:10.390 DEBUG (webrtc) [custom_components.webrtc.utils] [GIN] 2022/12/16 - 10:06:10 | 200 | 1.380765642s | 127.0.0.1 | GET "/ws?url=rtsp://xxxxx:[email protected]:554/cam/realmonitor?channel%3D7%26subtype%3D0"
    2022-12-16 10:06:10.546 DEBUG (webrtc) [custom_components.webrtc.utils] 2022/12/16 10:06:10 websocket.JSON.Receive EOF
    2022-12-16 10:06:10.548 DEBUG (webrtc) [custom_components.webrtc.utils] [GIN] 2022/12/16 - 10:06:10 | 200 | 1.550629134s | 127.0.0.1 | GET "/ws?url=rtsp://xxxxx:[email protected]:554/cam/realmonitor?channel%3D12%26subtype%3D0"
    2022-12-16 10:06:10.616 DEBUG (webrtc) [custom_components.webrtc.utils] 2022/12/16 10:06:10 websocket.JSON.Receive EOF
    2022-12-16 10:06:10.617 DEBUG (webrtc) [custom_components.webrtc.utils] [GIN] 2022/12/16 - 10:06:10 | 200 | 1.625962949s | 127.0.0.1 | GET "/ws?url=rtsp://xxxxx:[email protected]:554/cam/realmonitor?channel%3D8%26subtype%3D0"
    2022-12-16 10:06:13.928 DEBUG (webrtc) [custom_components.webrtc.utils] 2022/12/16 10:06:13 muxerWebRTC.WritePacket WebRTC Client Offline
    2022-12-16 10:06:13.937 DEBUG (webrtc) [custom_components.webrtc.utils] 2022/12/16 10:06:13 muxerWebRTC.WritePacket WebRTC Client Offline
    2022-12-16 10:06:13.941 DEBUG (webrtc) [custom_components.webrtc.utils] 2022/12/16 10:06:13 muxerWebRTC.WritePacket WebRTC Client Offline
    2022-12-16 10:06:13.947 DEBUG (webrtc) [custom_components.webrtc.utils] 2022/12/16 10:06:13 muxerWebRTC.WritePacket WebRTC Client Offline
    2022-12-16 10:06:13.948 DEBUG (webrtc) [custom_components.webrtc.utils] 2022/12/16 10:06:13 muxerWebRTC.WritePacket WebRTC Client Offline
    2022-12-16 10:06:13.957 DEBUG (webrtc) [custom_components.webrtc.utils] 2022/12/16 10:06:13 muxerWebRTC.WritePacket WebRTC Client Offline
    2022-12-16 10:06:24.493 DEBUG (webrtc) [custom_components.webrtc.utils] 2022/12/16 10:06:24 Set ICEServers [stun:stun.l.google.com:19302]
    2022-12-16 10:06:24.494 DEBUG (webrtc) [custom_components.webrtc.utils] 2022/12/16 10:06:24 Set UDP ports to 50000 .. 50240
    2022-12-16 10:06:24.497 DEBUG (webrtc) [custom_components.webrtc.utils] 2022/12/16 10:06:24 Set ICEServers [stun:stun.l.google.com:19302]
    2022-12-16 10:06:24.497 DEBUG (webrtc) [custom_components.webrtc.utils] 2022/12/16 10:06:24 Set UDP ports to 50000 .. 50240
    2022-12-16 10:06:24.521 DEBUG (webrtc) [custom_components.webrtc.utils] 2022/12/16 10:06:24 websocket.JSON.Send write tcp 127.0.0.1:8083->127.0.0.1:51574: i/o timeout
    2022-12-16 10:06:24.530 DEBUG (webrtc) [custom_components.webrtc.utils] 2022/12/16 10:06:24 websocket.JSON.Send write tcp 127.0.0.1:8083->127.0.0.1:51558: i/o timeout
    2022-12-16 10:06:24.685 DEBUG (webrtc) [custom_components.webrtc.utils] 2022/12/16 10:06:24 Set ICEServers [stun:stun.l.google.com:19302]
    2022-12-16 10:06:24.687 DEBUG (webrtc) [custom_components.webrtc.utils] 2022/12/16 10:06:24 Set UDP ports to 50000 .. 50240
    2022-12-16 10:06:24.687 DEBUG (webrtc) [custom_components.webrtc.utils] 2022/12/16 10:06:24 Set ICEServers [stun:stun.l.google.com:19302]
    2022-12-16 10:06:24.687 DEBUG (webrtc) [custom_components.webrtc.utils] 2022/12/16 10:06:24 Set UDP ports to 50000 .. 50240
    2022-12-16 10:06:24.706 DEBUG (webrtc) [custom_components.webrtc.utils] 2022/12/16 10:06:24 websocket.JSON.Send write tcp 127.0.0.1:8083->127.0.0.1:51614: i/o timeout
    2022-12-16 10:06:24.714 DEBUG (webrtc) [custom_components.webrtc.utils] 2022/12/16 10:06:24 websocket.JSON.Send write tcp 127.0.0.1:8083->127.0.0.1:51588: i/o timeout
    2022-12-16 10:06:39.252 DEBUG (webrtc) [custom_components.webrtc.utils] 2022/12/16 10:06:39 muxerWebRTC.WritePacket WebRTC Client Offline
    2022-12-16 10:06:39.270 DEBUG (webrtc) [custom_components.webrtc.utils] 2022/12/16 10:06:39 muxerWebRTC.WritePacket WebRTC Client Offline
    2022-12-16 10:06:39.308 DEBUG (webrtc) [custom_components.webrtc.utils] 2022/12/16 10:06:39 muxerWebRTC.WritePacket WebRTC Client Offline
    2022-12-16 10:06:39.318 DEBUG (webrtc) [custom_components.webrtc.utils] 2022/12/16 10:06:39 muxerWebRTC.WritePacket WebRTC Client Offline
    2022-12-16 10:06:48.961 DEBUG (webrtc) [custom_components.webrtc.utils] 2022/12/16 10:06:48 Stream Exit On Demand No Viewer
    2022-12-16 10:06:48.962 DEBUG (webrtc) [custom_components.webrtc.utils] 2022/12/16 10:06:48 Stream Exit On Demand No Viewer
    2022-12-16 10:06:48.962 DEBUG (webrtc) [custom_components.webrtc.utils] 2022/12/16 10:06:48 Stream Exit On Demand No Viewer
    2022-12-16 10:06:48.962 DEBUG (webrtc) [custom_components.webrtc.utils] 2022/12/16 10:06:48 Stream Exit On Demand No Viewer
    2022-12-16 10:06:48.991 DEBUG (webrtc) [custom_components.webrtc.utils] 2022/12/16 10:06:48 Stream Exit On Demand No Viewer
    2022-12-16 10:06:48.992 DEBUG (webrtc) [custom_components.webrtc.utils] 2022/12/16 10:06:48 Stream Exit On Demand No Viewer
    2022-12-16 10:06:57.283 DEBUG (webrtc) [custom_components.webrtc.utils] 2022/12/16 10:06:57 Set ICEServers [stun:stun.l.google.com:19302]
    2022-12-16 10:06:57.284 DEBUG (webrtc) [custom_components.webrtc.utils] 2022/12/16 10:06:57 Set UDP ports to 50000 .. 50240
    2022-12-16 10:06:57.285 DEBUG (webrtc) [custom_components.webrtc.utils] 2022/12/16 10:06:57 Set ICEServers [stun:stun.l.google.com:19302]
    2022-12-16 10:06:57.285 DEBUG (webrtc) [custom_components.webrtc.utils] 2022/12/16 10:06:57 Set UDP ports to 50000 .. 50240
    2022-12-16 10:06:57.289 DEBUG (webrtc) [custom_components.webrtc.utils] 2022/12/16 10:06:57 Set ICEServers [stun:stun.l.google.com:19302]
    2022-12-16 10:06:57.289 DEBUG (webrtc) [custom_components.webrtc.utils] 2022/12/16 10:06:57 Set UDP ports to 50000 .. 50240
    2022-12-16 10:06:57.290 DEBUG (webrtc) [custom_components.webrtc.utils] 2022/12/16 10:06:57 Set ICEServers [stun:stun.l.google.com:19302]
    2022-12-16 10:06:57.290 DEBUG (webrtc) [custom_components.webrtc.utils] 2022/12/16 10:06:57 Set UDP ports to 50000 .. 50240
    2022-12-16 10:06:57.310 DEBUG (webrtc) [custom_components.webrtc.utils] 2022/12/16 10:06:57 websocket.JSON.Send write tcp 127.0.0.1:8083->127.0.0.1:51558: i/o timeout
    2022-12-16 10:06:57.311 DEBUG (webrtc) [custom_components.webrtc.utils] 2022/12/16 10:06:57 websocket.JSON.Send write tcp 127.0.0.1:8083->127.0.0.1:51574: i/o timeout
    2022-12-16 10:06:57.317 DEBUG (webrtc) [custom_components.webrtc.utils] 2022/12/16 10:06:57 websocket.JSON.Send write tcp 127.0.0.1:8083->127.0.0.1:51614: i/o timeout
    2022-12-16 10:06:57.318 DEBUG (webrtc) [custom_components.webrtc.utils] 2022/12/16 10:06:57 websocket.JSON.Send write tcp 127.0.0.1:8083->127.0.0.1:51588: i/o timeout
    
    question 
    opened by PablaV 3
  • i'm getting always restart connection

    i'm getting always restart connection

    image

    until a few days ago everything was working correctly, now it keeps restarting connection, even the video demo bunny does the same thing, I checked the rtsp stream on vlc and it works. Any suggestions?

    go2rtc 
    opened by morpheus8888 4
Releases(v3.0-beta.3)
  • v3.0-beta.3(Jan 3, 2023)

  • v3.0-beta.2(Jan 2, 2023)

  • v3.0-beta.1(Jan 2, 2023)

  • v2.3.1(Jul 13, 2022)

  • v2.3.0(Apr 10, 2022)

    • Adds support for positioning shortcuts #214 @dmamontov
    • Adds a home button for PTZ #220 @SheaSmith
    • Adds RTSPS urls to be used #208 @jimcortez
    • Adds Italian translation #205 @roleoroleo
    • Add Brazilian Portuguese translation #247 @LeandroIssa
    • Add Catalan translation #277 @dtalens
    • Adds more cameras to readme #219 #229 #231 #261
    • Fix shortcuts #245 @dmamontov
    • Fix custom UI buttons when on a touch screen device #218 @SheaSmith
    • Fix background: black ha-card style #213 @amitkeret
    Source code(tar.gz)
    Source code(zip)
  • v2.2.0(Dec 14, 2021)

    • Adds Unsupported browser error to macOS app
    • Adds supports custom shortcuts #169 #172
    • Fix Hass v2021.12.0 support @Mincka #156 #175 #178 #179 #182 #184 #185 #186 #187 #188 #189 #191 #192 #193 #194 #197 #198 #199 #200 #202 #204
    • Fix PTZ control @Sian-Lee-SA #115 #183 #105
    • Fix appendBuffer errors in logs #120
    • Fix old iOS
    Source code(tar.gz)
    Source code(zip)
  • v2.1.1(Jun 16, 2021)

  • v2.1.0(Jun 7, 2021)

  • v2.0.2(May 6, 2021)

    • Added muted card config option (control default stream sound)
    • Added icons description to readme
    • Support ice_servers card config option (for users with private IP-address and own VPS server)
    • Improved resource usage when reconnecting
    • Improved reconnection delay
    • Fix WebRTC connection delay
    • Fix fullscreen for 4:3 with custom UI
    • Fix card black background on fullscreen with custom UI
    • Return the REST API for WebRTC SDP exchange for DIY
    Source code(tar.gz)
    Source code(zip)
  • v2.0.1(May 4, 2021)

  • v2.0.0(May 4, 2021)

    Starting with version 2 the component supports two protocols automatically and simultaneously. WebRTC in some cases may not work with remote access, then the video will play using MSE. As soon as WebRTC is able to connect - video will play through it, MSE will be stopped.

    Read the technology comparison in the readme.

    You can disable WebRTC for some cameras and leave only MSE.

    Source code(tar.gz)
    Source code(zip)
  • v1.4.0(Apr 28, 2021)

    Main

    • Added PTZ control buttons (read more) @webcredo
    • Support Google Cast to Chromecast, Android TV and Google Smart Screen (read more) #9
    • Support creating a temporary or permanent link to a stream (read more) #34

    Other

    • Support Amlogic S905 as a server #18
    • Fix Lovelace 'Uncaught Error' #30
    • Fix Safari @iswitch
    Source code(tar.gz)
    Source code(zip)
  • v1.3.0(Apr 22, 2021)

    Main

    • Added RTSP stream errors to the card header
    • Fixed stream stopping if no one is watching #23
    • Fixed audio playback for some cameras
    • Fixed problems with lovelace card caching

    Other

    • Added card default height
    • Added error handling when getting url for entity
    • Fixed stream playback on connection restart
    • Fixed isOpera check (browser Opera doesn't supported)
    Source code(tar.gz)
    Source code(zip)
  • v1.2.0(Apr 19, 2021)

    • Added connection status to the header
    • Added option to use entity instead of url
    • Added optional custom GUI @Anonym-tsk
    • Added optional title to the header #17
    • Changed default port range to 0-0
    • Fixed some problems with Safari #19
    type: 'custom:webrtc-camera'
    entity: camera.generic_stream  # change to your camera entity_id
    title: My super camera
    ui: true  # custom video controls, default false
    

    PS. If you have previously configured UDP ports - it is recommended to set their range 0-0 and disable port forwarding on the router. Ports should be changed only if you are experiencing problems with the connection.

    Source code(tar.gz)
    Source code(zip)
  • v1.1.1(Apr 16, 2021)

  • v1.1.0(Apr 14, 2021)

    Main

    Support external access for private IP-address and without port forwarding in some cases @Anonym-tsk

    Other

    • Add auto play and auto pause stream @krystiancharubin
    • Add video poster support @krystiancharubin
    • Add Firefox auto-detection #13 @devbis
    • Add REST API /api/webrtc/stream for DIY
    • Add support Hass on Mac OS #5
    Source code(tar.gz)
    Source code(zip)
  • v1.0.5(Apr 13, 2021)

    • Fix support some mobile phones and tablets
    • Drop support Firefox by default
    type: 'custom:webrtc-camera'
    url: 'rtsp://rtsp:[email protected]:554/av_stream/ch0'
    firefox: true  # enable Firefox support, but breaks support some mobile phones, disabled by default
    
    Source code(tar.gz)
    Source code(zip)
  • v1.0.4(Apr 13, 2021)

  • v1.0.3(Apr 12, 2021)

    • Support video and audio in a single player #3
    • Auto server restart in case of problems
    • Check URL for wrong symbols #2
    • Fix occupied 8083 port
    • Fix iOS auto fullscreen
    Source code(tar.gz)
    Source code(zip)
  • v1.0.2(Apr 12, 2021)

    • Add support disable audio option
    • Fix Firefox support
    type: 'custom:webrtc-camera'
    url: 'rtsp://rtsp:[email protected]:554/av_stream/ch0'
    audio: false  # disable audio for stream, enabled by default
    

    PS: You may need to clear your browser cache to update

    Source code(tar.gz)
    Source code(zip)
  • v1.0.1(Apr 11, 2021)

  • v1.0.0(Apr 11, 2021)

Owner
Alex X
Lok’tar Ogar
Alex X
Synchronize Two Cameras in Real Time using Multiprocessing

Synchronize Two Cameras in Real Time using Multiprocessing In progress ... 📁 Project Structure 📚 Install Libraries for this Project (requirements.tx

Eduardo Carvalho Nunes 2 Oct 31, 2021
Python program - to extract slides from videos

Programa em Python - que fiz em algumas horas e que provavelmente tem bugs - para extrair slides de vídeos.

Natanael Antonioli 45 Nov 12, 2022
Python Simple Mass Video Clipper (PSMVC)

Python Simple Mass Video Clipper (PSMVC) PSMVC é um gerador de cortes via terminal construído em python. Uso Basta abrir o arquivo start.py Dependenci

Bruno 2 Oct 16, 2021
Repository to create Ascii art in CMD based on video file.

Made to take any file format, and transform it into ascii art, displayed as a video in the cmd. If the cmd formatting is wrong, try zooming a little and remember to make cmd fullscreen. I made my cmd

60 Dec 17, 2022
LL-HLS implementation written in Python3

biim mpegts stream to Apple Low Latency HLS Feature mpegts demuxing in pure python3 (using asyncio) mpegts stream to fragmented ts use piping from ffm

もにょ~ん 15 Jan 03, 2023
Use ZWO astronomy camera as an IP camera.

ZWO Astronomy Camera as IP Camera Astronomy cameras are known for their high sensitivity and flexibility on whether to have IR pass through and bayer

Yan Wang 9 Oct 15, 2022
deepstream python rtsp video h264 or gstreamer python rtsp h264 | h264

deepstream python rtsp video h264 or gstreamer python rtsp h264 | h264 deepstrea

Small white Tang 6 Dec 14, 2022
Program to play videos with props in Apex Legends

R5Fresh A video player for the Apex Legends mod R5Reloaded

9 Nov 13, 2022
Convert lecture videos to slides in one line. Takes an input of a directory containing your lecture videos and outputs a directory containing .PDF files containing the slides of each lecture.

Convert lecture videos to slides in one line. Takes an input of a directory containing your lecture videos and outputs a directory containing .PDF files containing the slides of each lecture.

Sidharth Anand 12 Sep 10, 2022
Скрипт который выводит видео в консоль. Ничего лишнего)

video-to-ascii Скрипт который выводит видео в консоль. Ничего лишнего) Требования Минимальное разрешение экрана: 1280x720 Видео в качестве 360p 10-45f

Daniil Pisarev 155 Nov 28, 2022
Filtering user-generated video content(SberZvukTechDays)Filtering user-generated video content(SberZvukTechDays)

Filtering user-generated video content(SberZvukTechDays) Table of contents General info Team members Technologies Setup Result General info This is a

Roman 6 Apr 06, 2022
This will help you study and avoid moving mouse coz u dont need mouse for watching youtube videos

This will help you study and avoid moving mouse coz u dont need mouse for watching youtube videos. Neither u need it for pdfs just use your keyboard

KorryKatti 5 Jan 07, 2022
A platform which give you info about the newest video on a channel

youtube A platform which give you info about the newest video on a channel. This uses web scraping, a better implementation will be to use the API. BR

Custom components for Home Assistant 36 Sep 29, 2022
Video stream image stacking -- live version

video stream image stacking v2 -- live version A very simple streamed video image stacking code! Version 2.1 left mouse click to select a small region

Chakravarthy Mathiazhagan 1 Jan 03, 2022
Techie Sneh 17 Nov 23, 2021
TkVideoplayer - This is a simple library to play video files in tkinter.

TkVideoplayer - This is a simple library to play video files in tkinter.

Art/Paul 38 Dec 23, 2022
Automatic video generator for local news

Automatic video generator for local news

Gabriel Monteiro 2 Jan 11, 2022
Script simples para baixar vídeos/áudios/playlist do YouTube

🔗 VilelaTube ▶️ Script simples para baixar vídeos/áudios/playlist do YouTube Requisitos • Como usar • Melhorias futuras ⚠️ Atenção! ⚠️ Lembre-se de a

João Victor Vilela dos Santos 2 Nov 03, 2021
A simple Python Youtube Wachtime for YTbebot

Simple bot that was development in python 3.7, that automatically watch youtube videos. It can be used to give more views in your channel helping in the spread and increase the followers because your

Rian eka wiratma 1 Dec 05, 2021
Examples of usage of GStreamer hlssink3 plugin.

Examples of usage of GStreamer hlssink3 plugin.

Rafael Carício 2 Aug 03, 2022