Issue
so, we have been using a gem called streamio-ffmpeg, and it has been working well. We have been using github actions to to integration and E2E testing for our front end. We also had to add python for another dependency we are using. now, when we run the E2E suite on github actions, streamio-ffmpeg cannot find the ffprobe binary since python has also been installed on the actions runner.
we get the following message:
Body: Puma caught this error: No such file or directory - the ffprobe binary could not be found in /home/runner/work/folder_name/another_folder_name/server/vendor/bundle/ruby/2.7.0/bin:/opt/hostedtoolcache/Python/3.10.8/x64/bin:/opt/hostedtoolcache/Python/3.10.8/x64:/opt/hostedtoolcache/Ruby/2.7.6/x64/bin:/home/runner/.local/bin:/opt/pipx_bin:/home/runner/.cargo/bin:/home/runner/.config/composer/vendor/bin:/usr/local/.ghcup/bin:/home/runner/.dotnet/tools:/snap/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games (Errno::ENOENT)
and streamio-ffmpeg says:
Specify the path to ffmpeg
By default, the gem assumes that the ffmpeg binary is available in the execution path and named ffmpeg and so will run commands that look something like ffmpeg -i /path/to/input.file .... Use the FFMPEG.ffmpeg_binary setter to specify the full path to the binary if necessary:
FFMPEG.ffmpeg_binary = '/usr/local/bin/ffmpeg'
so, how can i find out where ffprobe binary is and tell github actions this information?? I have tried manually installing ffmpeg within the github actions runner but this does not help.
Solution
Here is how I use FedericoCarboni/setup-ffmpeg
:
steps:
...
- name: Set up FFmpeg
uses: FedericoCarboni/setup-ffmpeg@v2
with:
token: ${{ secrets.GITHUB_TOKEN }}
Then, my package ffmpegio
picks up both ffmpeg
& ffprobe
w/out any problem from the system path. Maybe you didn't include the token?
Answered By - kesh Answer Checked By - Robin (WPSolving Admin)