- 收藏
- 加入书签
基于Quasar technologies的嵌入式视频播放器设计应用与研究
摘要:进入新时代,嵌入式、人工智能等技术日渐普及,在通信、网络、工控、医疗、电子等领域发挥着越来越重要的作用。嵌入式GUI具有轻型、占用资源少、高性能、高可靠性、便于移植和可配置等特点。基于此本文选择Quasar technologies开发环境设计视频播放器,并完成编译、调试和运行,从而进一步研究在该集成开发环境下嵌入式GUI的结构、设计和调试运行等可行性,同时也对该集成开发环境的使用优点提出见解。
关键词:Quasar technologies;嵌入式GUI;视频播放器
“十四五”规划和2035年远景目标纲要,提出了要建设数字中国,加快数字化发展的任务。加快推进产业数字化转型、推进数字产业化成为了数字时代打造数字经济新优势、推动高质量发展的客观选择。在未来基本实现社会主义现代化和面对第二个百年奋斗目标的征途上,加快发展嵌入式、人工智能等特色优势产业以及战略性新兴产业,具有更为重要的意义。基于此,结合已有的教学实践条件并从学习对象的兴趣特点等出发,我们采用嵌入式Quasar technologies(Qt)开发环境来设计一个视频播放器并通过编译、调试和运行达到应用的目的,从而使学习者掌握在嵌入式Qt开发环境下建立工程项目(Project)界面设计(GUI)程序代码编写以及相关类的应用,掌握在嵌入式Qt开发环境下编译、调试及运行等操作。具体内容如下:
一、视频播放器嵌入式GUI设计及代码编写
运行QtCreator-新建文件或工程,选择Application-Qt Widgets Application应用,设置项目名称为VideoPlayer,设置类名为MainWindow,基类为QmainWindow,头文件为mainwindow.h,源文件为mainwindow.cpp,界面文件为mainwindow.ui,接着点开mainwindow.ui放置QLabel控件和Push Button控件,并将其objectName分别命名为label和pushButton。
编写mainwindow.ui部分代码如下:
<widget class=”QMainWindow” name=”MainWindow”> 设置类名为MainWindow,基类为QMainWindow
<property name=”geometry”> 主要控件,包括布局管理器
<x>10</x> <y>10</y> <x>230</x> <y>430</y> 设置多个停靠部件及中心部件坐标
<width>537</width> <height>493</height> 设置停靠部件窗口大小为537,493
<widget class=”QPushButton” name=”pushButton”> 放置按钮控件名称为pushButton
<property name="text"> <string>播放/暂停</string> 设置按钮text为播放/暂停
在工程目录中创建名为video的目录,并将一个mp4格式的视频文件放入其中。,
编写mainwindow.cpp部分代码如下:
setWindowTitle(tr(“视频播放器”)); 设置窗体标题为”视频播放器”
flag=1;初始化播放或暂停判断变量
videoWidget->resize(600,420);定义视频播放窗体大小为600X420
player->setMedia(QUrl::fromLocalFile(“C:\\Users\\HAPPY\\Desktop\\qianrushi\\goodluck\\goodluck\\video\\1.mp4”));定义视频播放器mp4文件路径
player->play();开始视频播放
connect(ui->pushButton,&QPushButton::clicked,[=]{ 若单击播放/暂停按钮,开始判断flag
if(flag) {player->pause();flag=0;} 若flag=1,暂停播放,并将flag置为0
else {player->play();flag=1;} 否则,开始播放,并将flag置为1
如图1-1所示,执行以上程序点击“播放/暂停”按钮,可以播放或暂停播放视频。
二、视频播放器添加音量控制和进度条
编写mainwindow.ui部分代码如下:
<widget class=”QSlider” name=”horizontalSlider”>放置按钮控件名称为horizontalSlider
<widget class=”QSlider” name=”horizontalSlider_2”>放置按钮控件名称为horizontalSlider_2
在mainwindow.cpp中添加部分代码如下:
ui->horizontalSlider_2->setValue(player->volume());设置horizontalSlider_2为音量控制进度条 connect(ui->horizontalSlider_2,&QSlider::valueChanged,player,&QMediaPlayer::setVolume);监测horizontalSlider_2的音量控制进程
ui->horizontalSlider->setValue(position); 设置horizontalSlider为播放进度条并设置其值
player->setPosition(position);当horizontalSlider滑动时,设置播放进度位置
ui->horizontalSlider->setRange(0,duration); 设置horizontalSlider的范围
在mainwindow.h中定义信号与槽
如图2-1所示,执行以上程序点击“播放/暂停”按钮,可以播放或暂停播放视频。拖拽horizontalSlider可以控制播放进度,拖拽horizontalSlider_2可以控制音量。
三、结束语
通过基于Quasar technologies的嵌入式视频播放器设计、编译和运行,可以看到此方案的应用是完全可行的,当然基于Quasar technologies的开发环境是必不可少的,对于在Quasar technologies环境下如何创建Project以及具体的GUI设计以及程序代码编写也是需要充分考虑的。之所以使用Quasar technologies(QtCreator)进行设计,是考虑到QtCreator具有集成了特定于Qt的功能,对Qt类结构一目了然,集成了Qt Designer可视化布局和格式构建器等优点,实际操作使用时只需要单击一下就可以生成和运行Qt项目。
参考文献:
[1] 陆文周.QT5开发及实例 [J].2019.4
[2] 丁林松,黄丽琴..Qt4图形设计与嵌入式开发[J].2009.4
作者简介:戴军(1979-),男,汉,江苏宜兴人,江苏开放大学江苏城市职业学院讲师,主要从事ARM嵌入式系统,电子工艺等课程的教学。


京公网安备 11011302003690号