Uploaded image for project: 'Qt'
  1. Qt
  2. QTBUG-38218

Windows: Crash when playing wmv (codec WVC1) in MediaPlayer in OpenGL version

    XMLWordPrintable

Details

    • Bug
    • Resolution: Done
    • P1: Critical
    • 5.3.1
    • 5.2.1, 5.3.0 Beta1
    • GUI: OpenGL, Multimedia
    • None
    • Windows 7, OpenGL version of Qt5.3 or 5.2.1
    • c376e13abdcce32e65512db1236cb4b41d4fa1ea

    Description

      When wmv video codec is WVC1, MediaPlayer crashes in OpenGL version of Qt. ANGLE version works fine. Playing wmv works also in OpenGL version if video codec is WMV3. Example code to reproduce the problem:

      import QtQuick 2.0
      import QtMultimedia 5.0
      
      Rectangle {
      
          width: 800
          height: 600
      
          MediaPlayer {
          id: player
          autoPlay: true
          source: "file:///C:/Videos/TestVideo.wmv"
          loops: MediaPlayer.Infinite
          }
      
          VideoOutput {
          id: output
          source: player
          anchors.fill: parent
          fillMode: VideoOutput.PreserveAspectCrop
          }
      
          Rectangle{
              width: parent.width
              height: 100
              color: "lightgray"
              anchors.bottom: parent.bottom
      
              Text{
              anchors.centerIn: parent
              text: player.position / 1000 + "/" + player.duration / 1000
              }
          }
      }
      

      Crashes to this line:

       glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR);
      

      in bindTexture(int id, int w, int h, const uchar *bits) -method in
      qsgvideonode_i420.cpp

      stack trace:

      0	DrvPresentBuffers	nvoglv32		0x69cb9ebe	
      1	QSGVideoMaterial_YUV420::bindTexture	qsgvideonode_i420.cpp	282	0x5374b880	
      2	QSGVideoMaterial_YUV420::bind	qsgvideonode_i420.cpp	259	0x5374b746	
      3	QSGVideoMaterialShader_YUV420::updateState	qsgvideonode_i420.cpp	320	0x5374ba5f	
      4	QSGBatchRenderer::Renderer::renderMergedBatch	qsgbatchrenderer.cpp	2068	0x10089c56	
      5	QSGBatchRenderer::Renderer::renderBatches	qsgbatchrenderer.cpp	2260	0x1008adf1	
      6	QSGBatchRenderer::Renderer::render	qsgbatchrenderer.cpp	2433	0x1008bdaf	
      7	QSGRenderer::renderScene	qsgrenderer.cpp	261	0x100a4aad	
      8	QSGRenderer::renderScene	qsgrenderer.cpp	219	0x100a491d	
      9	QSGRenderContext::renderNextFrame	qsgcontext.cpp	377	0x100be47f	
      10	QQuickWindowPrivate::renderSceneGraph	qquickwindow.cpp	387	0x1011b95e	
      11	QSGWindowsRenderLoop::renderWindow	qsgwindowsrenderloop.cpp	459	0x100ef9a6	
      12	QSGWindowsRenderLoop::render	qsgwindowsrenderloop.cpp	400	0x100ef76c	
      13	QSGWindowsRenderLoop::event	qsgwindowsrenderloop.cpp	380	0x100ef5bc	
      14	QCoreApplicationPrivate::notify_helper	qcoreapplication.cpp	1053	0x82e7ae	
      15	QCoreApplication::notify	qcoreapplication.cpp	997	0x82e563	
      16	QGuiApplication::notify	qguiapplication.cpp	1458	0x23f74ba	
      17	QCoreApplication::notifyInternal	qcoreapplication.cpp	935	0x82e4b4	
      18	QCoreApplication::sendEvent	qcoreapplication.h	237	0x833b99	
      19	QEventDispatcherWin32Private::sendTimerEvent	qeventdispatcher_win.cpp	585	0x8c6da8	
      ...	<More>				
      

      Attachments

        No reviews matched the request. Check your Options in the drop-down menu of this sections header.

        Activity

          People

            ylopes Yoann Lopes
            qtcomsupport Qt Support
            Votes:
            1 Vote for this issue
            Watchers:
            3 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Gerrit Reviews

                There are no open Gerrit changes