音频头尾静音的处理

经过我的一些尝试,找到一个可以去除头尾静音的方法:
ffmpeg.exe -i test.txt.mp3 -af silenceremove=1:0:-50dB,areverse,silenceremove=1:0:-50dB,areverse -c:a libmp3lame output1.mp3

原文地址: 如何使用ffmpeg 去除MP3音频文件头部与尾部的静音数据_ffmpeg 静音检测-CSDN博客

经过这样处理,即使indextts生成的语音前后都带有静音部分,都能处理得很彻底。

然后定位的问题,我也尝试了一些方法,大致思路如下:
原始音频信息:
音频起始静音(5秒)+音频1(10秒)+音频1后静音(1秒)+音频2(4秒)+音频2后静音(5秒)=总时长(25秒)

indextts生成音频:
1、起始时间对齐:
音频起始静音(5秒)+音频1(8秒)+音频1后静音(1+2秒)秒+音频2(5秒)+音频2后静音(5-1秒)=总时长25秒
2、结束时间对齐:
音频起始静音(5+2秒)+音频1(8秒)+音频1后静音(1秒)秒+音频2(5秒)+音频2后静音(5-1秒)=总时长25秒
这里有个特例,就是音频1后的静音太短,即使选择以结束时间对齐,仍会采用起始时间对齐的方式

我前两周用这个方法做了个简单测试,定位还挺理想的,抛砖引玉一下,也没太花心思组织语言,希望大佬能理解我的意思

了解.但是目前项目里没集成ffmpeg,所以也不好处理.我到时候加一个生成后插件处理吧

已经实现

  1. 升级到1.103.40以上版本
  2. 安装 插件下载列表 1.0.6版本(或以上)的tts插件
  3. 重启软件
  4. 打开插件配置
  5. 下载ffmpeg;用我预设的或者您有自己的填入都可以
  6. 激活插件

  1. 生成,生成后自动使用;这里处理过后,连接音频的时候就会使用处理后的进行连接