根据时间和部分/章节名称分割 YouTube 音频文件的程序

根据时间和部分/章节名称分割 YouTube 音频文件的程序

对于一个音乐文件和一个包含每个曲目的时间戳和名称的文本文件,是否有一个程序可以正确分离和命名每个曲目?

该文件不是翻录的 CD(cue、flac 等)。我有从 youtube 音乐文件中提取的连续普通作品文件,以及 youtube 上列出的其内容的文本列表。

(最好是 GUI)。

我在使用 Kubuntu 22.04。

答案1

人们不应该下载/提取 YouTube 音频,然后尝试根据单独的列表对其进行拆分,而应该考虑到此类音乐视频文件可能有章节,每个曲目都有一个单独的章节(就像有问题的文件一样)。

有一个 youtube-dl fork,它有一个单独下载章节的选项(实际上它还会下载完整的音频,然后将其拆分)。

它被称为yt-dlp

为了下载单独音轨中的最佳 m4a 音频:

yt-dlp -f ba[ext=m4a] --split-chapters URL

首先列出可用的格式:

yt-dlp -F URL

结果是这样的:

[youtube] QsmFrf-1wYE: Downloading webpage
[youtube] QsmFrf-1wYE: Downloading android player API JSON
[info] Available formats for QsmFrf-1wYE:
ID  EXT   RESOLUTION FPS CH │   FILESIZE  TBR PROTO │ VCODEC       VBR ACODEC      ABR ASR MORE INFO
──────────────────────────────────────────────────────────────────────────────────────────────────────────────
sb2 mhtml 48x27        0    │                 mhtml │ images                               storyboard
sb1 mhtml 80x45        0    │                 mhtml │ images                               storyboard
sb0 mhtml 160x90       0    │                 mhtml │ images                               storyboard
599 m4a   audio only      2 │   14.00MiB  31k https │ audio only       mp4a.40.5   31k 22k ultralow, m4a_dash
600 webm  audio only      2 │   17.51MiB  39k https │ audio only       opus        39k 48k ultralow, webm_dash
139 m4a   audio only      2 │   22.18MiB  49k https │ audio only       mp4a.40.5   49k 22k low, m4a_dash
249 webm  audio only      2 │   25.65MiB  56k https │ audio only       opus        56k 48k low, webm_dash
...     

然后按章节分割下载所需的音频格式:

yt-dlp -f 139 --split-chapters URL

来源:这里这里这里


为了使该过程自动化一点,我安装了xclip。快捷方式可以触发整个过程(首先选择 url,然后使用快捷方式),命令如下:

konsole --noclose -e yt-dlp -f ba[ext=m4a]  --split-chapters $(xclip -o)

或者可以创建桌面/面板启动器,包含相同的命令:

[Desktop Entry]
Exec=konsole --noclose -e yt-dlp -f ba[ext=m4a]  --split-chapters $(xclip -o)
Icon=im-youtube
Name[en_US]=Download youtube chapters
Name=Download youtube chapters 

将其拖到 Plasma 面板上后,只需选择 URL 并单击按钮:

在此处输入图片描述


Plasma 更新:在 Plasma KDE 中,xclip实际上不需要,如果剪贴板操作被使用。更多详细信息请参阅我的相关回答这里这里

相关内容