我读过这个话题
有关如何翻录 CD 并且它运行正常。
我想提取单个音轨。我应该在以下命令中包含什么选项?
ffmpeg -f libcdio -ss 0 -i /dev/sr0 dump.flac
谢谢
答案1
我找到了一个解决方案:
使用此命令您可以查看章节详细信息
ffprobe -f libcdio -i /dev/sr0 -print_format json -show_chapters -loglevel error
输出:
{
"chapters": [
{
"id": 0,
"time_base": "1/75",
"start": 0,
"start_time": "0.000000",
"end": 37108,
"end_time": "494.773333",
"tags": {
"title": "track 01"
}
},
{
"id": 1,
"time_base": "1/75",
"start": 37108,
"start_time": "494.773333",
"end": 56868,
"end_time": "758.240000",
"tags": {
"title": "track 02"
}
},
使用此命令你可以提取你想要的曲目:
对于 track01
ffmpeg -f libcdio -ss 0 -t 494.773333 -i /dev/sr0 track01.wav
对于 track02
ffmpeg -f libcdio -ss 494.773333 -t 263.466667 -i /dev/sr0 track02.wav
其中 263.466667 是轨迹 02 的结束时间与开始时间之间的差值
等等...
答案2
您可以使用偏执狂首先抓取“位完美”的各个音轨(无需转码),然后在其上运行 ffmpeg。
使用 -B 标志将为您提供名为 eg 的曲目,track01.wav
以便您可以使用脚本将生成的文件批处理到 ffmpeg。