Add live video stream support to ring-adapter#5
Conversation
|
Hi there, does this add a video stream property? Does it show the last video from the device? Thanks! |
|
It adds a streaming property and an option to view the current live feed of the camera. The streaming property must be set (Turned on) for the feed to be active. But currently I get an error when viewing the stream. Caused by Shaka player not supporting m3u8. Im looking into creating a PR to switch to HLS.js but struggling to get that to work locally atm. |
|
Hi, did you fix the issue related to this? |
|
Still working on the viewing of the video feed from within webthings @damooooooooooh albeit slowly. Will keep this PR and you posted with progress? |
|
No worries! |
|
Hi this doesnt work for me. Error: Ffmpeg is not installed. How do we bundle the dependency? Also, for my Floodlight camera, the streaming properties are not generated as the data.features object doesn't have the show_vod_settings property...... 2021-08-05 13:57:10.408 INFO : ring-adapter: { motion_zone_recommendation: false, |
|
I have tested this both on my ubuntu dev machine and my raspberry pi running webthings and it does view the camera feed these probably have ffmpeg pre-installed. As the ring-adapted depends on ring-client-api it should download and install ffmpeg-for-homebridge. I get the following message when running With regards the other issue: I only have the ring doorbell and don't own a ring floodlight camera so won't be able to fix that without some assistance. how did you list the ring-adapter properties. Maybe there is a better property we can use than show_vod_settings e.g. show_recordings |
|
What platform do you build on? |
|
I build on an Ubuntu Linux dist and also have a raspberry pi with stock webthings image and checkout the ring addon directly from my fork. I would imagine if you are building on a mac/windows machine that ffmpeg is not installed by default. |
|
Got this working, just replaced the ffmpeg binary with raspbian one. Quick question, will this stream indefinitely and consume disk space? Also, for some reason, my ring floodlight doesnt return hasCamera as true. ring-device.js --> Is this required? |
|
Glad you got it working. yes the stream will auto stop after 5 minutes to conserve data & battery. So isn't that useful to view the stream over longer periods of time. But this could be made configurable in the future for those who want it. As for the ring floodlight unfortunately I do not possess one so am unable to test the properties of this device with the camera but hopefully its interface is similar to that of the doorbells. |
|
Is there anything else that prevents this PR from being merged to master? |
|
No, ive tested it for a few weeks and all good, Ill get things updated on the next day.
Sent from Mail<https://go.microsoft.com/fwlink/?LinkId=550986> for Windows
From: ***@***.***>
Sent: 27 February 2022 16:57
To: ***@***.***>
Cc: ***@***.***>; ***@***.***>
Subject: Re: [damooooooooooh/ring-adapter] Add live video stream support to ring-adapter (#5)
Is there anything else that prevents this PR from being merged to master?
—
Reply to this email directly, view it on GitHub<#5 (comment)>, or unsubscribe<https://github.com/notifications/unsubscribe-auth/AAKDYDRMCRKD4IDMPHWBB4DU5JJZDANCNFSM4ZHI5NOA>.
You are receiving this because you were mentioned.Message ID: ***@***.***>
|
|
Any chance this could be merged yet? I don't have write access. |
|
We need to package this in accordance with the guidelines here with binaries. What platform are you running your version on? linux x64? Im running on arm so the binary differs. The main issue here is around dependencies, ring-api-client has the ffmpeg-for-homebridge as a dependency which in turn has an install script that detects the build platform and includes the relevant ffmpeg binary. This is no good as webthings packages use the sha256 signature so package cannot be modified post install. We need to create a build for each platform supported and build separately |
|
Hi, can you pull my updates and build locally (package.sh). Will now produce linux-x64 package that you should install and test. Please check how the stream property now behaves e.g. the Video property is removed if the stream property is false. |
Use data.settings.enable_vod.
Remove reference to Mozilla IOT platfrom.
Updated build script to handle multiple build for ffmpeg. Altered how the stream property and video property are handled.
|
Appreciate this is nearly 2yrs ago but I've rebased this pull-request and all seems working on my setup. |
|
Hey I'm happy to make you a co-owner as I don't use the platform anymore. |
|
Thanks much appreciated |
|
Thanks. Please let me know when you have enabled write access to the repo
for me as I currently can't merge the PR.
…On Wed, 6 Mar 2024 at 23:41, damooooooooooh ***@***.***> wrote:
Hey I'm happy to make you a co-owner as I don't use the platform anymore.
—
Reply to this email directly, view it on GitHub
<#5 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AICLZJO254KXUWHICEFXEFTYW6SSPAVCNFSM4ZHI5NOKU5DIOJSWCZC7NNSXTN2JONZXKZKDN5WW2ZLOOQ5TCOJYGIYDKMBWGM2A>
.
You are receiving this because you authored the thread.Message ID:
***@***.***>
|
|
Hi what platform are you running on? The lastest ring-api-client (12.1.0) on my side is failing to load, potentially related to ECMAScript2020 on the webthings image. Did you having similar issues? /home/node/.webthings/addons/ring-adapter/node_modules/ring-client-api/lib/api.js:131 SyntaxError: Unexpected token '.' |
|
Yes I downgraded the client in the end as it requires a newer version of
Node to run. I believe Optional chaining (?.) is available from Node.js 14
but raspberry pi webthings image uses Node.js 10 which does not support
this hence the error. I've pinned the library to use ring client 9.18.6 in
the PR. Everything seems to work fine.
I also added the ability to enable automatic recording of dings & motions.
Although there is currently no facility in webthings to view them (Yet) but
they are stored in .webthings/media/ring-doorbell/recordings and
automatically delete after a configurable number of recordings.
…On Fri, 8 Mar 2024, 14:43 damooooooooooh, ***@***.***> wrote:
Hi what platform are you running on? The lastest ring-api-client (12.1.0)
on my side is failing to load, potentially related to ECMAScript2020 on the
webthings image. Did you having similar issues?
/home/node/.webthings/addons/ring-adapter/node_modules/ring-client-api/lib/api.js:131
ERROR : ring-adapter:
devicesById[id]?.processPushNotification(notification);
SyntaxError: Unexpected token '.'
—
Reply to this email directly, view it on GitHub
<#5 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AICLZJIALAJPTH3BUW33BHTYXHFBVAVCNFSM4ZHI5NOKU5DIOJSWCZC7NNSXTN2JONZXKZKDN5WW2ZLOOQ5TCOJYGU4DCNRTGY2A>
.
You are receiving this because you authored the thread.Message ID:
***@***.***>
|
|
I will be issuing a pull request to you PR in the next day. I installed this and noticed few issues with a few of my Ring devices. |


Uses streamVideo function of ring-client-api to start a live HLS stream.
This currently doesn't work using the default video viewer in WebThings due to limitations in the HLS library used.
Have opened this PR to get early feedback.