Qt
天行健_地势坤
因为菜所以。。。
展开
-
Qt网络编程电子白板
大家好,今天我们介绍下在Ubuntu环境中用Qt-Creator设计网络电子白板,所谓的电子白板就是指在网络上通过客户端与服务器进行图元的绘画,然后由服务端广播出去发送到多个客户端上,从而实现图元绘画的同步性,这里我们只简单介绍下客户端与服务端,后面会贴出下载链接,供大家学习进步。对于客户端的实现分为连接处理,登陆界面,绘画界面,响应事件的处理,连接我们用了TCP协议,界面我们使用了Qt的图形...原创 2018-08-11 08:44:04 · 3396 阅读 · 4 评论 -
基于Qt、FFMpeg的音视频播放器设计三(Qt界面设计及OpenGL绘制视频)
本部分总结了一下界面绘制和OpenGL绘制视频,由于使用的是Qt的openGL,功能上没有那么复杂,实现起来也比较简单,毕竟人家已经给封好的,完整的代码中使用OpenGL绘制视频,对数据的顶点shader、片元shader着色,对yuv材质的绑定,分配材质内存空间、创建材质显卡空间、纹理以及显卡绘制每帧视频时如何对齐等等一些内容,这部分内容是OpenGL中的,较为复杂,待继续学习后有一定收获再来总...原创 2018-09-14 17:31:40 · 11846 阅读 · 6 评论 -
基于Qt、FFMpeg的音视频播放器设计一(准备环境)
前言:整个项目的源代码https://download.csdn.net/download/hfuu1504011020/10672140最近刚完成基于Qt、FFMpeg的音视频播放器相关C++程序,实现了一个音视频播放器的全部功能,其中以模块为主,每一个模块,分为几个小模块,总结每个小模块,再整合起来,过程比较好理解,因为本人也是刚学习阶段,对于这样方式的总结,个人感觉还是比较容易理解的,...原创 2018-09-10 14:39:51 · 17626 阅读 · 2 评论 -
基于Qt、FFMpeg的音视频播放器设计二(FFMpeg视频处理之类封装)
在上一篇中我们实现了视频的解码、格式转换,但其基本是堆出来的代码,可复用性以及扩展性比较低,现在我们对它进行类的封装。这里我们把它分为四个小部分。1、重构封装FFMpeg类完成打开和关闭视频接口2、重构读取视频帧接口3、重构解码接口4、重构ToRGB接口一、重构封装FFMpeg类完成打开和关闭视频接口我们使用VS的类向导在该项目下添加XFFMpeg类,将上一篇中编辑好的视频...原创 2018-09-12 17:41:21 · 6441 阅读 · 6 评论 -
基于Qt、FFMpeg的音视频播放器设计五(FFMpeg音频实现)
对于音频部分,主要从以下几个部分实现。1、音频播放的启动、停止、暂停、缓冲写入接口实现2、ffmpeg音频解码器打开和音频解码3、ffmpeg音频重采样标准化音频的输出格式4、多线程和缓冲队列实现音视频同步播放一、音频播放的启动和停止接口实现首先我们创建一个音频播放类XAudioPlay,使用单例模式,提供一个接口,在XAudioPlay.cpp中对此接口重新实现,申明如下...原创 2018-09-17 17:12:09 · 10946 阅读 · 10 评论 -
基于Qt、FFMpeg的音视频播放器设计二(FFMpeg视频处理)
在上一篇中我们介绍了如何在VS2013中配置文件以及FFMpeg的开发环境准备,本篇我们说下视频处理的原理以及实现。对于视频的处理我们这里对它分开总结,不然看起来会显得很冗余复杂,不易理解,主要分为以下几方面。1、打开视频获取视频信息2、读取视频分析视频包3、打开视频解码器4、视频解码并分析H264解码5、打开格式转换和缩放6、视频转RGB并缩放一、打开视频获取视频信息...原创 2018-09-11 16:08:11 · 10753 阅读 · 4 评论 -
Qt局域网聊天(群聊和私聊)
本次设计是一个简易的局域网聊天,功能设计主要分为群聊和私聊两部分,每部分都支持基础聊天以及文件传输功能。参考了《Qt及Qt Quick开发实战精解》中群聊实例,在群聊的基础设计了私聊这部分内容以及其他一些功能。下面我们就介绍下整体的设计以及实现。设计时这里用的是主机的ip地址,可使用多台主机运行程序进行测试,确保多台主机连接同一局域网,并禁用本地连接以及其他的IP地址,保证只有本台主机的局域网...原创 2018-08-21 14:54:16 · 15591 阅读 · 29 评论 -
基于Qt、FFMpeg的音视频播放器设计四(视频播放进度控制)
上面介绍了如何使用opengl绘制视频和Qt的界面设计,也比较简单,现在我们看下如何控制视频播放及进度的控制,内容主要分为以下几个部分1、创建解码线程控制播放速度2、通过Qt打开外部视频3、视频总时间显示和播放的当前时间显示4、进度条显示播放进度、拖动进度条控制播放位置5、控制视频播放和暂停6、视频显示和窗口大小变化同步7、重载Qt滑动条类鼠标点击移动滑动条并跳转到相应...原创 2018-09-15 15:16:27 · 15370 阅读 · 7 评论