Cài đặt ffmpeg từ dmg và sau đó chạy từ thiết bị đầu cuối, có cách nào tốt hơn không?


11

Từ đây: https://ffmpeg.org/doad.html#build-mac Tôi đã chọn các bản dựng tĩnh 64 bit mà tôi cũng vậy https://evermeet.cx/ffmpeg/

Sau đó tôi đã tải xuống này:

nhập mô tả hình ảnh ở đây

và mở nó bằng cách này:

nhập mô tả hình ảnh ở đây

đã cho tôi điều này:

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]

Tuy nhiên khi tôi mở một terminal và thử ffmpeghoặc man ffmpeghoặc thậm chí ffmpeg -i filename.mp4 -vn filename.wav(từ đây ) tất cả tôi nhận được là

-bash: ffmpeg: lệnh không tìm thấy

Tôi phải ở gần, có nơi nào bây giờ tôi cần xác định đường dẫn ffmpegkhông? Tôi không biết làm thế nào để làm điều đó, hoặc sử dụng con đường nào.

Có cách nào tốt hơn?

Câu trả lời:


20

Vấn đề là bashtìm kiếm ffmpegtrong danh sách thư mục trong $PATH. Một số các thư mục này được bảo vệ bởi SIP và do đó bạn sẽ cần phải tắt SIP để đặt tệp vào các thư mục này. Ngoài ra, bạn có thể cài đặt nó bằng Homebrew.

Đầu tiên cài đặt HomeBrew bằng lệnh này:

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

Sau đó cài đặt ffmpegbằng lệnh này:

brew install ffmpeg

Homebrew sẽ cài đặt ffmpeg theo đường dẫn không được SIP bảo vệ , nhưng trong phạm vi $PATHcụ thể hơn, nó sẽ cài đặt nó trong /usr/local/binthư mục.

Điều này có thể được thực hiện thủ công bằng các lệnh thủ công (về cơ bản là thực hiện thủ công homebrew. Đối với phương pháp này, hãy xem câu trả lời @davids. Nhưng tôi sẽ đề xuất homebrew vì nhiều lý do. Dễ dàng hơn để sử dụng một số lượng lớn công cụ. Homebrew cũng có thể cập nhật nhanh hơn nhiều.

Chỉnh sửa: Trước đây tôi đã có một phần của câu trả lời này với thông tin không chính xác mà tôi đã thay đổi nó. Tôi tin rằng nó hiện đang chính xác. Tôi đã bao gồm phần về SIP bởi vì tôi nghĩ điều quan trọng là phải hiểu những hạn chế nào liên quan đến việc đặt lệnh và tại sao không chỉ có một đường dẫn duy nhất cho tất cả các lệnh.


26

Bạn phải sao chép chương trình từ ảnh đĩa vào các thư mục cục bộ của bạn. Nơi thông thường cho những thứ này là / usr / local / bin

Vì thế:

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

và tất cả nên tốt để đi Vô hiệu hóa SIP không cần thiết.

Không cần homebrew hoặc bất kỳ trình xử lý gói nào khác để cài đặt nhị phân được biên dịch sẵn. Bạn cần phải đọc lên UNIX cơ bản mặc dù.


2

Vỏ thiết bị đầu cuối của macOS, như trong Windows hoặc Linux, đang tìm kiếm $PATHbiến môi trường để xác định vị trí nhị phân.

Bạn có thể kiểm tra $PATHbiến của bạn đang làm:

echo $PATH

Những đầu ra nào trong macOS tiêu chuẩn gần đây:

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

Bạn phải đặt một bản sao của nhị phân vào một trong những thư mục đó (tốt nhất là / usr / local / bin vì nó không được SIP bảo vệ ) hoặc thêm một thư mục khác vào $PATHbiến môi trường của bạn .

Cách thực hành tốt nhất thường là lưu trữ ứng dụng của bạn ở nơi khác (ví dụ /lib) và chỉ đặt một liên kết tượng trưng trong thư mục bin trỏ đến chính nhị phân. Điều này ít đúng với nhị phân độc lập nhưng bắt buộc nếu bạn muốn chạy một tệp thực thi nằm trong .app (ví dụ /Applications/VLC.app/Contents/MacOS/VLC)


Trên hệ điều hành MacOS nơi kinh điển để tự cài đặt mã nhị phân Unix là /usr/localhay cụ thể hơn /usr/local/bin,
nohillside
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.