Ошибка QMediaPlayer и сегментации

#qt #segmentation-fault #audio-player #qmediaplayer

#qt #ошибка сегментации #аудиоплеер #qmediaplayer

Вопрос:

Привет, ребята, я использовал только этот простой пример для воспроизведения музыки с помощью этого кода:

 QMediaPlayer *mediaPlayer { new QMediaPlayer };
mediaPlayer->setMedia(QUrl(currentMediaFileName));
mediaPlayer->setVolume(50);
mediaPlayer->play();
 

он показывает мне в режиме отладки сообщение «Ошибка сегментации» и сбой моего приложения.

Я использовал Qt 5.15.0

Комментарии:

1. Я проверил ваш фрагмент кода, он работал без проблем (Qt 5.12). Возможно, ваша проблема откуда-то еще.

2. вы использовали мой код? или ваш код? попробуйте это в Qt5.15.0

3. Я использовал ваш код.

4. Я думал, что в моем коде возникли некоторые проблемы, но если вы откроете пример Qt «медиаплеер» и запустите его, ни видео, ни аудио не будут работать. Он показывает ошибку «DirectShowPlayerService:: doRender: неразрешенный код ошибки 0x80040266 ()»

5. установите Qt5.15.0 и Qt 4.13.0, и вы увидите. если проблема общая или она только у меня.

Ответ №1:

Похоже, это ошибка в Qt. Я нашел это сообщение об ошибке. Надеюсь, эта проблема будет решена в ближайшее время.


Исходя из моего опыта, проблема, похоже, возникает только на определенном оборудовании: у меня есть два портативных компьютера, оба с XUbuntu 21.04 и оба с использованием проприетарных драйверов, и при запуске того же кода, который я получаю SIGSEGV в одной системе, но в другой (более старой) системе проблем нет.