由于我在这里找不到答案,我希望下次需要这样做时能够找到答案,这里介绍了如何将缩短的(.shn)音频文件转换为 ffmpeg 可以处理的另一种格式(例如 flac、wav)。很多旧信息都指向从 etree.org 获取编解码器并进行编译,但这些链接已失效,并且缩短功能不再开发(见下文的理由)。
当您收到此错误时:
shntool [conv]: warning: : [shn]
shntool [conv]: + you may not have permission to read file: [jlc2003-02-14d1t01.shn]
shntool [conv]: + arguments may be incorrect for decoder: [shorten]
shntool [conv]: + verify that the decoder is installed and in your PATH
shntool [conv]: + this file may be unsupported, truncated or corrupt
从https://www.wikiwand.com/en/Shorten_(文件格式):
缩短(文件格式)
来自维基百科,自由的百科全书
缩短
链接失效: etree.org/shnutils/shorten/ 缩短 文件扩展名 .shn 格式类型 音频
Shorten (SHN) 是一种用于压缩音频数据的文件格式。它是一种文件数据压缩形式,用于无损压缩 CD 质量的音频文件(44.1 kHz 16 位立体声 PCM)。Shorten 不再开发,其他无损音频编解码器(如 FLAC、Monkey's Audio (APE)、TTA 和 WavPack (WV))变得越来越流行。但是,Shorten 仍被一些人使用,因为有合法交易的音乐会录音在流通,这些录音被编码为 Shorten 文件。Shorten 文件使用 .shn 文件扩展名。
处理 Shorten 文件 由于很少有播放器或媒体编写器尝试解压缩 Shorten 文件,因此通常需要独立的解压缩程序来转换为这些应用程序可以处理的其他文件格式。一些 Rockbox 应用程序可以在不解压缩的情况下播放 Shorten 文件,并且存在适用于 Nero Burning ROM、Foobar2000 和 Winamp 的第三方 Shorten 插件。所有基于 libavcodec 的播放器和转换器都支持 Shorten 编解码器。
在 Linux 上转换 ffmpeg 或 avconv 的当前版本支持缩短格式。要在 Linux 上将当前目录中的所有 .shn 文件转换为 FLAC:
for f in *.shn; do ffmpeg -i "$f" "${f/%.shn/.flac}"; done
还有各种可以使用的 GUI 程序,例如 SoundConverter
要将 .cue 文件分割为 .flac 格式的曲目:
shnsplit -P face -o flac -t "%p -- %n - %t" -f "file.cue" "file.shn"
(文件名的各种元数据显然可以根据您的喜好排列。这也适用于 .ape 和 .wv 文件)