使用ffmpeg从m4a文件中删除前导和尾随静音
我有一个音频文件,它具有前导和尾随静音,并具有以下细节: 编解码器:MPEG AAC音频(mp4a)频道:立体声采样率:44100 Hz比特率:253 kbps 我想消除静音并保持质量不变。 到目前为止我已经试过了使用ffmpeg从m4a文件中删除前导和尾随静音,ffmpeg,lossless-compression,Ffmpeg,Lossless Compression,我有一个音频文件,它具有前导和尾随静音,并具有以下细节: 编解码器:MPEG AAC音频(mp4a)频道:立体声采样率:44100 Hz比特率:253 kbps 我想消除静音并保持质量不变。 到目前为止我已经试过了 ffmpeg -i 1.m4a -af silenceremove=1:0.5:0:1:0.5:0 2.m4a 这是为了消除前导和尾随消声。 但出于某种原因,它并没有消除尾随的沉默。这似乎是一个反复出现的问题。在另一个论坛上找到以下内容 此外,ffmpeg将比特率降低到128k
ffmpeg -i 1.m4a -af silenceremove=1:0.5:0:1:0.5:0 2.m4a
这是为了消除前导和尾随消声。
但出于某种原因,它并没有消除尾随的沉默。这似乎是一个反复出现的问题。在另一个论坛上找到以下内容
此外,ffmpeg将比特率降低到128kbps。我可以通过添加-ab 253k并发出以下命令来解决此问题:
ffmpeg -i 1.m4a -af silenceremove=1:0.5:0:1:0.5:0 -ab 253k 3.m4a
现在的问题是没有删除尾随静默,当我想处理一批文件时,我不能对每个文件使用相同的比特率(比如253kbps)。我想知道如何将VBR用于此案例
我知道我可以使用sox并使用静音和反转功能来修剪静音
“本文中的示例3”
但sox存在以下问题:
sox 1.mp3 2.mp3 silence 1 0.5 1% reverse silence 1 0.5 1% reverse
您的问题实际上包括两个,一个是关于尾随静默,第二个是关于比特率 下面是第二个问题的答案: 为了保持音频源的准确质量,您可以使用
-c:pcm_s16le
和.wav容器(如果适用)
第二个选项是使用质量等级-q:an
,N(与-q:v
不同,q:v是特定于编解码器的,您最好测试不同的值,对于MP3,它是从0到9,其中0是最高质量)
如果未压缩WAV和Quality Scale都不是选项,但您仍然希望达到原始质量(因此,无需重新编码),那么答案将很棘手:
-ss时间戳
(输入开始时间)和-c:a副本