基于Qt ffmpeg opengl开发跨平台安卓实时投屏软件
[开源]基于Qt ffmpeg opengl开发跨平台安卓实时投屏软件
码云地址 https://gitee.com/Barryda/QtScrcpy
github地址 https://github.com/barry-ran/QtScrcpy
课程介绍
课程地址:https://edu.csdn.net/course/detail/10750
本课程是一个音视频相关的Qt项目的实战教程,涉及Qt开发实际项目的完整流程。基于qt ffmpeg opengl实现了安卓手机实时投屏到电脑端,电脑端键鼠控制安卓手机的功能。可以自定义按键映射从而实现键鼠玩吃鸡手游的效果。基于Qt的跨平台特性,本软件支持windows,linux,mac三大主流平台。本课程适合以下人员:
- 计算机专业的学生:学习了解公司中实战项目的开发流程,掌握自己的一个实战项目,对于毕业答辩或者找工作在简历中增加实战经验都是非常有帮助的。
- Qt新手:你可以从中学到如何使用Qt开发一个实际的项目,学习巩固Qt基础知识,使自己的Qt技能更上一层楼。
- 工作多年的程序员:常年从事Qt或者客户端开发,准备跳槽了发现很多公司要求有音视频相关的技能,那么本课程中的音视频介绍,H264视频解码,opengl渲染yuv等技术点可以带你进入音视频领域。
这里有绿色包供你下载体验,windows版本绿色包链接:https://pan.baidu.com/s/1C4OVUj4FAHnQSMyzNhBgvA 密码:a5nr 购买课程后,课程全部源码在第二章第4节课件中下载,可到QtScrcpy学员群 901736468 中和同学们学习交流,讲师会在学员群给同学答疑解惑。
软件介绍
- 截图
安卓手机实时投屏到电脑,不是模拟器!不是模拟器!不是模拟器!重要的事情说三遍
- 点此查看视频展示
- 功能
- 实时同步安卓屏幕到电脑
- 电脑鼠标键盘实时控制安卓手机
- 支持游戏映射(键鼠吃鸡)
- 优点
- 低延迟:300ms以内,720p吃鸡感觉不到延迟,具体根据视频分辨率有关
- cpu占用率低:视频渲染使用GPU
- 高分辨率:可调节,最大支持安卓终端的原生分辨率
- 跨平台:同时支持win,mac,linux
- 支持usb+无线连接
- 新增功能
- mp4录制
- 点亮屏幕,调节音量等辅助功能
- 视频分辨率调节
技术栈
-
Qt相关技术实战
- Qt多线程,多进程,自定义事件
- 网络编程
- qss自定义界面
- 键盘鼠标事件处理
-
音视频
- 音视频基础知识
- ffmpeg解码h264为yuv
- opengl基础
- opengl渲染yuv
你的收获
- 学习巩固Qt开发相关内容,提高使用Qt开发熟练度
- 掌握基于Qt开发跨平台实战项目的基本流程
- 掌握音视频相关知识
- 锻炼独立解决问题的能力,学会搜索
- 履历中增加音视频项目的经验
- 提高c++编码实战能力
- 本项目完整代码,使用QtCreator直接编译运行
- 加群与志同道合的朋友一起学习QtScrcpy,群聊号码:901736468
互相交流,共同进步
技术要求
- C++必须会
- 网络编程必须了解:知道tcp协议,会用socket
- Qt基础最好会,或者其他界面编程经验
- 转发:https://blog.csdn.net/rankun1/article/details/87970523
好工具推荐系列:跨平台安卓实时投屏软件QtScrcpy
Android实时投屏软件,此应用程序提供USB(或通过TCP/IP)连接的Android设备的显示和控制。它不需要任何root访问权限。
软件是开源的,C++/Qt:
https://gitee.com/Barryda/QtScrcpy
https://github.com/barry-ran/QtScrcpy
运行
在你的电脑上接入Android设备,然后运行程序,按顺序点击如下按钮即可连接到Android设备
无线连接步骤(保证手机和电脑在同一个局域网):
- 安卓手机端在开发者选项中打开usb调试
- 通过usb连接安卓手机到电脑
- 点击刷新设备,会看到有设备号更新出来
- 点击获取设备IP
- 点击启动adbd
- 无线连接
- 再次点击刷新设备,发现多出了一个IP地址开头的设备,选择这个设备
- 启动服务
备注:启动adbd以后不用再连着usb线了,以后连接断开都不再需要,除非安卓adbd停了需要重新启动
-----------------------
原作者的博客
https://blog.csdn.net/rankun1/article/details/87970523
QtScrcpy软件的原型