音频的推流和封装与视频是类似的,主要在于录制和重采样部分。
QT再window的安装可以参考博客: vs2017 配置QT环境
主要是在创建QT项目的时候加入 multimedia库,利用这个库用来录制音频的。
QAudioFormat
这个类是用来设置录制音频的参数的,如下:
QAudioFormat fmt;
fmt.setSampleRate(sampleRate);// 采样率, 一秒采集音频样本数量,常设置为44100
fmt.setChannelCount(channels); // 音频通道数
fmt.setSampleSize(16); //一个音频数据大小
fmt.setCodec("audio/pcm"); //编码方式,大多声卡只支持pcm,也可以通过获取参数得到声卡支持参数
fmt.setByteOrder(QAudioFormat::LittleEndian); // 小端 存储还是大端存储
fmt.setSampleType(QAudioFormat::UnSignedInt); // 数据类型,对应的是16位
下图位大端存储和小端存储区别