用Qt做一个读取视频文件并显示出来的工具

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了用Qt做一个读取视频文件并显示出来的工具相关的知识,希望对你有一定的参考价值。

实现一个按钮读取视频然后在窗口中播放视频,各位大神求救!!!
QString fileName = QFileDialog::getOpenFileName(this,tr("Open Image"),".",tr("Image Files(*.png *.jpg *.mp4 *.bmp)"));
cv::VideoCapture capture(fileName);

通过这种方式读取视频,可是编译报错说不能讲参数从QString转换为string。
请问除了通过这种方式还有什么方法可以读取视频吗?

看看这个

QtAV 1.5.0 发布,更新内容如下:•
加入QtAVWidgets模块。和QtMultimeida一样,QtAV模块只包含核心的功能,只依赖QtCore和QtGui。这样部署QtQuick应用可以去掉QtWidgets模块,大概小6M。QtAV模块还是可以进行视频显示的,要用Qt5的QWindow。QtAVWidgets模块中包含了几种显示视频的widget,还有实时预览的widget。使用该模块前要在pro文件中加入QT +=avwidgets

改进音频输出接口。修复音量增大噪音问题。

提高音轨切换速度

修复wmv播放卡顿和噪音问题。这个问题存在很久很久了,最近才发现是个很低级的错误

预览更加精确

修复seek可能导致的花屏

减少ffmpeg读出来的数据的拷贝

修复QML中的几个崩溃问题

QML加入基于FBO的视频显示元素,完全重用QtAV模块的opengl渲染代码。默认已使用,要在qml文件中加入import QtAV 1.5

简化OSX的部署,无需自行编译QtAV。只要下载我发布的player安装包,安装到”应用程序”,然后运行 /Applications/player.app/sdk_osx.sh ~/Qt5.4.0/5.4/clang_64/lib 就行

windows的安装包支持HEVC硬解

大量其他改进和bug修复

播放器例子:C++和QML的两个播放器都支持进度条上实时预览了

源码: https://github.com/wang-bin/QtAV
安装包下载:https://sourceforge.net/projects/qtav/files/release/1.5.0追问

谢谢您的回答!我补充了一下问题,麻烦您看看

追答

没看到你的问题啊 ????

参考技术A 用Qt的话还是用QFile读取文件吧,功能比较强大,配套的QString或者IO
Stream的功能同样强大,处理起来会很方便

问题是你描述的太简单了,就是去Qt assistant看看QFile怎么用就可以了
参考技术B 视频软件不是那么好做的,要嵌入好多格式,怎么读取 ,方法很重要。 参考技术C cv::VideoCapture capture(fileName);改为如下就可以了
cv::VideoCapture capture(fileName.toStdString());

QT TabelWidget中显示中文

各位大神。。中秋节好。。我QT的TabelWidget控件怎么显示中文啊。??有份UTF-8的文件 用UTF-8的方式读取到内存时用toLocal8Bit显示能正常显示中文。。。。可放在TabelWidgetItem中却显示不出来。。。。肿么回事???求大牛解答。。。。小弟感激不尽。。。

用 QTextCodec 把 local 和 string 都设置成 uff-8 应该就ok了...
QTextCodec::setCodecForLocale(QTextCodec::codecForName("UTF-8"));
QTextCodec::setCodecForCStrings(QTextCodec::codecForName("UTF-8"));追问

我的QT是5.1的。。。没有QTextCodec::setCodecForCStrings这个成员函数啊。。。。。

追答

QString string = "...";
QTextCodec *codec = QTextCodec::codecForName("gb2312");
QByteArray encodedString = codec->fromUnicode(string);

这样来把你的utf-8 文件翻译成本地的编码也可以...
然后把翻译完的文件添加进QTableWidgetItem

参考技术A 让以撒的撒噶尔

以上是关于用Qt做一个读取视频文件并显示出来的工具的主要内容,如果未能解决你的问题,请参考以下文章

什么软件可以把Mp4视频里的字幕提取出来?

python_Opencv_读取视频_摄像头

MATLAB对视频文件的读取与格式转换

OpenCV 视频问题

基于FFmpeg+rtsp读取摄像头实时图像

OpenCV—读取视频,显示视频,保存视频