avconv版本和youtube-dl


21

我有youtube-dl版本2015.07.04。下载视频时,我看到以下消息:

您的avconv副本已过时,无法正确混合单独的视频和音频文件,youtube-dl将下载单个文件媒体。将avconv更新到版本10-0或更高版本以解决此问题。

显然,过时的avconv的缺点是youtube-dl无法单独下载bestvideobestaudio将它们混合在一起成为一个文件,从而无法提供最佳的整体质量。

如何找到当前安装的avconv的版本号?如何获得比提供的版本新的版本libav-tools 6:9.18-0ubuntu0.14.04.1

avconv 10.0或更高版本的14.04是否有可用的ppa?


您确定这确实在发生吗?我看到了相同的错误,但是它仍然合并两个单独的文件,甚至询问我是否要将它们分开。
mchid

对不起,我无法回答。我看到的唯一消息是我发布的内容,然后视频继续下载。我从未见过将音频和视频分开的提议。目前,我通过使用禁止显示该消息-f best
莫妮卡(Monica)的正义

您是否尝试过-F先使用“最佳”一词,然后再使用它-f来明确选择最佳质量?
mchid

1
不,先使用,youtube-dl -F后跟URL。这应该列出所有可用的编解码器以及质量和格式的可用版本。其中之一将被列为“最佳”使用方式,-f然后是被列为最佳使用方式的数字,就像您通常会这样使用-f best...一样, youtube-dl -f其后是数字和URL。例如:首先运行youtube-dl -F http://example.com并说13被列为“最佳”,然后运行: youtube-dl -f 13 http://example.com
mchid 2015年

1
同样,当您从源代码构建时(至少使用时make),通常可以使用来限制进程在编译过程中消耗的线程数make j1(例如,限制为一个线程),这样它就不会占用资源并且只会占用一个处理器核心。编译可能会花更长的时间,但是您可以让它在后台运行(以防万一您将来要从源代码构建任何东西)已经有一段时间了,我不记得它有多沉重,因为15.04具有真正的ffmpeg现在无论如何。
mchid

Answers:


13

ppa可以在这里找到

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

以下命令将为您的bashrc文件添加一个别名,以便您的用户可以执行,youtube-dl并且bash将youtube-dl --prefer-ffmpeg自动执行以消除将来不必要的输入:

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

您还可以通过使用喜欢的文本编辑器(例如gedit,vim或nano)编辑〜/ .bashrc文件来向命令添加额外的标志。只要记住,您不需要也不应该使用sudo来编辑此文件,因为该文件应该位于当前用户配置文件下,并且需要维护您的用户权限,而不是sudo或root的权限。只需在youtube-dl的带引号的命令内添加其他标志即可。同样,在编辑〜/ .bashrc之后,您将需要提供文件源或打开新终端以使用新别名。通过运行以下命令来获取文件源:

. ~/.bashrc

要查看当前安装的libav-tools版本,请运行以下命令:

dpkg -l | grep libav

另外,要查看apt-get中可用的内容,请运行以下命令:

apt-cache show libav-tools | grep Version:

将列出所有可用的版本。除非另有说明,否则在您运行sudo apt-get upgrade或' 时默认会安装最新版本,也dist-upgrade可以仅sudo apt-get install安装它,并且它将安装最新的可用版本。

要搜索相关的软件包,请使用apt-cache search如下方法:

apt-cache search libav

为了缩小搜索范围,您可以使用grep仅打印包含如下关键字的结果:

apt-cache search libav | grep libav

至少在此时的Debian Testing(使用ffmpeg 2.8)上,仅运行youtube-dl --prefer-ffmpeg …就足够了。我建议先尝试一下,然后再进入不稳定的/ beta存储库。
亚当·卡兹

@AdamKatz是的,我确定debian测试具有真正的ffmpeg,但是Ubuntu Trusty(14.04)随avconv一起提供,并且当您默认运行ffmpeg命令时,它会像别名一样调用avconv,因为ffmpeg被删除并且ffmpeg直到15.04(ubuntu生动)才再次可用。因此,使用Ubuntu 15.04或更高版本的debian(我也相信jessie),您不需要添加ppa,因为可以使用真正的ffmpeg。
mchid

我使用的是deb-multimedia第三方存储库,尽管Debian Testing(“ Stretch”,将跟随Jessie发行的稳定版本)具有ffmpeg 2.7.2。从Debian的软件包跟踪系统来看,ffmpeg似乎已在Debian 7(Wheezy)中删除,但将在Debian 9(Stretch)中返回。我还没有检查下一个Ubuntu是否还会返回真正的ffmpeg。
亚当·卡兹

8

在heyarje ppa中,Avconv-11仍可用于Ubuntu Trusty:

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

这对我来说效果很好,并且比ffmpeg在14.04上安装要简单。
gene_wood '16


3
  1. 安装FFMpeg

    sudo apt-get install ffmpeg
    
  2. 用这个

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

youtube-dl2015年11月19日工作


当我尝试使用您的命令安装ffmpeg时,我得到了:E:软件包ffmpeg没有安装候选者
Menachem 2015年
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.