将YouTube下载到mp3并使用youtube-dl将元数据(艺术家/歌曲标题)写入mp3文件

时间:2016-12-08 23:52:25

标签: metadata mp3 extract webm youtube-dl

我只使用youtube-dl从youtube视频中提取音频。 我想在下载后将元数据(即艺术家姓名和歌曲名称)写入mp3文件。我尝试完成此操作从这段代码开始:

@echo off
set dl=https://www.youtube.com/watch?v=2Y6Nne8RvaA
youtube-dl --metadata-from-title "%(artist)s - %(title)s" --extract-audio --audio-format mp3 -o "%%(title)s.%%(ext)s" --add-metadata %dl%
pause

此代码的输出为:

[youtube] 2Y6Nne8RvaA: Downloading webpage
[youtube] 2Y6Nne8RvaA: Downloading video info webpage
[youtube] 2Y6Nne8RvaA: Extracting video information
[download] Destination: Kungs vs Cookin' on 3 Burners - This Girl.webm
[download] 100% of 3.33MiB in 00:02
[fromtitle] Could not interpret title of video as "(title)s"
[ffmpeg] Adding metadata to 'Kungs vs Cookin' on 3 Burners - This Girl.webm'
[ffmpeg] Destination: Kungs vs Cookin' on 3 Burners - This Girl.mp3
Deleting original file Kungs vs Cookin' on 3 Burners - This Girl.webm (pass -k t
o keep)
Press any key to continue . . .

如您所见,代码将元数据添加到.webm文件名,但不添加到.mp3文件。将此文件写入.webm文件是没用的,因为在完成该过程后将删除此文件。 我希望将此元数据写入.mp3文件,这样当我查看文件夹中的歌曲时,它将如下所示:

enter image description here

这种格式对我很有用,因为我可以直接将这些文件输入iTunes,元数据将完整无缺!

我正在运行Windows 7,64位,Python 3.5。

1 个答案:

答案 0 :(得分:4)

该页面甚至不提供MP3文件:

$ youtube-dl --format mp3 2Y6Nne8RvaA
ERROR: requested format not available

即使你像你一样尝试了一个端点,它也不起作用:

$ youtube-dl --audio-format mp3 2Y6Nne8RvaA
$ ffprobe 'Kungs vs Cookin’ on 3 Burners - This Girl-2Y6Nne8RvaA.mkv'
Input #0, matroska,webm, from 'Kungs vs Cookin’ on 3 Burners - This Girl-2Y6Nne8RvaA.mkv':
  Duration: 00:03:17.48, start: -0.007000, bitrate: 2462 kb/s
    Stream #0:0: Video: h264 (High), yuv420p(tv, bt709, progressive), 1920x1080
    Stream #0:1(eng): Audio: opus, 48000 Hz, stereo (default)

改为使用m4a:

youtube-dl --format m4a 2Y6Nne8RvaA

您正在使用:

--extract-audio

当你可以自己下载音频时:

youtube-dl --format m4a 2Y6Nne8RvaA

您正在使用:

https://www.youtube.com/watch?v=2Y6Nne8RvaA

何时可以使用:

2Y6Nne8RvaA

您没有使用:

--youtube-skip-dash-manifest

我可以说因为这个额外的一行:

[youtube] 2Y6Nne8RvaA: Downloading video info webpage

即使一切按照你想要的方式运作,你可能仍然会有 由于ID3版本的问题:

FFmpeg metadata not showing in Windows?