Làm thế nào để thay thế avconv bằng ffmpeg (thật) và làm cho nó hoạt động đúng không?


27

CẬP NHẬT (văn bản gốc được bảo tồn dưới đây)

Với ffmpeg thực sự sắp trở lại (vào ngày 15.04), PPA của Jon Severinsson không còn hoạt động (đối với ffmpeg) và cả avconv-ffmpeg (bây giờ được gọi là " libav ") và ffmpeg thực (giờ trở lại chỉ là " ffmpeg ") phát hành tạm thời, câu hỏi đã trở thành: Làm thế nào để dễ dàng cài đặt ffmpeg nhất trong các bản phát hành trước năm 2015?

/ CẬP NHẬT

Bất cứ ai cũng biết cách cài đặt ffmpeg thực, hiện tại (không phải phiên bản cũ hơn bởi avconv đi kèm w / Ubuntu) mà không gặp sự cố được đề cập ở đây ?

Lý do:

  • Tất cả mọi thứ hoạt động (hoặc rất nhiều đã viết),
  • Sử dụng cú pháp mới và
  • Sau một số nghiên cứu - và không vướng vào tranh cãi - tôi chỉ đơn giản tin rằng những người đóng gói đã phạm sai lầm với avconv. Đây là một sửa chữa.

Rõ ràng là không dễ dàng như vậy do xung đột phiên bản, và avconv và ffmpeg không thể cùng tồn tại trên cùng một máy (lưu ý trong câu trả lời được chấp nhận của bài đăng được liên kết ở trên). Mặc dù ít nhất một hướng dẫn đề cập đến việc cài đặt ffmpeg cục bộ (~) để đạt được sự cùng tồn tại.

Bản phát hành của tôi là Chính xác 12.04.3 LTS, nhưng có vẻ như điều này cũng sẽ áp dụng cho những bản mới hơn.


3
Bạn đã thấy cách biên dịch FFmpeg trên Ubuntu chưa? Nó không xung đột với bất kỳ rác libav từ repos.
llogan

1
Tôi đề nghị bạn viết lại một chút phần "lý do". Có vẻ như bạn đang ám chỉ rằng sự vượt trội giả định của ffmpeg so với avconv là một thực tế và người dùng Ubuntu đang gặp rắc rối vì kho lưu trữ đã bị hỏng phần mềm. Điều này có thể gây nhầm lẫn và sợ một số người dùng mới làm quen. Tôi hy vọng bạn sẽ hiểu quan điểm của tôi, vì dường như bạn đồng ý rằng tốt hơn hết là đừng để «vào cuộc tranh cãi».
Andrea Lazzarotto

1
@Brad Tôi cứ tin rằng thật sai lầm khi khiến người dùng mới sợ hãi bằng cách để họ nghĩ rằng họ đã làm hỏng phần mềm và họ cần phải "sửa" nó.
Andrea Lazzarotto

1
@AndreaLazzarotto Không ai cố gắng làm ai sợ hãi. Trong câu hỏi là một ý kiến, và nó được gọi cụ thể là một. Ý kiến ​​đó là một phần quan trọng của câu hỏi.
Brad

1
Hey các bạn, cảm ơn cho ý kiến. Vì phiên bản avconv không có thật của ffmpeg đã bị xóa khỏi tất cả các bản phát hành mới nhất, nên không còn gì để gỡ cài đặt nữa (và cũng không còn tranh cãi nữa: ^). Jon Severinsson đang cập nhật ppa của mình thường xuyên để các ffmpeg thực sự bật - w / cài đặt và cập nhật dễ dàng. Bài viết này sẽ phục vụ như là cập nhật ở đây bây giờ. (Sẽ dọn dẹp hoàn toàn sau.)
u2n

Câu trả lời:


25

Câu trả lời cập nhật cho các bản phát hành trước năm 2015

Vì không ai duy trì một ppa toàn diện như Jon Severinsson, nên phương pháp sử dụng bản dựng tĩnh của Rmano giờ đây dễ dàng nhất. Lưu ý cập nhật phải được kiểm tra và thực hiện thủ công.

  1. Sau khi đi đến trang tải xuống ffmpeg chính thức , hãy nhấp vào liên kết trong Linux Tĩnh Builds . (Mục tiêu có thể thay đổi để nó không được liên kết trực tiếp tại đây.)
  2. Nhấp vào bản phát hành thích hợp (32 hoặc 64 bit) và mong muốn (ảnh chụp nhanh hoặc đánh số) để tải xuống. (Khuyến nghị chụp nhanh.)
  3. Nếu phiên bản libav của ffmpeg đã được cài đặt, hãy xóa nó. Cả hai không thể cư trú trên cùng một máy. Nếu libav chưa được cài đặt trước đó, hãy bỏ qua 4.

    sudo apt-get remove ffmpeg  
    sudo apt-get purge libav-tools  
    # *Ignore any autoremove message that may appear.*
    
  4. Giải nén các tập tin (và hai thư mục) như sau:

    • Đối với hệ thống người dùng đơn: đến $ HOME / thùng
    • Đối với thiết lập nhiều người dùng: to / usr / local / bin

Cài đặt bản dựng tĩnh được thực hiện và ffmpeg đã sẵn sàng để sử dụng.

Để cập nhật: Khi kiểm tra và tìm bản phát hành mới hơn, thư mục cài đặt có thể được sắp xếp theo ngày và các tệp phiên bản hiện có nhanh chóng được xác định và xóa. (Tất cả các dấu thời gian sẽ giống như nhị phân ffmpeg.) Bản cập nhật sau đó có thể được tải xuống và trích xuất giống như bản phát hành trước đó.

Nếu một ffmpeg repo toàn diện tái xuất hiện, nó sẽ cài đặt như trước:

# Replace avconv with the real ffmpeg
#   www.askubuntu.com/a/373509/165265
#
sudo add-apt-repository ppa:<name of ppa here>
sudo apt-get update
sudo apt-get install ffmpeg

Với việc ffmpeg thực sự trở lại với các bản phát hành năm 2015 và hơn thế nữa, nhu cầu về công việc này sẽ dần biến mất.

Rất biết ơn cộng đồng đã giúp đỡ.


4
Phù. Cảm ơn. avconv có vẻ rất gần với ffmpeg, nhưng dường như có một số cờ khác nhau. Không, cám ơn. FFMPEG hoạt động tuyệt vời. Lý do duy nhất tôi có thể nghĩ để Ubuntu chuyển đổi là một số lý do chính trị. Hãy quên đi tiếng ồn đó. ffmpeg ftw!
James T Snell

1
Các sudo apt-get dist-upgradedòng dường như không cần thiết cho tôi cho mục đích của bài viết này. Hầu hết những người đang cố gắng cài đặt ffmpeg có thể sẽ không muốn kích hoạt nâng cấp phân phối như một tác dụng phụ.
cxrodgers

@cxrodgers, hoàn toàn đúng. Sửa chữa ngay, cảm ơn.
u2n

1
Bạn có thể muốn cập nhật câu trả lời này ngay bây giờ rằng PPA jon-severinsson đã biến mất: stackoverflow.com/questions/29585700/
Kẻ

1
Symlinking nên chỉ ra /usr/local/binđể ngăn chặn xung đột tiềm ẩn từ bất kỳ gói repo nào cung cấp các tệp được đặt tên; đáng chú ý là gói libav-tools qt-faststartvà giả " ffmpeg" cho 12.04 trở lên. Ngoài ra, những người dùng khác có thể không có quyền thích hợp để thực thi bất cứ điều gì ở người dùng khác ~/bin(nhưng tôi đã không điều tra việc này). Cuối cùng, tôi nghĩ rằng toàn bộ phần "/ CẬP NHẬT" từ câu trả lời này có thể bị xóa: nó đã lỗi thời (PPA đã biến mất) và không còn đóng góp nhiều nữa.
llogan

7

Tôi không gặp vấn đề gì khi sử dụng bản dựng tĩnh do dự án FFmpeg cung cấp. Có các liên kết trong http://ffmpeg.org/doad.html

Tải xuống phiên bản / bản dựng bạn cần (32 hoặc 64 bit), sau đó đặt tệp thực thi vào $PATH(ví dụ ~/bin:). Nếu nó được đặt vào, ~/binbạn có thể đăng xuất sau đó đăng nhập lại hoặc chỉ chạy . ~/.profile, để shell của bạn nhận ra rằng nó nằm trong $PATH. Bây giờ bạn có thể chỉ cần nhập ffmpegvà bản dựng tĩnh mới sẽ được sử dụng.

Ví dụ:

% wget http://johnvansickle.com/ffmpeg/builds/ffmpeg-git-64bit-static.tar.xz
% tar xJvf ffmpeg-git-64bit-static.tar.xz
% cd ffmpeg-git-20150427-32bit-static
% ./ffmpeg
ffmpeg version N-45164-g46778ab- http://johnvansickle.com/ffmpeg/ Copyright (c) 2000-2015 the FFmpeg developers
  built with gcc 4.9.2 (Debian 4.9.2-10)
[...]

Hoàn toàn tĩnh nên không có vấn đề gì với các phiên bản Linux khác nhau (đến giới hạn, kernel không được quá cũ).


1
Cảm ơn, Rmano. Sẽ đưa ra câu trả lời của bạn như một cách thay thế ngay khi tôi đạt được con số kỳ diệu. "Thay thế" bởi vì, từ những gì tôi đã đọc, chính điều làm cho các bản dựng tĩnh trở nên đáng tin cậy - có tất cả các phụ thuộc được tích hợp sẵn - cũng khiến chúng trở nên 'nặng nề' (lớn và đói bộ nhớ). Vì lý do đó, tôi đã tránh xa việc đi theo con đường đó để ủng hộ phiên bản cập nhật tự động, trọng lượng bình thường của chương trình. ... Hãy nghĩ rằng tôi có thể đã nhận được nó, đăng bài sắp tới ...
u2n

Chà, mặc dù điều đó thường đúng với thực thi tĩnh, trong trường hợp này ffmpeg không sử dụng các thư viện chung đồ họa hoặc nặng. Rõ ràng là bạn đúng nếu cuối cùng bạn chạy song song nhiều bản sao khác nhau của ffmpeg.
Rmano

2
Câu trả lời được chấp nhận tuyến đường PPA chứa phiên bản 0.1 cũ. Bạn sẽ muốn sử dụng phương thức của câu trả lời này để có nhiều lệnh hoạt động.
2014
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.