Ffmpeg'i dmg'den kurmak ve sonra bir terminalden çalıştırmak, daha iyi bir yol var mı?


11

Buradan: https://ffmpeg.org/download.html#build-mac Statik yapıları 64 bit seçtim ve ben de https://evermeet.cx/ffmpeg/

Daha sonra bunu indirdim:

resim açıklamasını buraya girin

ve bunu kullanarak açtı:

resim açıklamasını buraya girin

bana bunu verdi:

Last login: Wed Jun  6 09:41:56 on ttys000
david-selfs-Air:~ david$ /Volumes/FFmpeg\ 91200-g1616b1be5a/ffmpeg ; exit;
ffmpeg version N-91200-g1616b1be5a-tessus Copyright (c) 2000-2018 the FFmpeg developers
  built with Apple LLVM version 9.1.0 (clang-902.0.39.1)
  configuration: --cc=/usr/bin/clang --prefix=/opt/ffmpeg --extra-version=tessus --enable-avisynth --enable-fontconfig --enable-gpl --enable-libaom --enable-libass --enable-libbluray --enable-libfreetype --enable-libgsm --enable-libmodplug --enable-libmp3lame --enable-libmysofa --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopus --enable-librubberband --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libspeex --enable-libtheora --enable-libtwolame --enable-libvidstab --enable-libvo-amrwbenc --enable-libvorbis --enable-libvpx --enable-libwavpack --enable-libx264 --enable-libx265 --enable-libxavs --enable-libxvid --enable-libzimg --enable-libzmq --enable-libzvbi --enable-version3 --pkg-config-flags=--static --disable-ffplay
  libavutil      56. 18.102 / 56. 18.102
  libavcodec     58. 19.104 / 58. 19.104
  libavformat    58. 17.100 / 58. 17.100
  libavdevice    58.  4.100 / 58.  4.100
  libavfilter     7. 24.100 /  7. 24.100
  libswscale      5.  2.100 /  5.  2.100
  libswresample   3.  2.100 /  3.  2.100
  libpostproc    55.  2.100 / 55.  2.100
Hyper fast Audio and Video encoder
usage: ffmpeg [options] [[infile options] -i infile]... {[outfile options] outfile}...

Use -h to get full help or, even better, run 'man ffmpeg'
logout
Saving session...
...copying shared history...
...saving history...truncating history files...
...completed.
Deleting expired sessions...7 completed.

[Process completed]

Ancak bir terminal açtığınızda ve denemek ffmpegya man ffmpegda ya da ffmpeg -i filename.mp4 -vn filename.wav(gelen burada ) tüm ı get olduğunu

-bash: ffmpeg: komut bulunamadı

Yakın olmalıyım, şimdi bir yol tanımlamam gereken bir yer var ffmpegmı? Bunu nasıl yapacağımı ya da hangi yolu kullanacağımı bilmiyorum.

Daha iyi bir yol var mı?

Yanıtlar:


20

Sorun, dizinler listesinde basharıyor . Bu dizinlerden bazıları SIP tarafından korunmaktadır ve bu nedenle dosyayı bu dizinlere koymak için SIP'yi devre dışı bırakmanız gerekir . Alternatif olarak, Homebrew kullanarak kurabilirsiniz.ffmpeg$PATH

İlk olarak HomeBrew'u şu komutla yükleyin:

/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

Ardından ffmpegşu komutla yükleyin :

brew install ffmpeg

Homebrew, ffmpeg'i SIP tarafından korunmayan bir yola kuracak , ancak $PATHdaha spesifik olarak /usr/local/bindizinin altına kuracaktır .

Bu manuel komutlarla manuel olarak yapılabilir (temel olarak homebrew'un yaptığı şeyi manuel olarak yapar. Bu yaklaşım için @davids cevabını kontrol edin. Ancak birden fazla nedenden dolayı homebrew'u öneririm.Kullanımı çok daha kolay ve çok miktarda araç yüklemek daha hızlı. Homebrew ayrıca yükleme bağımlılıklarını da kolaylaştırır.

Düzenleme: Daha önce bu yana değiştirdim yanlış bilgilerle bu cevabın bir parçası vardı. Şu anda doğru olduğuna inanıyorum. SIP ile ilgili kısmı ekledim çünkü komutların yerleştirilmesiyle ilgili hangi kısıtlamaların olduğunu ve neden tüm komutlar için tek bir yol olmadığını anlamak önemli.


26

Programı disk görüntüsünden yerel klasörlerinize kopyalamanız gerekir. Bu şeyler için olağan yer / usr / local / bin

Yani:

sudo mkdir -p /usr/local/bin
sudo cp /Volumes/FFmpeg\ 91200-g1616b1be5a/ffmpeg /usr/local/bin/
sudo chmod +x /usr/local/bin/ffmpeg

ve her şey yolunda gitmeli. SIP'yi devre dışı bırakmak gerekli değildir.

Önceden derlenmiş bir ikili yüklemek için homebrew veya başka bir paket işleyicisine gerek yoktur. Gerçi temel UNIX'i okumalısınız.


2

MacOS'un terminal kabuğu, Windows veya Linux'ta olduğu gibi, $PATHikili dosyaları bulmak için ortam değişkenine bakar.

$PATHDeğişkeninizin yaptıklarını kontrol edebilirsiniz :

echo $PATH

Standart yeni macOS'ta hangi çıktılar:

/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin

İkili dizinin bir kopyasını bu dizinden birine (tercihen / usr / local / bin SIP korumalı olmadığından ) koymanız veya $PATHortam değişkeninize başka bir dizin eklemeniz gerekir .

En iyi uygulama genellikle uygulamanızı başka bir yerde (örn. /lib) Saklamak ve bin dizinine yalnızca ikilinin kendisine işaret eden bir sembolik link koymaktır . Bu, bağımsız ikililer için daha az doğrudur, ancak bir .app (örneğin /Applications/VLC.app/Contents/MacOS/VLC) içinde bulunan bir yürütülebilir dosya çalıştırmak istiyorsanız zorunludur.


/usr/local/usr/local/bin
MacOS'ta
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.