2016-07-25 7 views
0

Ich versuche * .avi-Datei (~ 900 MB) mit diesem Code zu spielen:Spiele * .avi Dateien mit Qt

QMediaPlayer* player = new QMediaPlayer(this); 
player->setMedia(QUrl::fromLocalFile("mes1.avi")); 
player->setVideoOutput(ui->videoWidget); 
player->play(); 

wo ui->videoWidget ist QVideoWidget und jedes Mal, wenn ich es erhalte ich diesen Fehler zu spielen (in Anwendung Ausgabekonsole)

Da google hilft nicht, das ist meine einzige Wahl ...

DirectShowPlayerService::doRender: Unresolved error code 0x80040266 (IDispatch error #102) 

EDIT1: Ich habe K-Lite Codec Pack 12.2.6 installiert.

EDIT2: Meine Anwendung ist 32bit, aber es sollte kein Problem, da K-Lite ist 32bit (source) sein.

+0

Ich googelte den Fehler und fand dies - https://stackoverflow.com/questions/20287688/qt5-video-render-error-code-80040218. Sie müssen Codecs auf Ihrem Computer installieren – sashoalm

+1

Sie können versuchen, vlc-qt – Zen

+0

@sashoalm Ich habe bereits K-Lite Codec Pack 12.2.6 installiert und es hat nicht viel getan ... – carobnodrvo

Antwort

3

Verwenden Sie vlc-qt, und Sie werden feststellen, dass es so einfach ist, alle Arten von Video auf allen Plattformen zu spielen, sogar XP, das von qt vor langer Zeit aufgegeben wurde.

+0

Das hat bei mir funktioniert, danke! – AsG