是否有命令行工具或 ffmpeg / sox 命令来生成语音标签?类似于大胆的声音查找器。输出中只需要 timeStart 和 timeEnd。优选地,从给定的 timeStart 到给定的 timeEnd 生成。
问问题
502 次
2 回答
2
静音检测过滤器将打印出静音读数。您可以将每个静音结束与下一个静音开始配对以识别语音片段。如果第一个静音起始值不为零,则第一个语音段为 0 到该值。否则,您可以丢弃它。
要将过滤器输出记录到文件中,请将其与元数据过滤器配对。
ffmpeg -i out_.mp3 -af "silencedetect=noise=-18dB:d=0.15,ametadata=mode=print:file=vol.txt" -f null -
于 2017-09-07T14:32:54.513 回答
1
1- 提取时间:
ffmpeg -i input.mp3 -ss 00:00:00 -to 00:10:00 -acodec copy output.mp3
2-执行静默检测:
ffmpeg -i output.mp3 -af silencedetect=noise=-18dB:d=0.15 -f null - 2> vol.txt
3- 使用 javaScript 生成标签:
var inp=document.getElementById("inp"), outp=document.getElementById("outp");
var c, st=[], et=[], a=inp.value.split('\n');
for(var i=1; i<a.length; i++){
c=a[i].split(' | ');
(c.length==1?et.push(c[0].split(' ')[4]):st.push(c[0].split(' ')[4]) )
};
var t='';
for (var i=0;i<et.length; i++){
t+=st[i]+'\t'+et[i]+'\t'+(i+1)+'\n'
};
outp.value=t;
于 2017-09-07T13:05:20.897 回答