qt播放器,qt播放器全称

http://www.itjxue.com  2023-01-13 21:41  来源:未知  点击次数: 

qt格式用什么播放器

QT格式的文件需要用Qucktime播放器来播放. 但如果你要想能一般的播放器能放的话就把视频格式转换一下,我博客里有一个万视频转换器,可以去下载

记得采纳啊

怎样用QT编写一个视频播放器

它能播放几乎所有流行的音频和视频格式,相对其它播放器来说,资源占用非常少,不需要任何系统解码器就可以播放各种媒体格式,对于MPEG/XviD/DivX格式的文件支持尤其好,不仅拖动播放速度快得不可思议,而且播放破损文件时的效果也好得出奇,在低配置的机器上使用更是能凸显优势。MPlayer 本身编译自带了多种类型的解码器,不需要再安装xvid、ffdshow、ac3 filter、ogg、vobsub等等所谓看DVDrip必备解码器,也不会跟你的电脑原来所安装的解码器有任何冲突。 它支持大多数的媒体格式如: MPEG/VOB, AVI, ASF/WMA/WMV, RM, QT/MOV/MP4, Ogg/OGM, MKV, VIVO, FLI, NuppelVideo, yuv4mpeg, FILM 和 RoQ 文件。还能观看 VCD, SVCD, DVD, 3ivx, DivX 3/4/5, 甚至 WMV 电影。MPlayer 广泛地支持音视频输出驱动。它不仅可以使用 X11, Xv, DGA, OpenGL, SVGAlib, fbdev, AAlib, libcaca, DirectFB, Quartz, Mac OS X CoreVideo, 也能使用 GGI, SDL (及它们的所有驱动), 所有 VESA 兼容显卡上的 VESA (甚至不需要 X11), 某些低级的显卡相关的驱动 (如 Matrox, 3dfx 及 ATI) 和一些硬件 MPEG 解码器卡, 比如 Siemens DVB, Hauppauge PVR (IVTV), DXR2 和 DXR3/Hollywood+。它们中绝大多数支持软件或硬件缩放, 所以你可以享受全屏电影。MPlayer 具有 OSD(屏上显示) 功能显示状态信息, 有抗锯齿带阴影的漂亮大字幕和键盘控制的可视反馈。

用QT编写一个简易播放器 滑条代码怎么做 要求播放完成后停在最后

其实是很简单的一件事情,根据播放器的时间不停止的设置滑块就是了

我以前开发过一个利用mplayer做播放器的软件

下面是播放的部分代码

void?SuperPlayer::Play(const?QString?filename,?QWidget?*playarea){

????process_player-kill();

????if(filename.isNull())

????{

????????return?;

????}

????if(!playarea)

????{

????????playarea?=?this-label_movie;

????}

????this-process_player?=?new?QProcess(this);

????QString?play_args?=?PLAYER_MAIN_PATH;

????play_args?+=?PLAYER_PLAY_PARA;

????play_args?+=?filename?+?PLAYER_PLAY_OTHER_PARA;

????play_args?+=?QString::number(playarea-winId());

????process_player-setProcessChannelMode(QProcess::MergedChannels);

????this-process_player-start(play_args);

????connect(this-process_player,?SIGNAL(readyReadStandardOutput()),?this,?SLOT(PlayerDataRead()));

????connect(this-process_player,?SIGNAL(finished(int,QProcess::ExitStatus)),?this,?SLOT(PlayerFinished(int,QProcess::ExitStatus)));

????this-process_player-write("get_time_length\n");

????this-process_player-write("volume?60?2\n");

}

程序获取一个文件路径,然后组合出来参数调用外部进程,这个播放器的接口很不错,当前readyReadStandardOutput

这个信号发出的时候就说明播放器的播放就开始了,然后我们在我们的槽函数PlayerDataRead里面

void?SuperPlayer::PlayerDataRead(void){

????QString?tmp;

????this-process_player-write("get_time_pos\n");

????while(process_player-canReadLine())

????{

????????QByteArray?byte=process_player-readLine();

????????byte.replace(QByteArray("\n"),QByteArray(""));

????????if(byte.startsWith("ANS_TIME_POSITION"))

????????{

????????????tmp?=?QString(byte);

????????????this-slider_time-setValue(tmp.mid(18).toFloat());

????????????this-label_time-setText(QString::number(this-slider_time-maximum()?-

???????????????????????????????????????tmp.mid(18).toFloat())?+?"S"?);

????????}

????????else?if((byte.startsWith("ANS_LENGTH")))

????????{

????????????tmp?=?QString(byte);

????????????this-slider_time-setRange(0,?tmp.mid(11).toFloat());

????????????this-slider_time-setValue(0);

????????}

????}

}

我们利用播放器的接口不断的获取时间,然后设置对应的时间进度条,

基本就是这个逻辑

(责任编辑:IT教学网)

更多

推荐微信营销文章