- 49
- 0
- 约3.73千字
- 约 4页
- 2016-12-03 发布于贵州
- 举报
基于Qt4网络视频播放器简介
基于Qt4的网络视频播放器简介
l软件功能简介及用法
该播放器可以在Windows、Linux和s3c2440开发板上播放各种格式的多媒体文件,以及流媒体网络视频文件。不管在哪个平台下运行,源代码均不需要修改,只需在相应系统环境下重新编译即可。如果要在x86(Windows和Linux)上运行,需要把工程目录下的widget_x86.ui复制一份,名为widget.ui, 如果要在开发板上运行,则应把工程目录下的widget_s3c2440.ui同样复制一份,名字也为widget.ui,因为该工程默认是使用widget.ui文件进行编译的。如果拷贝到其它机器上编译,可能会出现编译出错的情况,此时需要修改Qt工程Projects的“Build directory”的路径,再Rebuild即可。
播放器在Windows下运行画面如下图:
该播放器的用法与大多数视频播放器一样。具备播放,暂停,停止,上一首,下一首,播放进度显示和调节,音量调节,播放速度设置等基本功能。【速度设置】按钮用来设置播放的速度,正常速度值为0.0。【时间跳转】按钮用来跳转置指定的时间进度。另外,播放器右侧还有两个播放列表,分别是本地播放列表和网络播放列表,用来播放本地文件和流媒体http服务器上的文件。【打开】按钮用来添加本地文件,【删除】按钮用来删除本地播放列表的一项。网络播放列表项不可删除。在播放的同时,会实时显示多媒体文件的总播放时间和当前播放的进度时间,播放百分比(%),以及当前电脑的时间。同时播放器窗口标题会显示正在播放的文件名。
播放器的实现
单机播放的实现:
我控制mplayer播放视频是通过mplayer所谓的slave模式mplayer /home/linux/01.mp3 -quiet –slave,体验下效果。
现在来探讨一下slave模式:所谓的slave模式,就是mplayer在运行过程中能够接收用户的输入命令行,具体支持哪些命令行,能够通过mplayer -input cmdlist这条命令来得到,在Mplayer源码的slave.txt中也有对这些命令有详细的讲解。Slave模式下工作的Mplayer可以和系统的标准输入、输出进行信息交互。
Qt给我们提供了方便的实现方法。
通过定义一个QProcess对象调用已编译好的Mplayer。
QProcess *process = new QProcess();
process-setProcessChannelMode(QProcess::MergedChannels);
Process-start(“mplayer –ac mad xxxxx”);
在命令中添加 -slave 和 -quiet就可以通过命令设置Mplayer实现相应的功能。在mplayer源码中的,slave.txt中对这些命令有详细的讲解。
Process-start(“mplayer –slave –quiet –ac mad xxxxx”);1) 暂停功能
通过如下代码可以设置Mplayer暂停。
process-write(“pause ”);
执行这段代码的时候如果是播放状态就会暂停,暂停状态时就会继续播放。
2获取播放文件的总时间和当前播放进度
执行下面代码时,Mplayer将时间在标准输出显示。
process-write(get_time_pos );
process-write(get_time_length );
通过如下代码即可读出我们需要的信息:
connect(process,SIGNAL(readyReadStandardOutput()),this,SLOT(dataRecieve ()));
process有可读取的信息时,发出信号,在槽函数dataRecieve ()中读取信息。
void MPlayer::back_message_slots()
{
while(process-canReadLine())
{
QByteArray b=p-readLine();
// b即为读取的信息我们可以根据需要取我们要的信息如
//文件总时间为:ANS_LENGTH=.00
//当前时间为:ANS_TIME_POSITION=23.00……
}
}
3)快进功能
seek value [type]
Seek to some place in the movie.
0 is a relative seek of +/- value seconds (default).
1 is a seek to value % in the movie.
2 is a seek to an absolute position of value seconds.
下面代码即可实现快进功能:
pr
您可能关注的文档
- 城镇高中“语学困生”的成因调查及转化策略.doc
- 域名炒客—一个域名挣不到千元就算赔.doc
- 培优生-教用-溶质质量分数的计算.doc
- 培养细胞的冻保存与复苏原理及注意事项.doc
- 培养自信心心理辅导教案.doc
- 培训学校实—发单员和发单.doc
- 基于AT8C51型单片机的号音自动播放器设计.doc
- 基于CSU112单片机的密码锁系统方案.doc
- 基于ANSS软件铸造温度场的数值模拟.doc
- 基于CS模的远程控制系统.doc
- 2025-2026学年科普版七年级下册英语Unit7 Being a Smart Shopper素养测评卷(含答案).docx
- 2025-2026学年科普版七年级下册英语Unit10 Lending a Helping Hand素养测评卷(含答案).docx
- 2025-2026学年科普版七年级下册英语Unit11 Rules Matter素养测评卷(含答案).docx
- 2025-2026学年科普版七年级下册英语Unit12 Better Together素养测评卷(含答案).docx
- 2026年中考英语语法选择专题训练(含答案).docx
- 2026中考语文二轮学思并重,涵养君子之德论语十二章、虽有佳肴、大道之行也.docx
- 中考文言文常见文化常识梳理.docx
- 中考语文二轮:内修君子德外尽忠臣心诚子书出师表修身立德主题学习.docx
- 中考语文二轮:不一样的求学路一样的成长梦送东阳马生序劝学主题学习.docx
- 中考语文二轮:《陋室铭》《爱莲说》托物寓意主题学习.docx
最近下载
- 专升本高等数学真题试卷答案.docx VIP
- 2025年重庆巴蜀中学中考自主招生保送生物理考试题 .pdf VIP
- 外研版(三起)(2024)四年级下册英语Unit 1 People at work 教案.docx
- 城镇排水管道非开挖修复更新工程技术规程.docx VIP
- 2015年 建筑标准设计图集目录.pdf VIP
- 人教 精通版 六年级下册 小学英语 知识点思维导图挂图(1-6单元).pdf
- 2026年伊春职业学院单招职业技能考试题库及答案详解(全国通用).docx VIP
- 徐州工业单招真题及答案2025.doc VIP
- 《融资租赁风险管理》课件.ppt VIP
- 长春工业大学《高等数学(D)》2025 - 2026学年第一学期期末试卷.docx VIP
原创力文档

文档评论(0)