Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/qt/7.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 使用Qmedia播放器从视频本地文件可视化音频波形_C++_Qt - Fatal编程技术网

C++ 使用Qmedia播放器从视频本地文件可视化音频波形

C++ 使用Qmedia播放器从视频本地文件可视化音频波形,c++,qt,C++,Qt,我尝试使用qMediaPlayer和QaudioProbe对象绘制波形以获取QAudioBuffer,但尝试时总是失败: player = new QMediaPlayer; audio = new QAudioProbe ; QAudioRecorder *recorder = new QAudioRecorder(); if (audio->setSource(player)) { // Probing succeeded, audioProbe->isVali

我尝试使用qMediaPlayer和QaudioProbe对象绘制波形以获取QAudioBuffer,但尝试时总是失败:

player =  new QMediaPlayer;
audio  =  new QAudioProbe ;
QAudioRecorder *recorder = new QAudioRecorder();


if (audio->setSource(player))
{
    // Probing succeeded, audioProbe->isValid() should be true.
    std::cout << "probing succed"<< std::endl;
    connect(audio, SIGNAL(audioBufferProbed(QAudioBuffer)), this,
                  SLOT(processBuffer(QAudioBuffer)));
}
总是返回错误

当我用QAudioRecorder替换QMediaPlayer时,setSource函数运行良好

你有什么想法吗?或者我走错方向了? 否则,还有其他方法可以从视频文件中分割音频


非常感谢QMediaPlayer上的文档,我认为由于audioAvailable属性可以更改,默认情况下audioAvailable为false。 如果没有可用的音频,setSource的文档说明

如果媒体对象不支持监控音频,则此功能 将返回false


尝试加载一个实际的媒体,它有可用的音频。在尝试设置源代码之前先检查一下,问题几乎解决了:事实上,文档示例播放器在使用qt 5.2.1 mingw 4.8构建时没有绘制波形,但是当我将工具包更改为qt 5.3 MSVC2010时,其他任何东西都无法正常工作。我也尝试使用Qt5.3MingW4.8,但它不起作用。很奇怪!!也许是虫子!!
if (audio->setSource(player))