QT マルチメディア フレームワーク (5.0.1) を使用してムービーを再生しようとしていますが、H.264 でコード化されたムービーの黒い画面しか表示されません。
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
QWidget *mainWidget = new QWidget();
mainWidget->setGeometry(0,0, 1920, 1080);
QVideoWidget *widget = new QVideoWidget(mainWidget);
widget->setGeometry(0, 0, 1920, 1080);
QMediaPlayer *player = new QMediaPlayer;
QUrl localUrl = QUrl::fromLocalFile("test_mov.mov");
player->setMedia(localUrl);
qDebug() << "Player error state -> " << player->error();
qDebug() << "Media supported state -> " << QMediaPlayer::hasSupport("video/mov");
player->setVideoOutput(widget);
mainWidget->show();
player->play();
return a.exec();
}
コードは正しくコンパイルされ、コンソールに次の出力が表示されますが、ビデオ ウィジェットは黒のままです。
Player エラー状態 -> QMediaPlayer::NoError
Media supported state -> 1 // 「おそらくサポートされている」を意味します
Mac OSX 10.7.5 で Qt 5.0.1 を使用しています。ファイルはプレーヤーによって正しく再生され、ffmpeg -i test_mov.mov は
時間: 00:00:02.52、開始: 0.000000、ビットレート: 63708 kb/s ストリーム #0:0(eng): ビデオ: h264 (メイン) (avc1 / 0x31637661)、yuv420p、1920x1080、63684 kb/s、SAR 1745 :1920 DAR 349:216、25 fps、25 tbr、25 tbn、50 tbc
QT Multimedia でサポートされているフォーマットを知っている人はいますか?
ありがとうございました