屏幕+摄像头无线传输:libcimbar 视觉通信5分钟上手
屏幕摄像头无线传输libcimbar 视觉通信5分钟上手【免费下载链接】libcimbarOptimized implementation for color-icon-matrix barcodes项目地址: https://gitcode.com/GitHub_Trending/li/libcimbar两台设备之间没有 Wi-Fi也没有蓝牙只有一块屏幕和一个摄像头——libcimbar 能靠视觉通信把它们变成一条无线传输通道屏幕显示流动的颜色矩阵条码摄像头拍下来就还原出原始文件。花 3 分钟跑通第一条数据 先克隆并编译git clone https://gitcode.com/GitHub_Trending/li/libcimbar cd libcimbar cmake . make -j$(nproc)再在机器 A 上启动发送端./dist/bin/cimbar_send -i hello.txt屏幕上会开始流动地刷新彩色方块。然后拿机器 B 对着它运行接收端./dist/bin/cimbar_recv 0 ./out几秒后hello.txt就躺在./out目录里了。发送端把文件变成流动的颜色 一条命令搞定的三种传法单文件直接跑./dist/bin/cimbar_send -i report.pdf多文件排队窗口会轮流播放./dist/bin/cimbar_send -i a.jpg b.csv超过 33MB 的大文件先用split -b 30m之类的工具分卷再整目录一起喂给它完整参数用-h看。发送窗口里发生了什么窗口里是一个 1024×1024 的彩色方块矩阵按-f指定的帧率不断刷新。多个文件按顺序轮流显示每个文件编码完自动切下一个。终端里只报异常读不到文件会打印到 stderr然后跳到下一个。实现见 src/exe/cimbar_send/send.cpp。接收端让摄像头把颜色还原成文件 对着屏幕拍就行摄像头实时接收的最小命令./dist/bin/cimbar_recv 0 ./out0是摄像头设备号./out是输出目录。录一段视频慢慢解./dist/bin/cimbar_recv 录像.mp4 ./out现场不方便实时解、或者想离线重跑时用这个。进度条不会说谎终端里刷的百分比是各文件的恢复进度got some bytes后面是这一帧成功解出的字节数。调参避坑手册 ⚙️速度优先如果你的场景是赶时间就改-f 30把显示帧率拉满。可靠性优先如果你的场景是怕丢包就改-e 64提高纠错字节数或配合-f 10放慢节奏。弱光调参如果你的场景是灯不够亮先把环境光补上、背景调浅比单纯调参数有效。远距离传输如果你的场景是距离远让摄像头正对屏幕条码占满取景框角度别歪。文件类型适配如果你的场景是传文本代码默认-z 16压缩收益最大如果传图片视频这类已压缩文件就改-z 0省掉无意义的压缩时间。踩坑提醒两端-m模式不一致是最常见的解码失败原因接收端捕获帧率别低于发送端显示帧率条码占满取景框正对屏幕拍斜拍会丢边缘数据单文件压缩后建议不超过 33MB进阶把发送端搬进浏览器 不想编译发送端有 WASM 版浏览器直接跑。想把发送功能打包成一个可离线分发的单 HTMLpython3 package-cimbar-html.py生成后双击就能用。记住这几条就够了 ✅先用默认参数跑通再调参单文件压缩后不超过 33MB摄像头正对屏幕占满取景框两端版本与模式保持一致【免费下载链接】libcimbarOptimized implementation for color-icon-matrix barcodes项目地址: https://gitcode.com/GitHub_Trending/li/libcimbar创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考