我目前正在编写一个带有内置音频播放器的应用程序。
当我设置时QMediaPlayer
,我(总是)收到以下错误:
Cannot connect to server socket err = No such file or directory
Cannot connect to server request channel
jack server is not running or cannot be started
有一些关于此的谷歌搜索结果,但我没有找到任何解决方案来解决它。请注意,我不使用千斤顶。
到目前为止,我可以忍受该错误消息,但还有一个更糟糕的问题。大多数情况下,该应用程序运行良好并按预期运行,但偶尔会冻结。整个系统冻结。我可以转动鼠标(帧速率很差),但我不能点击任何东西或与任何其他程序交互。即使切换到文本终端Ctrl+Alt+F1
也无济于事,这让我认为驱动程序或内核模块应该存在问题。
我在调试和发布模式下尝试了mp3
和vorbis
,有和没有调试器。总是一样。没有其他警告、错误等。从控制台启动应用程序时也会发生错误(之前运行的可执行文件没有任何问题)。
系统:
Linux t420s 3.16-3-amd64 #1 SMP Debian 3.16.5-1 (2014-10-10) x86_64 GNU/Linux
Qt 5.1.1, C++11
qmake:
qmake .../CAN.pro -r -spec linux-g++-64 CONFIG+=debug
导致问题的代码部分:
QMediaPlayer* _player = 0;
_player = new QMediaPlayer(this);
...
QFile tmpFile(filename);
tmpFile.open(QIODevice::ReadWrite);
tmpFile.write(_mediaFile);
_player->setMedia(QUrl::fromLocalFile(filename)); // <-- this line causes the freezing
上次系统更新/升级是在 2014 年 11 月 9 日。
顺便说一句,整个项目都公开托管在 github 上。我在这里也问了同样的问题,但没有得到任何答案。抱歉多发帖。