phiên bản avconv và youtube-dl


21

Tôi có phiên bản youtube-dl 2015 / 07.04. Trong khi tải xuống video, tôi thấy thông báo này:

Bản sao avconv của bạn đã lỗi thời và không thể mux đúng các tệp video và âm thanh riêng biệt, youtube-dl sẽ tải xuống phương tiện tập tin duy nhất. Cập nhật avconv lên phiên bản 10-0 hoặc mới hơn để sửa lỗi này.

Rõ ràng, nhược điểm của một avconv lỗi thời là youtube-dl sẽ không thể tải xuống bestvideobestaudiotách riêng chúng và ghép chúng lại thành một tệp duy nhất cho chất lượng tổng thể tốt nhất hiện có.

Làm cách nào tôi có thể tìm thấy số phiên bản avconv hiện đang cài đặt của mình? Làm thế nào tôi có thể có được một phiên bản mới hơn so với những gì được cung cấp bởi libav-tools 6:9.18-0ubuntu0.14.04.1?

Có ppa có sẵn cho 14.04 với phiên bản avconv 10.0 trở lên không?


bạn có chắc là điều đó thực sự xảy ra không? Tôi đã thấy cùng một lỗi và nó vẫn hợp nhất hai tệp riêng biệt và thậm chí hỏi tôi có muốn giữ chúng tách biệt không.
mchid 7/07/2015

Tôi xin lỗi nhưng tôi không thể trả lời. Thông điệp duy nhất tôi thấy là những gì tôi đã đăng và sau đó video tiến hành tải xuống. Tôi chưa bao giờ thấy một đề nghị để tách âm thanh và video. Hiện tại, tôi đang ngăn chặn tin nhắn bằng cách sử dụng -f best.
Công lý cho Monica

Bạn đã thử sử dụng -Fđầu tiên để xem "tốt nhất" là gì và sau đó sử dụng -fđể chọn chất lượng tốt nhất một cách rõ ràng?
mchid 7/07/2015

1
không, lần đầu tiên sử dụng youtube-dl -Ftheo sau là URL. Điều này sẽ liệt kê tất cả các codec có sẵn và các phiên bản có sẵn về chất lượng và định dạng. Một trong số này sẽ được liệt kê là sử dụng "tốt nhất", -ftheo sau là số lượng được liệt kê là tốt nhất giống như bạn thường sử dụng -f bestnhư vậy ... youtube-dl -ftiếp theo là số và theo sau là url. Ví dụ: lần chạy đầu tiên youtube-dl -F http://example.comvà nói 13 được liệt kê là "tốt nhất", sau đó chạy: youtube-dl -f 13 http://example.com
mchid

1
Ngoài ra, khi bạn đang xây dựng từ nguồn (ít nhất là khi sử dụng make), bạn thường có thể giới hạn số lượng luồng mà quá trình sẽ tiêu thụ trong quá trình biên dịch bằng cách sử dụng make j1(ví dụ như giới hạn một luồng) để nó không chiếm tài nguyên và sẽ chỉ chiếm một lõi xử lý. Có thể sẽ mất nhiều thời gian hơn để biên dịch nhưng bạn có thể để nó chạy ở chế độ nền (chỉ trong trường hợp bạn từng xây dựng bất cứ thứ gì từ nguồn trong tương lai) thì đã lâu rồi tôi không nhớ nó nặng đến mức nào vì 15.04 có thật ffmpeg bây giờ dù thế nào đi nữa.
mchid

Câu trả lời:


13

ppa có thể được tìm thấy ở đây

sudo add-apt-repository ppa:mc3man/trusty-media
sudo apt-get update
sudo apt-get dist-upgrade
sudo apt-get install ffmpeg

Lệnh sau sẽ thêm bí danh vào tệp bashrc để người dùng của bạn có thể thực thi youtube-dlvà bash sẽ youtube-dl --prefer-ffmpegtự động thực hiện để loại bỏ việc nhập không cần thiết trong tương lai:

echo "alias youtube-dl='youtube-dl --prefer-ffmpeg'" | tee -a ~/.bashrc; . ~/.bashrc

Bạn cũng có thể thêm các cờ bổ sung vào lệnh bằng cách chỉnh sửa tệp ~ / .bashrc bằng trình soạn thảo văn bản yêu thích của bạn như gedit, vim hoặc nano; chỉ cần lưu ý rằng bạn không cần và không nên sử dụng sudo để chỉnh sửa tệp này vì nó phải nằm trong hồ sơ người dùng hiện tại của bạn và cần duy trì quyền người dùng của bạn, không phải là sudo hoặc root. Chỉ cần thêm cờ bổ sung trong lệnh được trích dẫn cho youtube-dl. Ngoài ra, sau khi chỉnh sửa ~ / .bashrc, bạn sẽ cần nguồn tệp hoặc mở một thiết bị đầu cuối mới để sử dụng bí danh mới. Nguồn tệp bằng cách chạy lệnh sau:

. ~/.bashrc

Để xem phiên bản hiện tại của libav-tools, hãy chạy lệnh sau:

dpkg -l | grep libav

Ngoài ra, để xem những gì có sẵn từ apt-get, hãy chạy lệnh sau:

apt-cache show libav-tools | grep Version:

Tất cả các phiên bản có sẵn sẽ được liệt kê. Phiên bản mới nhất sẽ được cài đặt theo mặc định khi bạn chạy sudo apt-get upgradehoặc ' dist-upgradehoặc bạn chỉ có thể sudo apt-get installcài đặt nó và nó sẽ cài đặt phiên bản mới nhất có sẵn trừ khi có quy định khác.

Để thực hiện tìm kiếm các gói liên quan, hãy sử dụng apt-cache searchnhư vậy:

apt-cache search libav

Để thu hẹp tìm kiếm, bạn có thể sử dụng grep để chỉ in kết quả có chứa từ khóa như vậy:

apt-cache search libav | grep libav

Ít nhất là trên Thử nghiệm Debian tại thời điểm này (với ffmpeg 2.8), chỉ cần chạy youtube-dl --prefer-ffmpeg …là đủ. Tôi khuyên bạn nên thử điều đó trước khi đào vào kho lưu trữ không ổn định / beta.
Adam Katz

@AdamKual đã không được cung cấp một lần nữa cho đến ngày 15.04 (ubfox sống động). Vì vậy, bằng cách sử dụng Ubuntu 15.04 hoặc các phiên bản mới hơn và gần đây của debian (tôi tin là jessie cũng vậy), bạn sẽ không cần thêm ppa vì ffmpeg thực có sẵn.
mchid 7/10/2015

Tôi sử dụng repo của bên thứ ba đa phương tiện gỡ lỗi , mặc dù Thử nghiệm Debian ("Kéo dài", bản phát hành ổn định sẽ theo sau Jessie) có ffmpeg 2.7.2. Từ hệ thống theo dõi gói của Debian, có vẻ như ffmpeg đã bị loại bỏ trong Debian 7 (Wheezy) nhưng sẽ trở lại trong Debian 9 (Stretch) . Tôi đã không tìm hiểu xem Ubuntu tiếp theo cũng sẽ trả về ffmpeg thực sự hay không.
Adam Katz

8

Avconv-11 vẫn có sẵn cho Ubuntu Trusty trong heyarje ppa:

sudo add-apt-repository ppa:heyarje/libav-11 && sudo apt-get update
sudo apt-get upgrade
sudo apt-get install libav-tools

Điều này làm việc tốt cho tôi và đơn giản hơn so với việc ffmpegcài đặt vào ngày 14.04.
gen_wood


3
  1. Cài đặt FFMpeg

    sudo apt-get install ffmpeg
    
  2. Dùng cái này

    youtube-dl -x --audio-format mp3 --prefer-ffmpeg <video URL>
    

Công tác năm youtube-dl2015.11.19


Khi tôi cố gắng cài đặt ffmpeg bằng lệnh của bạn, tôi đã nhận được: E: Gói 'ffmpeg' không có ứng cử viên cài đặt
Menachem
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.