文件名称:Qt实现的简单处理pcm裸流的demo
文件大小:418KB
文件格式:RAR
更新时间:2023-07-10 11:12:01
PCM C++ Qt
做了个简单的处理pcm数据的demo 主线程创建一个子线程,获取QAudioOutput一个周期所需要的数据量,循环的从文件中取出一个周期的数据量压入子线程的队列。 子线程创建后返回QAudioOutput一个周期所需要的数据量,开始等待主线程压入数据,当数据队列中有数据时将数据写入QAudioOutput缓冲区,当QAudioOutput对象内部缓冲区不足存放下一个数据包时,等待一毫秒后再处理。 bytesFree()返回内部缓冲区的空闲空间的字节数,每次写入所需的数据量periodSize(),填充满内部缓冲时暂停填入,以实现连续播放。
【文件预览】:
AudioDemo
----AudioDemo.suo(18KB)
----build()
--------Debug()
----AudioDemo()
--------Resources()
--------AudioDemo.vcxproj(7KB)
--------PlayThread.h(743B)
--------GeneratedFiles()
--------main.cpp(911B)
--------PlayThread.cpp(2KB)
--------AudioDemo.vcxproj.user(565B)
--------16k.pcm(127KB)
--------AudioDemo.vcxproj.filters(2KB)
----AudioDemo.sln(894B)
----bin()
--------AudioDemo.pdb(683KB)
--------AudioDemo.exe(41KB)
--------AudioDemo.ilk(466KB)