作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试在 QT 中实现变调器。所以我需要从麦克风获取原始数据,以某种方式对其进行转换并播放。但我不知道如何获取原始数据,将其发送到缓冲区,然后在转换后播放。目前我正在做类似的事情,但这是在没有缓冲区的情况下工作的,我无法更改将要播放的数据。
QAudioFormat format;
format.setSampleRate(96000);
format.setChannelCount(1);
format.setSampleSize(32);
format.setCodec("audio/pcm");
format.setByteOrder(QAudioFormat::LittleEndian);
format.setSampleType(QAudioFormat::UnSignedInt);
audio = new QAudioInput(format, this);
connect(audio, SIGNAL(stateChanged(QAudio::State)), this, SLOT(handleStateChanged(QAudio::State)));
QIODevice* device = audio->start();
connect(device,SIGNAL(readyRead()),this,SLOT(process()));
QAudioOutput* output = new QAudioOutput(format, this);
output->start(device);
有什么方法可以做我想做的事吗?
最佳答案
有一个 QAudio
类值得研究。
想到的其他选项是 QIODevice
和 QDataStream
。
关于qt - QT有没有办法从麦克风获取原始音频数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29042461/
我是一名优秀的程序员,十分优秀!