ESM6802支持基于Qt的视频播放

 2017-5-10     作者:廖光泽     [nemail]    
[lablebox]

  iMX6DL是工控主板ESM6802主板的核心芯片,该芯片支持多种常见视频格式的硬件编解码,可以流畅的播放视频。目前ESM6802文件系统中已经移植了Qt5.8.0,可全面支持qtmultimedia模块进行视频播放。用户可以方便的编写简单的QML脚本文件,就可对Qt的视频播放功能进行测试评估。

        图1为评估测试的硬件环境:ESM6802评估套件 + LVDS接口的LCD屏(分辨率800×600)


ESM6802-Qt应用支持视频播放.gif

图1 使用Qt的官方例程player进行视频播放


  下面给出一个简单的QML播放代码,用户可以直接使用进行视频播放测试:


  import QtQuick 2.0

  import QtMultimedia 5.5

 

 

  Rectangle {

      MediaPlayer {

          id: mediaplayer

          source: "example.mp4"

      }

 

      VideoOutput {

          anchors.fill: parent

          source: mediaplayer

      }

 

      MouseArea {

          id: playArea

          anchors.fill: parent

          onPressed: mediaplayer.play();

      }

  }


  使用文本编辑器(或者qtcreator)编辑上面代码,将上面代码中的example.mp4 改为自己的视频名称,然后将上面的代码保存为mediaplayer.qml, 将mediaplayer.qml和视频文件拷贝到开发板同一个目录下,如拷贝至ESM6802的工作目录/mnt/emmc。转至ESM6802工作目录:

 

  #: cd /mnt/emmc

 

然后执行如下命令:

 

  #: /usr/bin/qt5/qmlscene  mediaplayer.qml


  点击鼠标(或者直接点击触摸屏)即可开始播放视频,程序为全屏应用,Qt会自动对视频进行缩放来适应屏幕。常见的视频格式如mp4、mkv等均可作为评估测试用视频文件。


  更多的例程可以参考Qt源码中的qtmultimedia下的examples中的程序。

[lablebox]