我有一堆关于电话交谈的音频文件。我想尝试将音频文件分成两部分,每部分只包含一个发言者的发言。也许我需要使用语音diarization。但我该怎么做?任何人都可以给我一些线索?谢谢。 ps:Linux OS.C/C++如何分离基于不同扬声器的音频文件
回答
虽然分离个别扬声器是一个相当困难的问题,您可以在暂停时自动分割音频。这将产生一系列可能更容易管理的文件,因为演讲者经常在暂停之间切换。
这种方法需要开源的Julius语音识别解码器包。这在许多Linux软件包储存库中都可用。我使用Ubuntu multiverse存储库。
这里是网站:http://julius.sourceforge.jp/en_index.php
步骤0:安装朱利
sudo apt-get install julius
步骤1:段音频
adintool -in file -out file -filename myRecording.wav -startid 0 -freq 44100 -lv 2048 -zc 30 -headmargin 600 -tailmargin 600
-startid是将被附加到文件名
-freq起始段号在源音频文件的采样率
-lv是水平语音检测将被激活的音频
-zc是语音检测将超过的过零点要积极
-headmargin和-tailmargin是沉默的量前后各音频段后
注意-lv和-zc将不得不调整为特定的音频录制的属性,而-headmargin和-tailmargin必须根据您的特定演讲者的风格进行调整。但是,上面给出的价值对我过去的录音来说效果不错。
下面是文档:http://julius.sourceforge.jp/juliusbook/en/adintool.html
在我的经验用预处理压缩和正常化的音频提供了更好的结果和需要的朱利叶斯·参数无级调整。这些初始步骤是推荐的,但不是必需的。
该方法需要开源SoX音频工具包包。这在许多Linux软件包储存库中也是可用的。我使用Ubuntu的宇宙库。
这里是网站:http://sox.sourceforge.net
步骤-2:安装SOX
sudo apt-get install sox
步骤-1:预处理音频
sox myOriginalRecording.wav myRecording.wav gain -b -n -8 compand 0.2,0.6 4:-48,-32,-24 0 -64 0.2 gain -b -n -2
增益-b -n余额和标准化音频到给定电平
COMPAND压缩(在此情况下)的基础上的参数
注意COMPAND可以将音频需要一些时间来完全理解参数。但是,上面给出的价值对我过去的录音来说效果不错。
下面是文档:http://sox.sourceforge.net/sox.html
虽然这不会给你每次讲话者的身份也将大大简化耳朵做的任务,这最终可能在一段时间内唯一的选择。但我希望你找到实用的解决方案,如果它已经可用。
感谢您的方法 –
是的,diarization是你想要的。
有几个工具你可以看看,都是GPL。一个是LIUM spkdiarization(Java),另一个是SHoUT toolkit(C++)。 LIUM有很好的文档记录,旁边有一个脚本,SHOUT有点神秘,所以你应该遵循作者发布的指示here。
虽然我可能有点太晚了。 ;)
- 1. 如何将声音分离输出到扬声器和耳机?
- 2. 如何从扬声器录制音频?
- 3. 如何从扬声器录制音频?
- 4. 如何从扬声器diarization破坏音频文件
- 5. Windows Phone 8录音扬声器音频
- 6. 音频从左扬声器,然后从右扬声器
- 7. 如何在不同的扬声器上播放声音?
- 8. 如何改变扬声器的声音?
- 9. 如何通过三个不同的扬声器播放三个不同的音频文件?
- 10. Android:来自内部扬声器的音频文件
- 11. Android - 通过扬声器播放音频
- 12. 在扬声器之前路由音频
- 13. 发送音频dircetly到扬声器java
- 14. 麦克风/扬声器音频反馈
- 15. 开关音频输出到扬声器
- 16. 如何发送声音给扬声器
- 17. 扬声器的声音,而音频插孔在
- 18. Android声音扬声器
- 19. 通过iPhone扬声器强制播放音频文件?
- 20. 音频文件:仅通过一个扬声器播放数据?
- 21. 回声文件内容基于分离
- 22. 音频漂移当管道声音在扬声器在Node.js
- 23. 如何将音频流式传输到C#中的扬声器
- 24. 如何选择在ActionScript 3.0中播放音频的扬声器?
- 25. 如何在电话音量级别播放音频文件,而不是扬声器音量
- 26. 同时向扬声器和耳机输出音频?
- 27. 同时在耳机和扬声器上输出音频
- 28. 从单声道非MIDI音乐文件中分离乐器的音频
- 29. 如何找到主扬声器directshow音频设备
- 30. 如何在J2ME中通过扬声器播放音频
这可能是非常困难的,甚至超前艺术水平(如果你想要一些完全自动的)。但我可能是错的。 –
如果他们在同一时间谈话,它会非常非常艰难。如果他们轮流发言,则可以根据暂停对音频进行分段,并通过频率分析推断发言者的身份。 – nneonneo
我知道。我尝试了几种工具,但性能非常糟糕。我只是想知道是否有任何工具可以提供较低的diarization错误率?这个问题几乎杀了我。感谢您的时间。 –