使用youtube-dl下载最优质的音频文件

时间:2018-04-12 19:55:49

标签: audio youtube youtube-dl

我刚刚下载了youtube-dl,因此我可以从youtube下载视频和音频文件。

我想从以下视频下载最佳音频:https://www.youtube.com/watch?v=uWusmdmc0to

当我使用youtube-dl搜索所有格式时,我得到以下结果:

format code  extension  resolution note
249          webm       audio only DASH audio   58k , opus @ 50k, 18.99MiB
250          webm       audio only DASH audio   75k , opus @ 70k, 25.20MiB
140          m4a        audio only DASH audio  131k , m4a_dash container, mp4a.40.2@128k, 52.40MiB
251          webm       audio only DASH audio  147k , opus @160k, 50.95MiB
171          webm       audio only DASH audio  149k , vorbis@128k, 52.64MiB
278          webm       256x144    144p  109k , webm container, vp9, 25fps, video only, 34.62MiB
160          mp4        256x144    144p  117k , avc1.4d400c, 25fps, video only, 37.86MiB
242          webm       426x240    240p  245k , vp9, 25fps, video only, 75.13MiB
133          mp4        426x240    240p  258k , avc1.4d4015, 25fps, video only, 81.39MiB
243          webm       640x360    360p  492k , vp9, 25fps, video only, 142.99MiB
134          mp4        640x360    360p  673k , avc1.4d401e, 25fps, video only, 215.29MiB
244          webm       854x480    480p  828k , vp9, 25fps, video only, 256.58MiB
135          mp4        854x480    480p 1516k , avc1.4d401e, 25fps, video only, 408.56MiB
247          webm       1280x720   720p 1882k , vp9, 25fps, video only, 526.18MiB
136          mp4        1280x720   720p 3012k , avc1.4d401f, 25fps, video only, 803.36MiB
248          webm       1920x1080  1080p 3622k , vp9, 25fps, video only, 938.81MiB
137          mp4        1920x1080  1080p 4724k , avc1.640028, 25fps, video only, 1.44GiB
271          webm       2560x1440  1440p 9253k , vp9, 25fps, video only, 2.86GiB
313          webm       3840x2160  2160p 18685k , vp9, 25fps, video only, 6.33GiB
17           3gp        176x144    small , mp4v.20.3, mp4a.40.2@ 24k
36           3gp        320x180    small , mp4v.20.3, mp4a.40.2
43           webm       640x360    medium , vp8.0, vorbis@128k
18           mp4        640x360    medium , avc1.42001E, mp4a.40.2@ 96k
22           mp4        1280x720   hd720 , avc1.64001F, mp4a.40.2@192k (best)

获得最佳音频文件的最佳选择是什么?前五个只是音频。我需要在这里选一个吗?或者最后一个MP4 HD720是最佳选择,然后将其转换为MP3?

谢谢!

8 个答案:

答案 0 :(得分:11)

如果你想要mp3,只需告诉youtube-dl:

youtube-dl -x --audio-format mp3 https://www.youtube.com/watch?v=uWusmdmc0to

会为您提供音频版本(-x,简称--extract-audio)或转换为mp3--audio-format选项)。 youtube-dl将自动选择最佳质量和最合适的格式。

请注意,列出的品质只是猜测。在实践中,opus优于其他任何东西,但选择vorbis是为了兼容性(请参阅this related answer of mine for more details),以便选择。

虽然您可以使用-f选择特定格式,但这适用于因带宽或存储空间有限而需要较低质量或调试的用户。默认情况下,youtube-dl已经下载了最高质量的内容。

答案 1 :(得分:4)

要执行此命令,您需要安装ffmpeg(youtube-dl用于转换的音频和视频转换器)

要下载单个电影中的音频,请执行以下操作:

youtube-dl -f "bestaudio/best" -ciw -o "%(title)s.%(ext)s" -v --extract-audio --audio-quality 0 --audio-format mp3  https://www.youtube.com/watch?v=c29tZVZpZGVvUGxheWxpc3RQYXJ0

它仅下载音频(不包含视频),并将其转换为mp3

选项--audio-quality 0在这里非常重要!
如果没有此选项,则在mp3压缩期间会损失一些音质。

--audio-quality 0告诉youtube-dl以最佳质量保存音频文件(转换为mp3时)。
如果没有此选项,则mp3中的5音频质量默认设置为0-9 scale,其中0是最好的质量,而9是最差的质量。因此默认情况下质量较差。 面向160kbps格式,比特率最高为opus的非高级用户的YouTube流。 Opus格式比mp3更新,并且压缩效果比mp3更好,并且保持相同的质量。因此160kbps opus = ~256kbps mp3。
当默认音频质量时(5中的0-9 scale),mp3比特率限制为160kbps,这意味着在压缩过程中会损失一些声音质量。音频质量设置为0时,mp3会提高到300kbps,从而保持原始质量。

要从某个频道下载所有电影中的音频

命令是相同的,但是您应该将链接放置到频道而不是链接到单个视频:

youtube-dl -f "bestaudio/best" -ciw -o "%(title)s.%(ext)s" -v --extract-audio --audio-quality 0 --audio-format mp3 https://www.youtube.com/c/someChannelName1232143/videos

要从播放列表下载音频

您必须添加--yes-playlist选项。
您可以放置​​指向播放列表的链接(带有playlist字的链接):

youtube-dl -f "bestaudio/best" -ciw -o "%(title)s.%(ext)s" -v --extract-audio --audio-format mp3 --audio-quality 0  --yes-playlist https://www.youtube.com/playlist?list=c29tZVZpZGVvVVJMUGFy

或在播放播放列表时从播放列表链接到其中一首歌曲(链接带有list字):

youtube-dl -f "bestaudio/best" -ciw -o "%(title)s.%(ext)s" -v --extract-audio --audio-format mp3 --audio-quality 0  --yes-playlist "https://www.youtube.com/watch?v=c29tZVZpZGVvUGxheWxpc3RQYXJ0&list=c29tZVZpZGVvTGlzdFBhcnRzc29tZVZpZGVvTGlzdFBhcnRz&index=4"

命令选项说明:

-f "bestaudio/best" <- Choose the best audio format.
As there is only audio format listed only the audio is downloaded.

-c <- (--continue) Force resume of partially downloaded files.
By default, youtube-dl will resume downloads if possible.
As docs state maybe it is default, but I put it to make sure it is set.

-i <- (--ignore-errors) Continue on download errors,
for example to skip unavailable videos in a playlist.

-w <- (--no-overtwrites) Do not overwrite files
(If something was already downloaded
and is present in the directory then continue with the next video)

-o "%(title)s.%(ext)s" <- (--output) Output filename template,
in this case it gives you file named movieTitle.mp3
where movieTitle is the title of the video on youtube.

-v <- (--verbose) Print various debugging information

--extract-audio <- (-x) Convert video files to audio-only files
(requires ffmpeg or avconv and ffprobe or avprobe)

--audio-quality 0 <- Specify ffmpeg/avconv audio quality,
insert a value between 0 (better) and 9 (worse) for VBR or a specific
bitrate like 128K (default 5).
Youtube streams for nonpremium users with variable bitrate up to 160kbps in opus format.
Opus format is newer than mp3 and has better compression than mp3
preserving the same quality. So 160kbps opus = ~ 256kbps mp3.  
When audio-quality is default (5 in 0-9 scale) mp3 bitrate
is limited to 160kbps which means that some sound quality is lost during compression.
When audio-quality is set to 0 mp3 goes up to 300kbps preserving original quality.

--audio-format mp3 <-  Specify audio format: "best", "aac", "flac", "mp3", "m4a",
"opus", "vorbis", or "wav"; "best" by default; No effect without -x (--extract-audio).
In this case we choose mp3.
Alternatively you could choose for example opus which
is oryginally provided by youtube and is newer and better than mp3
or flac which is loseless codec.

我提供的所有链接都是伪造的。我只是将一些由base64编码的随机词放入其中。因此,您必须用自己的链接替换它们才能使其正常工作。

提示:

Youtube-dl gives you opportunity to use your own youtube account to download stuff.
If your account is a premium account you can get
higher 320kbps opus bitrate which is equivalent of ~512kbps mp3.
Using your own account might be possible by setting --username and --pasword
(See Authentication Options in --help)

答案 2 :(得分:1)

这应该为您提供最佳的音质:

youtube-dl --extract-audio "https://www.youtube.com/watch?v=uWusmdmc0to"

我建议不要指定任何音频格式。如果您指定一种音频格式,那么它将不同于原始编码,并且会降低音质。

答案 3 :(得分:1)

通过以下方法检查您是否已从侧面安装了ffmpeg软件包。

sudo apt install ffmpeg
sudo pip install ffmpeg

在上面之后,我得到如下:

youtube-dl https://www.youtube.com/watch?v=6Qmnh5C4Pmo
[youtube] 6Qmnh5C4Pmo: Downloading webpage
[download] Destination: Pipenv Crash Course-6Qmnh5C4Pmo.f248.webm
[download] 100% of 33.19MiB in 00:26
[download] Destination: Pipenv Crash Course-6Qmnh5C4Pmo.f251.webm
[download] 100% of 15.15MiB in 00:09
[ffmpeg] Merging formats into &quot;Pipenv Crash Course-6Qmnh5C4Pmo.webm&quot;
Deleting original file Pipenv Crash Course-6Qmnh5C4Pmo.f248.webm (pass -k to keep)
Deleting original file Pipenv Crash Course-6Qmnh5C4Pmo.f251.webm (pass -k to keep)

答案 4 :(得分:1)

您可以尝试通过

下载所需格式的音频。
youtube-dl -f m4a https://www.youtube.com/watch\?v\=ZtrEWtk9kbo 

命令。

有时需要ffmpeg。

答案 5 :(得分:1)

我在Windows中使用蝙蝠文件,该文件将youtube网址传递到预设的参数列表,以下载最高质量的音频流并将其保存为MP3。

批处理文件包含:

youtube-dl -f bestaudio -x-音频格式mp3%*

将批处理文件与youtube-dl(我将其另存为youtube-mp3.bat)保存在同一目录中,并安装了ffmpeg

每当我想下载音频(通常对我来说是youtube DJ Mix)时,我只是将(youtube)URL传递到批处理文件。不必记住每次都要使用什么参数。

youtube-mp3 https://www.youtube.com/?v=xxxxxx

答案 6 :(得分:0)

下载最佳音频:

youtube-dl -f bestaudio https://www.youtube.com/watch?v=3_y2jVPmPBw --output "out.%(ext)s"

答案 7 :(得分:0)

这对我来说适用于以M4A(MPEG-4音频)格式提供音频的网站(例如YouTube,Facebook视频)

youtube-dl -f "bestaudio[ext=m4a]/best[ext=mp4]" -x "https://..."

由于未指定--audio-format,因此youtube-dl不会进行任何重新编码,因此不会损失音频质量。但是,可能会出现视频质量更好(ext=...不同)的情况。