资源简介
从零开始学习音视频编程技术(41) H.264播放器
ffmpeg4.1解码h264和h265,并使用Qt的OpenGL显示播放的例子
这是Qt的工程,建议使用Qt Creator 打开
Qt5.6.2(vs2013/mingw) + ffmpeg4.1
1.程序可以在windows/linux下直接编译使用。
2.windows下的库为官网直接下载的。
3.linux下已经编译好的库为centos6.5(64位)(gcc 版本 4.4.7)下编译的,如需32位的库请自行编译。
关于代码的解释 请参考:
http://blog.yundiantech.com/?log=blog&id=41
ffmpeg4.1解码h264和h265,并使用Qt的OpenGL显示播放的例子
这是Qt的工程,建议使用Qt Creator 打开
Qt5.6.2(vs2013/mingw) + ffmpeg4.1
1.程序可以在windows/linux下直接编译使用。
2.windows下的库为官网直接下载的。
3.linux下已经编译好的库为centos6.5(64位)(gcc 版本 4.4.7)下编译的,如需32位的库请自行编译。
关于代码的解释 请参考:
http://blog.yundiantech.com/?log=blog&id=41
代码片段和文件信息
#include “AppConfig.h“
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include ject>
#include
#include
#include ject>
#include
#if defined(WIN32)
#include
#include
#include
#include //C (Windows) access
#else
#include
#include
#include
void Sleep(long mSeconds);
//{
// usleep(mSeconds * 1000);
//}
#endif
QString AppConfig::APPID = “{a1db97ad-b8ed-11e9-a297-0235d2b38928}“;
int AppConfig::VERSION = 1;
QString AppConfig::VERSION_NAME = “2.1.3“;
MainWindow *AppConfig::gMainWindow = NULL;
QRect AppConfig::gMainWindowRect;
QRect AppConfig::gScreenRect;
bool AppConfig::gVideoKeepAspectRatio = false; //按比例显示
bool AppConfig::gVideoHardDecoder = false; //硬解解码
QString AppConfig::gVideoFilePath;
QString AppConfig::AppDataPath_Main;
QString AppConfig::AppDataPath_Data;
QString AppConfig::AppDataPath_Tmp;
QString AppConfig::AppDataPath_TmpFile;
QString AppConfig::AppFilePath_Log;
QString AppConfig::AppFilePath_LogFile;
QString AppConfig::AppFilePath_EtcFile;
AppConfig::AppConfig()
{
}
void AppConfig::MakeDir(QString dirName)
{
QDir dir;
dir.mkpath(dirName);
}
void AppConfig::InitAllDataPath()
{
#if defined(WIN32)
///windows数据存储在C盘的数据目录下
QFileInfo fileInfo(QCoreApplication::applicationFilePath());
QString exeFileName = fileInfo.baseName(); //当前程序名字
QString dataPath = QStandardPaths::writableLocation(QStandardPaths::AppDataLocation);
if (dataPath.right(exeFileName.length()) == exeFileName)
{
dataPath = dataPath.left(dataPath.length() - exeFileName.length());
}
if (!dataPath.endsWith(“/“))
{
dataPath += “/“;
}
#else
///Linux则放在程序所在目录下的data目录下
QFileInfo fileInfo(QCoreApplication::applicationFilePath());
QString dataPath = fileInfo.absoluteDir().path();
if (!dataPath.endsWith(“/“))
{
dataPath += “/“;
}
#endif
qDebug()<<__FUNCTION__<
AppDataPath_Main = dataPath;
AppDataPath_Data = AppDataPath_Main + “/data“;
QString dirName = AppDataPath_Data + “/etc“;
MakeDir(dirName);
AppFilePath_EtcFile = dirName + “/main.conf“;
AppDataPath_Tmp = AppDataPath_Data + “/tmp“;
AppFilePath_Log = AppDataPath_Data + “/log“;
AppDataPath_TmpFile = AppDataPath_Tmp + “/tmp.txt“;
MakeDir(AppDataPath_Data);
MakeDir(AppFilePath_Log);
MakeDir(AppDataPath_Tmp);
InitLogFile();
}
QString AppConfig::bufferToString(QByteArray sendbuf)
{
QString tmp;
for (int k = 0; k
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2019-11-27 11:46 VideoDecode\
目录 0 2019-11-13 09:50 VideoDecode\bin32\
文件 31462912 2019-09-06 18:09 VideoDecode\bin32\avcodec-58.dll
文件 1304576 2019-09-06 18:09 VideoDecode\bin32\avdevice-58.dll
文件 7103488 2019-09-06 18:09 VideoDecode\bin32\avfilter-7.dll
文件 5989888 2019-09-06 18:09 VideoDecode\bin32\avformat-58.dll
文件 655360 2019-09-06 18:09 VideoDecode\bin32\avutil-56.dll
文件 293888 2019-09-06 18:09 VideoDecode\bin32\ffmpeg.exe
文件 148480 2019-09-06 18:09 VideoDecode\bin32\ffplay.exe
文件 162816 2019-09-06 18:09 VideoDecode\bin32\ffprobe.exe
文件 113664 2019-09-06 18:09 VideoDecode\bin32\postproc-55.dll
文件 311808 2019-09-06 18:09 VideoDecode\bin32\swresample-3.dll
文件 516096 2019-09-06 18:09 VideoDecode\bin32\swscale-5.dll
文件 81408 2019-11-13 15:11 VideoDecode\bin32\VideoDecode.exe
文件 3936256 2019-11-13 09:42 VideoDecode\bin32\VideoDecode.pdb
目录 0 2019-11-13 10:02 VideoDecode\bin64\
文件 45110784 2019-09-06 18:09 VideoDecode\bin64\avcodec-58.dll
文件 2423296 2019-09-06 18:09 VideoDecode\bin64\avdevice-58.dll
文件 7584768 2019-09-06 18:09 VideoDecode\bin64\avfilter-7.dll
文件 6357504 2019-09-06 18:09 VideoDecode\bin64\avformat-58.dll
文件 658944 2019-09-06 18:09 VideoDecode\bin64\avutil-56.dll
文件 292352 2019-09-06 18:09 VideoDecode\bin64\ffmpeg.exe
文件 153600 2019-09-06 18:09 VideoDecode\bin64\ffplay.exe
文件 168448 2019-09-06 18:09 VideoDecode\bin64\ffprobe.exe
文件 122880 2019-09-06 18:09 VideoDecode\bin64\postproc-55.dll
文件 424448 2019-09-06 18:09 VideoDecode\bin64\swresample-3.dll
文件 540160 2019-09-06 18:09 VideoDecode\bin64\swscale-5.dll
文件 2426176 2019-10-24 14:21 VideoDecode\bin64\VideoDecode
文件 94208 2019-11-27 11:42 VideoDecode\bin64\VideoDecode.exe
文件 3338240 2019-10-24 15:27 VideoDecode\bin64\VideoDecode.pdb
目录 0 2019-10-24 14:25 VideoDecode\data\
............此处省略342个文件信息
- 上一篇:《计算机科学导论弗罗赞》.rar
- 下一篇:海康威视标定
相关资源
- QT显示解码h264文件显示视频
- 从零开始学习音视频编程技术十六 采
- 基于live555实现的rtsp点播客户端,并将
- H265(ffmpeg_and_nginx-rtmp).7z
- 新一代高效视频编码H.265HEVC原理、标
- 新一代高效视频编码H.265/HEVC:原理、标
- FFmpeg解码
- 新一代视频压缩编码标准(H265264)
- flv解析h264
- Linux Qt、大华摄像机SDK模式、ffmpeg解码
- 使用DirectShow采集摄像头并对视音频进
- H.265_HEVC 视频编码新标准及其扩展.
- 新一代高效视频编码 H.265/HEVC原理、标
- 视频分析工具H264Visa
- H264文件分析器
- h264 的编码流程图
- spsparser.exe
- wireshark中获取h264裸码流
- 最权威的从H264码流中解析出最全的
- 抽取(重组)h264-svc各层数据的算法
- H265 RTP封装格式
- ffmpeg h264 解码动态库
- apache支持MP4flv模块mod_flvx.so和mod_h264
- 读取H264+发送RTP包的代码--VsParserSend
- webcam_v4l2_x264
- 使用mp4v2将H264+AAC合成mp4
- RTP传输h264码流
- H264 verilog 源码
- 用Ffmpeg进行h265编解码的
- Linux基于Live555从共享内存 获取rstp实时
评论
共有 条评论