不是吧,阿sir,手机也能投屏在这么小的屏幕上
本帖最后由 小伤口 于 2023-1-29 17:49 编辑小电视-smallTv 1.0.0
简介
简单来说就是通过手机和smallTv连接统一热点,能够将手机屏幕的内容投影在
smallTv 上目前功能已经实现,不过开机动画,app美化等还没做好,电脑端还没有
整合上去
技术选型
Android SDK:
compileSdk 33
minSdk 21
targetSdk 26
C语言java 8
外观
实现效果
https://www.bilibili.com/video/BV1C3411X7vh/?share_source=copy_web&vd_source=ed6061f7f22dff4a142332fc281a884a
{:9_231:}
原理
上位机:
用MediaProjectionManage申请录屏权限,得到手机录屏权限实时获取录屏帧。然后再用了一个帧监听器,
将帧转换为 jpg 图片存在内存里面另开一个线程里面实现
了udp协议将jpg图片字节数据不断发送到指定端口
esp8266:
<blockquote><b>//导入的包</b>
先连接指定wifi,连接成功之后,创建一个存储jpg字节数据的缓存,接受到数据之后,
解码显示在tft屏幕上,通过不断显示图片就形成了视频
如何复刻
材料清单:
[*] 一个esp8266(建议买最小开发板)
[*] 0.96寸的TFT(驱动器最好是ST7735,硬件接口需要时spi接口,商品详情里面都有这些介绍)
[*] 7根杜邦线
[*] 总价格:23左右
环境配置
关于ardiuno IDE 配置esp8266环境网上有很多教程
这里我只介绍配置esp8266最简单最快的方法
下载下面的文件
**** Hidden Message *****
里面是Ardiuno IDE 和一件安装esp8266环境的插件
如果要用这个插件,ardiuno IDE一定要是我文件里面的版本 arduino-1.8.13,你也可以去官网下载,我测了很多个版本,
插件都无法配置成功,目前这个版本可以行的通,貌似是之后版本的文件改变了位置,导致插件安装的位置与之后的版本对
不上,所以失效然后将下面的几个库下好
#include <ESP8266WiFi.h>
#include <TJpg_Decoder.h>
#include "SPI.h"
#include <TFT_eSPI.h> // Hardware-specific library
#include <String.h>
#include <WiFiUdp.h>
配置TFT_eSPI 库的User_Setup.h文件
点击ardiunoIDE左上角文件,再点击下方首选项按钮,将里面的路径复制,在文件中打开,进入TFT_eSPI
文件中找到User_Setup.h文件,打开它
找到这个部分
如果你的驱动器是st7735那么就取消st7735的注释,如果是其他的就取消掉对应的就行
然后就是你的TFT屏幕宽高是多少,就写多少,商品介绍里面会有这些参数的
如果下载好程序之后你的屏幕颜色不对,例如红色变成蓝色等
可以在这两行代码分别尝试一下
接线
按照下面的表接上就行,名称有可能有些不一样,但没关系,那个引脚名称与下表相似就接那个
TFTESP8266
DI(MOSI)D7
SC (SCLK、SCK)D5
CSD8
RSTD4 、RST
RS(DC、A0)D3
BLK & VCC3.3V
GNDGND
开源链接
https://gitee.com/xiaoshangkou/small-tv
所有代码我都放在了码云上,有兴趣可以去看看
运行教程
先填入手机的热点名称以及密码
<b>#define AP_SSID "小伤口" //所用WiFi的名字
#define AP_PSW"123456789" //所用WiFi的密码</b>
暂时不支持app更改smallTv连接的wifi,后续版本会推出
填写好wifi之后烧录程序到esp8266里面打开ardiunoIDE的串口,当出现下面的内容时就证明运行成功
进入https://gitee.com/xiaoshangkou/small-tv
找到AndroidApp进入下载文件到手机里面,安装app,将串口显示的ip地址,输入到app的输入框中
点击开始投影即可
本帖最后由 糖甜弯了嘴 于 2023-2-7 15:11 编辑
https://www.bilibili.com/video/BV17D4y1N7ob/?share_source=copy_web&vd_source=ed6061f7f22dff4a142332fc281a884a
录制画质看起来可能不怎么样,现实效果还是挺不错的,配套教程
2023/2/15/ 21:46
app界面大更新,不再是一个单调的页面,增加了bug反馈与建议(提交之后会自动发送到我的邮箱),增加了软件声明
顶一个! 顶顶顶~ 学习编程中的Ben 发表于 2023-1-29 17:38
顶一个!
谢谢支持{:9_236:} 糖甜弯了嘴 发表于 2023-1-29 17:47
厉害,但看上去有一段延迟? 用小号再次顶! 学习编程中的Ben 发表于 2023-1-29 17:48
厉害,但看上去有一段延迟?
是的,这个网络要求挺高的,因为我要录制,所以热点一共有三个设备连接,导致网络较差,正常情况下延迟还是比较低的 the_ben 发表于 2023-1-29 17:50
用小号再次顶!
谢谢啦~{:5_101:} 很厉害!{:7_146:} 不错加油 廿四桥 发表于 2023-1-29 18:37
很厉害!
谢谢支持{:5_109:} 高山 发表于 2023-1-29 18:59
不错加油
谢谢{:5_101:} 加油! {:7_146:} 厉害! Twilight6 发表于 2023-1-29 21:22
厉害!
过奖{:5_101:},谢谢支持{:5_101:}{:5_101:} 马上给你上精华 柿子饼同学 发表于 2023-1-29 21:45
马上给你上精华
这多不好意思{:5_101:}{:5_101:}谢谢啦 感谢分享!