-
-
Notifications
You must be signed in to change notification settings - Fork 158
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Updated to 12.0 #1305
Comments
Is ffmpeg in the system PATH environment under which Homebridge is run? You can try setting "ffmpegPath" config option explicitly. |
I believe it is done correctly:

<img width="352" alt="Screenshot 2023-08-30 at 1 18 50 PM" src="https://github.com/dgreif/ring/assets/134174708/187aacb1-be4b-4915-8fb7-1e4ea73961c0">
<img width="424" alt="Screenshot 2023-08-30 at 1 18 38 PM" src="https://github.com/dgreif/ring/assets/134174708/3c024aff-20f1-4c2f-84db-0662418e82f4">
… On Aug 30, 2023, at 1:16 PM, tsightler ***@***.***> wrote:
Is ffmpeg in the system PATH environment under which Homebridge is run? You can try setting "ffmpegPath" config option explicitly.
—
Reply to this email directly, view it on GitHub <#1305 (comment)>, or unsubscribe <https://github.com/notifications/unsubscribe-auth/A77VP5HG4DGNYUQULOQG5BTXX5YOVANCNFSM6AAAAAA4EX45AI>.
You are receiving this because you authored the thread.
|
I cannot find the FFMPEGPATH config option. When I tried to add it manually I get a json error.
… On Aug 30, 2023, at 1:16 PM, tsightler ***@***.***> wrote:
Is ffmpeg in the system PATH environment under which Homebridge is run? You can try setting "ffmpegPath" config option explicitly.
—
Reply to this email directly, view it on GitHub <#1305 (comment)>, or unsubscribe <https://github.com/notifications/unsubscribe-auth/A77VP5HG4DGNYUQULOQG5BTXX5YOVANCNFSM6AAAAAA4EX45AI>.
You are receiving this because you authored the thread.
|
I suggest trying to add the ffmpegPath option to the Ring Homebridge config. |
Can you assist on how to do that? There is no option in the GUI and I tried to add it to the JSON config directly under "platform" and I get an error upon saving.
On Wednesday, August 30, 2023 at 02:32:37 PM EDT, tsightler ***@***.***> wrote:
I suggest trying to add the ffmpegPath option to the Ring Homebridge config.
—
Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you authored the thread.Message ID: ***@***.***>
|
It really shouldn't be required, but I'm guessing some weird side effect running on Windows. It should be as simple as adding something like this just before the
I've not personally tested this plugin code on native Windows (the author potentially has but I have not) so I'm guessing a little bit, but as Windows as some unique path handling in node, I wonder if there's something wrong here. |
I was able to add it above platform, as you provided. Thank you.
However, im still getting the error.
I verified that the FFMPEG is installed and path properly with CMD prompt. See below:
ffmpeg version 2023-08-28-git-b5273c619d-full_build-www.gyan.dev Copyright (c) 2000-2023 the FFmpeg developers
built with gcc 12.2.0 (Rev10, Built by MSYS2 project)
configuration: --enable-gpl --enable-version3 --enable-static --disable-w32threads --disable-autodetect --enable-fontconfig --enable-iconv --enable-gnutls --enable-libxml2 --enable-gmp --enable-bzlib --enable-lzma --enable-libsnappy --enable-zlib --enable-librist --enable-libsrt --enable-libssh --enable-libzmq --enable-avisynth --enable-libbluray --enable-libcaca --enable-sdl2 --enable-libaribb24 --enable-libaribcaption --enable-libdav1d --enable-libdavs2 --enable-libuavs3d --enable-libzvbi --enable-librav1e --enable-libsvtav1 --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxavs2 --enable-libxvid --enable-libaom --enable-libjxl --enable-libopenjpeg --enable-libvpx --enable-mediafoundation --enable-libass --enable-frei0r --enable-libfreetype --enable-libfribidi --enable-libharfbuzz --enable-liblensfun --enable-libvidstab --enable-libvmaf --enable-libzimg --enable-amf --enable-cuda-llvm --enable-cuvid --enable-ffnvcodec --enable-nvdec --enable-nvenc --enable-dxva2 --enable-d3d11va --enable-libvpl --enable-libshaderc --enable-vulkan --enable-libplacebo --enable-opencl --enable-libcdio --enable-libgme --enable-libmodplug --enable-libopenmpt --enable-libopencore-amrwb --enable-libmp3lame --enable-libshine --enable-libtheora --enable-libtwolame --enable-libvo-amrwbenc --enable-libcodec2 --enable-libilbc --enable-libgsm --enable-libopencore-amrnb --enable-libopus --enable-libspeex --enable-libvorbis --enable-ladspa --enable-libbs2b --enable-libflite --enable-libmysofa --enable-librubberband --enable-libsoxr --enable-chromaprint
libavutil 58. 17.100 / 58. 17.100
libavcodec 60. 23.100 / 60. 23.100
libavformat 60. 10.101 / 60. 10.101
libavdevice 60. 2.101 / 60. 2.101
libavfilter 9. 11.100 / 9. 11.100
libswscale 7. 3.100 / 7. 3.100
libswresample 4. 11.100 / 4. 11.100
libpostproc 57. 2.100 / 57. 2.100
Hyper fast Audio and Video encoder
usage: ffmpeg [options] [[infile options] -i infile]... {[outfile options] outfile}…
Im concerned I don't have the libfdk_aac library. I installed the latest build from: https://www.gyan.dev/ffmpeg/builds/
And this only started with version 12.0.0 after Dusty made improvements to the audio.
… On Aug 30, 2023, at 3:34 PM, tsightler ***@***.***> wrote:
It really shouldn't be required, but I'm guessing some weird side effect running on Windows. It should be as simple as adding something like this just before the "platform": "Ring" (just tested and it let me add it):
"ffmpegPath": "C:\ffmpeg\bin\ffmpeg.exe",
I've not personally tested this plugin code on native Windows (the author potentially has but I have not) so I'm guessing a little bit, but as Windows as some unique path handling in node, I wonder if there's something wrong here.
—
Reply to this email directly, view it on GitHub <#1305 (comment)>, or unsubscribe <https://github.com/notifications/unsubscribe-auth/A77VP5FTDZMSA2C6AG32NLTXX6IS7ANCNFSM6AAAAAA4EX45AI>.
You are receiving this because you authored the thread.
|
What is confusing about that is that there were no changes in the way ffmpeg is referenced and the audio improvements were just the addition of a handful of additional flags to the existing ffmpeg options which produce a more consistent audio stream. There were no other changes (I know, I submitted the PR for the audio improvements). It almost seems like your ffmpeg-for-homebridge package failed to install the binary, as that is the one that should be used. I don't understand why it is not being found. Did you change anything else? Perhaps upgrade Node at the same time? I see you are on a pretty old version, perhaps try updating to the latest LTS version which is v18.17.1. |
I did no other upgrades. I even uninstalled and re-installed ffmpeg-for-homebridge.
… On Aug 30, 2023, at 4:27 PM, tsightler ***@***.***> wrote:
And this only started with version 12.0.0 after Dusty made improvements to the audio.
What is confusing about that is that there were no changes in the way ffmpeg is referenced and the audio improvements were just the addition of a handful of additional flags to the existing ffmpeg options which produce a more consistent audio stream. There were no other changes (I know, I submitted the PR for the audio improvements).
It almost seems like your ffmpeg-for-homebridge package failed to install the binary, as that is the one that should be used. I don't understand why it is not being found.
Did you change anything else? Perhaps upgrade Node at the same time?
—
Reply to this email directly, view it on GitHub <#1305 (comment)>, or unsubscribe <https://github.com/notifications/unsubscribe-auth/A77VP5HRBJ5UZVNKXNTOVADXX6O2HANCNFSM6AAAAAA4EX45AI>.
You are receiving this because you authored the thread.
|
Try this adding this to the config and restarting:
That should force it to search the system path. Just a shot. |
Still, "Streaming Video only, FFMPEG not found."
On Wednesday, August 30, 2023 at 04:36:06 PM EDT, tsightler ***@***.***> wrote:
Try this adding this to the config and restarting:
"ffmpegPath": "ffmpeg",
That should force it to search the system path. Just a shot.
—
Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you authored the thread.Message ID: ***@***.***>
|
So I just went through the process of installing Homebridge on a Windows system, installed the Ring plugin, connected to Ring account, added to Home app, view a camera, worked perfectly. Found ffmpeg from the ffmpeg-for-homebridge package, no problem. Unfortunately, I don't know any other things to suggest. I'm using Node v18.17.1, but that's about the only difference I can think of. Followed the instructions at https://github.com/homebridge/homebridge/wiki/Install-Homebridge-on-Windows-10 which I assume are the same steps you used. |
Thanks for all the help. Worst case I will uninstall and rebuild the whole thing. I will upgrade my node.js to match your experience. I had originally installed 64-bit node.js, but I saw somewhere that 32-bit is needed. Can you confirm? 64 or 32?
… On Aug 30, 2023, at 5:10 PM, tsightler ***@***.***> wrote:
So I just went through the process of installing Homebridge on a Windows system, installed the Ring plugin, connected to Ring account, added to Home app, view a camera, worked perfectly. Found ffmpeg from the ffmpeg-for-homebridge package, no problem. Unfortunately, I don't know any other things to suggest. I'm using Node v18.17.1, but that's about the only difference I can think of. Followed the instructions at https://github.com/homebridge/homebridge/wiki/Install-Homebridge-on-Windows-10 which I assume are the same steps you used.
—
Reply to this email directly, view it on GitHub <#1305 (comment)>, or unsubscribe <https://github.com/notifications/unsubscribe-auth/A77VP5CR4YFYD4TNRPX74H3XX6T3NANCNFSM6AAAAAA4EX45AI>.
You are receiving this because you authored the thread.
|
Definitely 64-bit node, filename is The code that is generating the message is super basic and largely unchanged going back years, so it's hard for me to even theorize what could be going wrong. Basically there's a single call to a function which is part of the @homebridge/camera-utils package, specifically, Unless the ffmpegPath option has been manually set, as we tried above, the getFfmpegPath() call will return undefined and so camera-utils will use the path returned from importing ffmpegForHomebridgePath from the ffmpeg-for-homebridge package. Is there definitely an ffmpeg.exe in you path in the ffmpeg-for-homebridge package? Should be in a path similar to:
And, if there is one in this path, what happens when you run |
Yes, everything is where its supposed to be, here is the result of the CMD:
C:\Users\Admin>ffmpeg.exe -version
ffmpeg version 2023-08-28-git-b5273c619d-full_build-www.gyan.dev Copyright (c) 2000-2023 the FFmpeg developers
built with gcc 12.2.0 (Rev10, Built by MSYS2 project)
configuration: --enable-gpl --enable-version3 --enable-static --disable-w32threads --disable-autodetect --enable-fontconfig --enable-iconv --enable-gnutls --enable-libxml2 --enable-gmp --enable-bzlib --enable-lzma --enable-libsnappy --enable-zlib --enable-librist --enable-libsrt --enable-libssh --enable-libzmq --enable-avisynth --enable-libbluray --enable-libcaca --enable-sdl2 --enable-libaribb24 --enable-libaribcaption --enable-libdav1d --enable-libdavs2 --enable-libuavs3d --enable-libzvbi --enable-librav1e --enable-libsvtav1 --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxavs2 --enable-libxvid --enable-libaom --enable-libjxl --enable-libopenjpeg --enable-libvpx --enable-mediafoundation --enable-libass --enable-frei0r --enable-libfreetype --enable-libfribidi --enable-libharfbuzz --enable-liblensfun --enable-libvidstab --enable-libvmaf --enable-libzimg --enable-amf --enable-cuda-llvm --enable-cuvid --enable-ffnvcodec --enable-nvdec --enable-nvenc --enable-dxva2 --enable-d3d11va --enable-libvpl --enable-libshaderc --enable-vulkan --enable-libplacebo --enable-opencl --enable-libcdio --enable-libgme --enable-libmodplug --enable-libopenmpt --enable-libopencore-amrwb --enable-libmp3lame --enable-libshine --enable-libtheora --enable-libtwolame --enable-libvo-amrwbenc --enable-libcodec2 --enable-libilbc --enable-libgsm --enable-libopencore-amrnb --enable-libopus --enable-libspeex --enable-libvorbis --enable-ladspa --enable-libbs2b --enable-libflite --enable-libmysofa --enable-librubberband --enable-libsoxr --enable-chromaprint
libavutil 58. 17.100 / 58. 17.100
libavcodec 60. 23.100 / 60. 23.100
libavformat 60. 10.101 / 60. 10.101
libavdevice 60. 2.101 / 60. 2.101
libavfilter 9. 11.100 / 9. 11.100
libswscale 7. 3.100 / 7. 3.100
libswresample 4. 11.100 / 4. 11.100
libpostproc 57. 2.100 / 57. 2.100
C:\Users\Admin>ffmpeg.exe -codecs
ffmpeg version 2023-08-28-git-b5273c619d-full_build-www.gyan.dev Copyright (c) 2000-2023 the FFmpeg developers
built with gcc 12.2.0 (Rev10, Built by MSYS2 project)
configuration: --enable-gpl --enable-version3 --enable-static --disable-w32threads --disable-autodetect --enable-fontconfig --enable-iconv --enable-gnutls --enable-libxml2 --enable-gmp --enable-bzlib --enable-lzma --enable-libsnappy --enable-zlib --enable-librist --enable-libsrt --enable-libssh --enable-libzmq --enable-avisynth --enable-libbluray --enable-libcaca --enable-sdl2 --enable-libaribb24 --enable-libaribcaption --enable-libdav1d --enable-libdavs2 --enable-libuavs3d --enable-libzvbi --enable-librav1e --enable-libsvtav1 --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxavs2 --enable-libxvid --enable-libaom --enable-libjxl --enable-libopenjpeg --enable-libvpx --enable-mediafoundation --enable-libass --enable-frei0r --enable-libfreetype --enable-libfribidi --enable-libharfbuzz --enable-liblensfun --enable-libvidstab --enable-libvmaf --enable-libzimg --enable-amf --enable-cuda-llvm --enable-cuvid --enable-ffnvcodec --enable-nvdec --enable-nvenc --enable-dxva2 --enable-d3d11va --enable-libvpl --enable-libshaderc --enable-vulkan --enable-libplacebo --enable-opencl --enable-libcdio --enable-libgme --enable-libmodplug --enable-libopenmpt --enable-libopencore-amrwb --enable-libmp3lame --enable-libshine --enable-libtheora --enable-libtwolame --enable-libvo-amrwbenc --enable-libcodec2 --enable-libilbc --enable-libgsm --enable-libopencore-amrnb --enable-libopus --enable-libspeex --enable-libvorbis --enable-ladspa --enable-libbs2b --enable-libflite --enable-libmysofa --enable-librubberband --enable-libsoxr --enable-chromaprint
libavutil 58. 17.100 / 58. 17.100
libavcodec 60. 23.100 / 60. 23.100
libavformat 60. 10.101 / 60. 10.101
libavdevice 60. 2.101 / 60. 2.101
libavfilter 9. 11.100 / 9. 11.100
libswscale 7. 3.100 / 7. 3.100
libswresample 4. 11.100 / 4. 11.100
libpostproc 57. 2.100 / 57. 2.100
Codecs:
D..... = Decoding supported
.E.... = Encoding supported
..V... = Video codec
..A... = Audio codec
..S... = Subtitle codec
..D... = Data codec
..T... = Attachment codec
...I.. = Intra frame-only codec
....L. = Lossy compression
.....S = Lossless compression
-------
...
DEAIL. aac AAC (Advanced Audio Coding) (decoders: aac aac_fixed) (encoders: aac aac_mf)
...
|
So that version of ffmpeg probably doesn't help much since it doesn't have libfdk_aac, the output from that version of ffmpeg: Output of codecs from ffmpeg-for-homebridge: I'd probably uninstall that ffmpeg version and focus on getting the ffmpeg-for-homebridge working as that is the recommended setup and should definitely work. Is there definitely an ffmpeg.exe in the homebridge-ring/node_modules/ffmeg-for-homebridge directory? |
definitely |
C:\Users\Admin\AppData\Roaming\npm\node_modules\homebridge-ring\node_modules\ffmpeg-for-homebridge.build\ffmpeg.exe |
Its located in: so I removed the ffmpeg path from the JSON config. Updated the node.js to the same 18.17.1. I notice my ffmpeg.exe is in a folder called .build. Is that correct? |
And that fixed it. i moved the ffmpeg.exe into the ffmpeg-for-homebridge foler, out of the .build folder and that fixed it. Your help was invaluable!!!! |
Interesting, so for some reason the install of ffmpeg-for-homebridge failed. The ffmpeg-for-homebridge package is basically just a small javascript file which downloads the correct pre-compiled binary for your platform. Immediately after installing the package this script is run and it creates the ffmpeg-for-homebridge.build folder to download the release binary into, then it should copy it to the ffmpeg-for-homebridge directory and delete the temporary directory. Obviously those last two steps didn't happen in your case. Very strange, but glad you got it working. I'll go ahead a close this. |
Is there an existing issue for this?
Describe The Bug
I get an FFMPEG not installed error when streaming. I do have ffmpeg for homebridge installed as well as ffmpeg installed on the PC.
To Reproduce
No response
Expected behavior
i used to hear audio on the live stream, prior to update
Relevant log output
Screenshots
No response
Homebridge Ring Config
Additional context
No response
OS
windows 10
Node.js Version
18.6.0
NPM Version
?
Homebridge/HOOBs Version
4.50.4
Homebridge Ring Plugin Version
12.0.0
Operating System
windows 10
The text was updated successfully, but these errors were encountered: