macOS build cannot detect FFMpeg
Closed this issue · 10 comments
Question
Thank you very much for creating a GUI for the Demucs code! I am sorry to say that I'm unable to run it successfully. I am on a late 2019 Corei9 iMac, MacOS 12.5. On launch, the GUI window shows two messages about FFMPEG and CUDA missing. When selecting "System Information" from Demucs-GUI Info menu, the following is shown:
Python version: 3.9.12 (main, Jun 1 2022, 06:39:55)
[Clang 12.0.0 ]
System: macOS-10.16-x86_64-i386-64bit
CPU: i386
Memory: 73728.000MB
PyTorch version: 1.11.0
NumPy version: 1.22.4
SoundFile version: 0.10.3
libsndfile version: 1.1.0
CUDA available: False
Demucs version: 3.0.4
FFMpeg available: False
Demucs-GUI version: 0.1
I am certain that I have FFMpeg installed....
% ffmpeg -version
ffmpeg version 5.1 Copyright (c) 2000-2022 the FFmpeg developers
built with Apple clang version 13.1.6 (clang-1316.0.21.2.5)
configuration: --prefix=/usr/local/Cellar/ffmpeg/5.1 --enable-shared --enable-pthreads --enable-version3 --cc=clang --host-cflags= --host-ldflags= --enable-ffplay --enable-gnutls --enable-gpl --enable-libaom --enable-libbluray --enable-libdav1d --enable-libmp3lame --enable-libopus --enable-librav1e --enable-librist --enable-librubberband --enable-libsnappy --enable-libsrt --enable-libtesseract --enable-libtheora --enable-libvidstab --enable-libvmaf --enable-libvorbis --enable-libvpx --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxml2 --enable-libxvid --enable-lzma --enable-libfontconfig --enable-libfreetype --enable-frei0r --enable-libass --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-libspeex --enable-libsoxr --enable-libzmq --enable-libzimg --disable-libjack --disable-indev=jack --enable-videotoolbox
libavutil 57. 28.100 / 57. 28.100
libavcodec 59. 37.100 / 59. 37.100
libavformat 59. 27.100 / 59. 27.100
libavdevice 59. 7.100 / 59. 7.100
libavfilter 8. 44.100 / 8. 44.100
libswscale 6. 7.100 / 6. 7.100
libswresample 4. 7.100 / 4. 7.100
libpostproc 56. 6.100 / 56. 6.100
I'm less certain about cuda. I'm grateful for any advice.
Best wishes and many thanks for your work on this.
These two messages doesn’t affect the separation currently. CUDA will always be unavailable unless you are using macOS 10.13 or other platforms like Windows or Linux.
For FFMpeg detection, I will do more research. It seems that bundled app can’t reach other user resources?
Thank you for your reply. If I'm understanding you correctly, you're saying that despite Demucs-Gui not being able to find either of these components, it shouldn't ultimately affect Demucs-Gui's ability to function. Would that be correct?
When I launch the application, I get the main window for about a second. In the lower left, it displays the messages shown in the screenshots above, and then that main window disappears. The only window I'm left with is the window that lets one set the model path and load a model. At this point, I don't see any way to load an audio file for processing. I have attempted to drag and drop various types of audio files (wav, aiff, flac, mp3) onto the application icon but haven't managed to get anything to work at all.
As it pertains to detection of ffmpeg, I am remiss for not previously noting that I installed ffmpeg using brew. Also, FWIW, I regularly use an app called "remux" which is dependent on ffmpeg. For some period of time, there was a bug in brew's install of ffmpeg which prevented remux from seeing the ffmpeg component. A subsequent ffmpeg update fixed the problem. Perhaps the brew install of ffmpeg has some characteristic that makes Demucs-GUI unable to hook into it.
Thanks again for your work on this project. I'm not a coder/developer, but I'm happy to contribute in any way I can. If you would like to use me to test out builds, provide feedback, or do anything else that might be helpful/useful, please don't hesitate to ask.
Now the program doesn't use ffmpeg for reading or writing an audio, I'm just trying the detection of it. I'll fix the problem and maybe I need you to provide more information if necessary.
CUDA is a function of NVIDIA graphic card, which is not available on macOS, you needn't to worry about that.
Because the parameters depends on the model you've selected, you should load a model before reading the file. Just click load model
without changing anything.
Thanks for your support!
@chriscjcj I just open it from terminal using the following command:
open --env "PATH=${PATH}" /Applications/Demucs-GUI.app
FFMPEG is then found 👍🏼
@chriscjcj I just open it from terminal using the following command:
open --env "PATH=${PATH}" /Applications/Demucs-GUI.app
FFMPEG is then found 👍🏼
@genevera I'm not the OP, but thanks for the suggestion. This approach does seem to bypass the "FFMpeg not found" message in the splash screen when the application launches.
Unfortunately, I still see the same behavior as what @chriscjcj reported above, where I can load a model but cannot then figure out how to use the app to separate song files into isolated tracks. Dropping them on the app window does nothing, and I see no menu or controls for loading a file.
Thank you for your reply. If I'm understanding you correctly, you're saying that despite Demucs-Gui not being able to find either of these components, it shouldn't ultimately affect Demucs-Gui's ability to function. Would that be correct?
When I launch the application, I get the main window for about a second. In the lower left, it displays the messages shown in the screenshots above, and then that main window disappears. The only window I'm left with is the window that lets one set the model path and load a model. At this point, I don't see any way to load an audio file for processing. I have attempted to drag and drop various types of audio files (wav, aiff, flac, mp3) onto the application icon but haven't managed to get anything to work at all.
As it pertains to detection of ffmpeg, I am remiss for not previously noting that I installed ffmpeg using brew. Also, FWIW, I regularly use an app called "remux" which is dependent on ffmpeg. For some period of time, there was a bug in brew's install of ffmpeg which prevented remux from seeing the ffmpeg component. A subsequent ffmpeg update fixed the problem. Perhaps the brew install of ffmpeg has some characteristic that makes Demucs-GUI unable to hook into it.
Thanks again for your work on this project. I'm not a coder/developer, but I'm happy to contribute in any way I can. If you would like to use me to test out builds, provide feedback, or do anything else that might be helpful/useful, please don't hesitate to ask.
@chriscjcj I see the same behavior as what you described above. I can launch the app and load a model, but after loading the model I see no menu or controls for loading a file, and dropping a file on the app window has no effect. I don't know how to make Demucs GUI work, but I recently created my own frontend for demucs which should hopefully work for you as well. Take a look at https://github.com/will2dye4/unmixer if you're interested.
@CarlGao4 Based on reading the docs, it seems like the app should be responsive to files being dropped on the main window. I'm not able to drop files, or figure out another mechanism for loading files, using Demucs GUI v1.0a1 on macOS 14.0 (on an M1 MacBook Pro). Perhaps there's some kind of bug with the app's handling of drag/drop events on macOS? Is there supposed to be some sort of button or menu in the app that allows users to select files to load?
I haven't built release for Apple Silicon MacBooks and it will run on Intel Macs without errors
@will2dye4 this issue is quite out of date as it was an issue from 0.1
Then this issue can be fixed using #11 (comment)