Qt + SDL实现的实时录音并播放的程序,类似KTV唱歌

熟话说:没有什么比研究源代码本身更好的了。

所以这里不啰说了,直接上代码了。

Qt + SDL实现的KTV程序


【说明】

采集音频用的是QAudioInput

播放音频用SDL,

不用QAudioOutput是因为QAudioOutput播放声音必须是IO
他需要先打开,然后才能播放,打开的过程需要时间,所以不流畅。


【bug】

播放的时候依然会有一些杂音,暂时无法解决了,以后再解决。


【2017-06-09更新】

这里需要纠正一个事,上面提到QAudioOutput只能播放文件,事实上并非如此,当初Qt用的不熟,以为QIodevice就是文件,可以自己写个类继承QIodevice然后重载readData函数,在这个函数里面提供音频数据,这样就可以用Qt来播放音频数据流了,具体参考Qt官方例子里面的audiooutput。

这样就可以解决杂音问题了。


你可能感兴趣的:(C++,GUI,Qt编程笔记)