GithubHelp home page GithubHelp logo

alexxit / hassio-addons Goto Github PK

View Code? Open in Web Editor NEW
82.0 9.0 16.0 1.58 MB

Hass.io addons: go2rtc and SSH Tunnel

Home Page: https://www.youtube.com/c/AlexxIT

Dockerfile 11.11% Shell 88.89%
home-assistant home-assistant-addons

hassio-addons's Introduction

AlexxIT Hass.io addons

  • go2rtc - Ultimate camera streaming application
  • SSH Tunnel - external access to Hass via VPS server tunnel

Install

You must using Hass.io - supervised Home Assistant version with addon support.

Add addon repository

https://github.com/AlexxIT/hassio-addons

Install addon

Config addon

hassio-addons's People

Contributors

alexxit avatar denisemenov avatar felipecrs avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

hassio-addons's Issues

SUGGESTION: Disable host network

Hey @AlexxIT

I've just set-up the addon as a workaround to an issue with Bambu's X1C printer; however, I am wondering if there's a specific need for the add-on to use host networking.

Currently, all go2rtc ports are available on the IP of my Home Assistant instance with insecure access over the network.
Not only that, when adding an RTSP camera integration, you have to specify the host name/IP of the host HA runs on.

If host networking was disabled, one could then utilize the addon_a889bffc_go2rtc:8554 hostname to connect internally to the docker container's IP address (eliminating the dependency on the hostname/IP) and optionally, expose the ports to outside the host if needed (which in my case wouldn't be, especially that the web UI is supported by HA ingress).

I think this approach would be more secure without breaking any functionality (unless broadcasts are needed) - perhaps a separate addon could be made available?

Thanks

Failed to install addon

The command '/bin/ash -o pipefail -c apk add --no-cache unzip go jq' returned a non-zero code: 2

Logs:

21-01-30 19:31:01 INFO (SyncWorker_5) [supervisor.docker.addon] Starting build for 1d3934f5/armv7-addon-rtsp2webrtc:0.1.4
21-01-30 19:31:09 ERROR (SyncWorker_5) [supervisor.docker.addon] Can't build 1d3934f5/armv7-addon-rtsp2webrtc:0.1.4: The command '/bin/ash -o pipefail -c apk add --no-cache unzip go jq' returned a non-zero code: 2
21-01-30 19:31:09 ERROR (SyncWorker_5) [supervisor.docker.addon] Build log:
Step 1/15 : ARG BUILD_FROM
Step 2/15 : FROM $BUILD_FROM
---> 499528b366b0
Step 3/15 : RUN apk add --no-cache unzip go jq
---> Running in 1125292e7677
fetch https://dl-cdn.alpinelinux.org/alpine/v3.13/main/armv7/APKINDEX.tar.gz
WARNING: Ignoring https://dl-cdn.alpinelinux.org/alpine/v3.13/main: temporary error (try again later)

fetch https://dl-cdn.alpinelinux.org/alpine/v3.13/community/armv7/APKINDEX.tar.gz
WARNING: Ignoring https://dl-cdn.alpinelinux.org/alpine/v3.13/community: temporary error (try again later)
ERROR: unable to select packages:

go (no such package):
required by: world[go]
unzip (no such package):
required by: world[unzip]
Removing intermediate container 1125292e7677

Version 2021.1.5
Installation Type Home Assistant Supervised
Development false
Supervisor true
Docker true
Virtual Environment false
Python Version 3.8.7
Operating System Family Linux
Operating System Version 5.4.83-v7+
CPU Architecture armv7l

hassio-addons: missing radeonsi_drv_video.so driver, need mesa-va-drivers package

on AMD APU's, the package mesa-va-drivers is required to support hardware acceleration. Installing this package into the docker container, installs /usr/lib/x86_64-linux-gnu/dri/radeonsi_drv_video.so allowing acceleration to work:

root@a889bffc-go2rtc-master-hw:~# vainfo
error: XDG_RUNTIME_DIR is invalid or not set in the environment.
error: can't connect to X server!
libva info: VA-API version 1.17.0
libva info: Trying to open /usr/lib/x86_64-linux-gnu/dri/radeonsi_drv_video.so
libva info: Found init function __vaDriverInit_1_17
libva info: va_openDriver() returns 0
vainfo: VA-API version: 1.17 (libva 2.12.0)
vainfo: Driver version: Mesa Gallium driver 22.3.6 for AMD Radeon Graphics (renoir, LLVM 15.0.6, DRM 3.49, 6.1.0-17-amd64)
vainfo: Supported profile and entrypoints
      VAProfileMPEG2Simple            :	VAEntrypointVLD
      VAProfileMPEG2Main              :	VAEntrypointVLD
      VAProfileVC1Simple              :	VAEntrypointVLD
      VAProfileVC1Main                :	VAEntrypointVLD
      VAProfileVC1Advanced            :	VAEntrypointVLD
      VAProfileH264ConstrainedBaseline:	VAEntrypointVLD
      VAProfileH264ConstrainedBaseline:	VAEntrypointEncSlice
      VAProfileH264Main               :	VAEntrypointVLD
      VAProfileH264Main               :	VAEntrypointEncSlice
      VAProfileH264High               :	VAEntrypointVLD
      VAProfileH264High               :	VAEntrypointEncSlice
      VAProfileHEVCMain               :	VAEntrypointVLD
      VAProfileHEVCMain               :	VAEntrypointEncSlice
      VAProfileHEVCMain10             :	VAEntrypointVLD
      VAProfileHEVCMain10             :	VAEntrypointEncSlice
      VAProfileJPEGBaseline           :	VAEntrypointVLD
      VAProfileVP9Profile0            :	VAEntrypointVLD
      VAProfileVP9Profile2            :	VAEntrypointVLD
      VAProfileNone                   :	VAEntrypointVideoProc

@AlexxIT, is it possible to include this package in the HA-addon, MASTER-HARDWARE by default? thanks!

noise instead of a picture

I have a Reolink E1 Pro. It's notice as compatible. But there is noise instead of a picture. It's working after restart the camera for some time and get fault quick. With VLC I always have correct stream. What the problem it can be?
2021-04-11_11-25-46

Error install RTSP2WebRTC

Failed to install addon
The command '/bin/ash -o pipefail -c apk add --no-cache unzip go jq' returned a non-zero code: 2

FR: expand RTSP2WebRTC webpage to show multiple streams

Thanks for getting this add-on out. In lieu of a JS wizard coming along and hooking us up with a lovelace card, having more than 1 stream shown on the UI at a time would up the use case for sticking with just the UI. Many folks use cameras in HA for tablet views, so quick and dirty at-a-glance overview of all feeds at once is usually ideal.

High CPU Usage

Hi,

Since I use the addon, I'm observed a masive and increasing cpu using. It starts at one determined time each morning and keeps rising until I restart home assistant. Then all be fine until next day.

Here you can see rtsp2webrtc_v4_ cpu use just before restart.

high cpu

Do you have any idea about this?

HA snapshot size

After installing the RTSP2WebRTC add-on, the size of the full snapshot increased by ~150MB !!!
image

Dark theme

Hi, very cool add-on and i realy like low delay.
I can accept switching to another tab to view the cameras, but I don't like the white background. Is there any way to change the background color? It would be extra if you added, for example, a color selection in the configuration, something like bg_color: "# 001433"

Intermittent fails to play

First, I have been highly impressed and satisfied with this plugin. Before this, all options were totally inadequate. Thank you for this!

I have, however, encountered an intermittent failure where the video fails to play (says: no video). In trying to troubleshoot this I encountered the following:

  • Running netstat -l displayed over 900 of the following lines:
    udp 0 0 0.0.0.0:5353 0.0.0.0:*
  • Running lsof -p <pid of rtsp2webrtc> similarly displayed > 900 lines of this:
    rtsp2webr 14132 root 174u IPv4 94851035 0t0 UDP *:mdns

After killing rtsp2webrtc (it restarts automatically), netstat shows only 4 listeners and lsof shows only 2 open fd's.

I don't have any additional data at present, but I can run any additional diagnostics you would like, when it re-occurs.

Please advise...

P.S. I am running HA 2021.12.8
I couldn't find how to display the rtps2webrtv version, but a ps shows rtsp2webrtc_v5_amd64

Error Running Container

Container starts but logs throw an error about the port being taken. It would be great to either be able to configure the port, or have the docker file to cause the container to run on a different port (To be fair, I can't find the conflict :| )

Logs:

[s6-init] making user provided files available at /var/run/s6/etc...exited 0.
[s6-init] ensuring user provided files have correct perms...exited 0.
[fix-attrs.d] applying ownership & permissions fixes...
[fix-attrs.d] done.
[cont-init.d] executing container initialization scripts...
[cont-init.d] done.
[services.d] starting services
[services.d] done.
{
"server": {
"http_port": ":8083"
},
"streams": {
"Sonoff": {
"url": "rtsp://xxxxx:xxxxxx@IPAddress/live"
}
}
}
[GIN-debug] [WARNING] Creating an Engine instance with the Logger and Recovery middleware already attached.
[GIN-debug] [WARNING] Running in "debug" mode. Switch to "release" mode in production.

  • using env: export GIN_MODE=release
  • using code: gin.SetMode(gin.ReleaseMode)
    2022/01/20 14:17:37 Stream Try Connect Sonoff
    [GIN-debug] Loaded HTML Templates (2):

    • index.tmpl
      [GIN-debug] GET / --> main.serveHTTP.func1 (3 handlers)
      [GIN-debug] POST /recive --> main.HTTPAPIServerStreamWebRTC (3 handlers)
      [GIN-debug] GET /codec/:uuid --> main.serveHTTP.func2 (3 handlers)
      [GIN-debug] GET /static/*filepath --> github.com/gin-gonic/gin.(*RouterGroup).createStaticHandler.func1 (3 handlers)
      2022/01/20 14:17:37 Server Start Awaiting Signal
      [GIN-debug] HEAD /static/*filepath --> github.com/gin-gonic/gin.(*RouterGroup).createStaticHandler.func1 (3 handlers)
      [GIN-debug] Listening and serving HTTP on :8083
      [GIN-debug] [ERROR] listen tcp :8083: bind: address already in use
      2022/01/20 14:17:37 Start HTTP Server error listen tcp :8083: bind: address already in use

Can't install the addon

Hi,

Trying to install thew new version, once I click on the install button in the Superviser page it returns back with an error:

Снимок экрана 2021-01-13 в 10 13 25

Logs showing this:

21-01-13 07:09:38 ERROR (SyncWorker_0) [supervisor.docker.addon] Can't build a889bffc/armv7-addon-rtsp2webrtc:0.1.4: The command '/bin/ash -o pipefail -c apk add --no-cache unzip go jq' returned a non-zero code: 2
21-01-13 07:09:38 ERROR (SyncWorker_0) [supervisor.docker.addon] Build log:
Step 1/15 : ARG BUILD_FROM
Step 2/15 : FROM $BUILD_FROM
---> ad4dcc921139
Step 3/15 : RUN apk add --no-cache unzip go jq
---> Running in f6110c83e54e
fetch http://dl-cdn.alpinelinux.org/alpine/v3.12/main/armv7/APKINDEX.tar.gz
WARNING: Ignoring http://dl-cdn.alpinelinux.org/alpine/v3.12/main/armv7/APKINDEX.tar.gz: temporary error (try again later)

Integrate stream as entity

Can you integrate the stream as a entity into HA?
If yes, then it could be the solution to all the problems with cameras we have.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.