我使用 youtube-dl 下载 youtube 视频并将其转换为 mp3。
youtube-dl http://www.youtube.com/watch?v=4f51DhJR0zo
-o "Alesso - Think It's Time.flv" -x -f 43 --audio-format mp3
现在看起来所有的 mp3 文件都有一个不寻常的长持续时间,使用 amarok 或类似的东西会产生很长的时间间隔而没有声音。我查看了 flv 文件,似乎时间/持续时间就在那里,但是 avconv 转换并更改了时间。所以原来的 song.flv 时长是 04:42,而 output.mp3 时长是 17:20。如果我写
$ avconv -i Rihanna\ -\ Diamonds.mp3
输出:
Input #0, mp3, from 'Rihanna - Diamonds.mp3':
Metadata:
encoder : Lavf53.21.1
Duration: 00:04:42.98, start: 0.000000, bitrate: 117 kb/s
Stream #0.0: Audio: mp3, 44100 Hz, stereo, s16, 32 kb/s
At least one output file must be specified
所以持续时间输出是正确的,但它不会在 amarok 中显示。另一方面,Vlc 会自行计算持续时间,但时间会不断变化,直到歌曲结束。
有没有办法改变全局 id3_v2 时间/持续时间标签,所以我可能会在从 youtube-dl 下载后对我的所有文件运行一个脚本。或者也许这个错误有修复?