diff --git a/README.en.md b/README.en.md new file mode 100644 index 0000000000000000000000000000000000000000..40b2bd5bb02001159164e147768a0a74b8382a8a --- /dev/null +++ b/README.en.md @@ -0,0 +1,72 @@ + + +# Camera Video Streaming System + +## Project Overview +This project implements a WebSocket-based video streaming transmission system, consisting of two main components: client and server: +- Client (Client.py): Responsible for camera video capture and frame transmission +- Server (Server.py): Responsible for receiving video streams and providing Web access interface + +System features: +- Real-time video transmission +- Support for control command interaction +- Auto-reconnect mechanism +- Video preview function + +## Hardware Support +Contains files related to the ESP3-S3-N16R8-CAM development board: +- Arduino firmware (ESP3-S3-N16R8-CAM.ino) +- Pinout definition (ESP32S3_Pinout.png) +- Camera configuration (camera_pins.h) + +## Software Architecture +``` +. +├── Client.py # Client main program +├── Server.py # Server main program +└── ESP3-S3-N16R8-CAM/ # Hardware-related files +``` + +## Installation Requirements +```bash +pip install websockets flask +``` + +## Usage Instructions + +### Starting the Server +```bash +python Server.py +``` + +### Starting the Client +```bash` +python Client.py +``` + +### Key Features +- Real-time video streaming transmission +- Remote control command handling +- Auto-reconnect mechanism +- Video preview display + +## API Documentation + +### Client Methods +- `connect_to_server()` - Connect to the video server +- `send_frame()` - Send video frames +- `handle_control_command()` - Process control commands + +### Server Methods +- `handle_websocket()` - Manage WebSocket connections +- `broadcast_frame()` - Broadcast video frames +- `send_control_command()` - Send control commands + +## Configuration Options +- Server address and port +- Camera ID +- Video frame rate and quality +- Image size adjustment + +## License +No explicit license information was found, please contact the project maintainer to obtain authorization details. \ No newline at end of file diff --git a/README.md b/README.md new file mode 100644 index 0000000000000000000000000000000000000000..af3e1c8aaae34594be0daf98abd581d59dc09dc8 --- /dev/null +++ b/README.md @@ -0,0 +1,70 @@ +# 摄像头视频流传输系统 + +## 项目简介 +本项目实现了一个基于WebSocket的视频流传输系统,包含客户端和服务端两个主要组件: +- 客户端(Client.py):负责摄像头视频采集和帧传输 +- 服务端(Server.py):负责接收视频流并提供Web访问接口 + +系统特点: +- 实时视频传输 +- 支持控制指令交互 +- 自动重连机制 +- 视频预览功能 + +## 硬件支持 +包含ESP3-S3-N16R8-CAM开发板的相关文件: +- Arduino固件(ESP3-S3-N16R8-CAM.ino) +- 引脚定义(ESP32S3_Pinout.png) +- 摄像头配置(camera_pins.h) + +## 软件架构 +``` +. +├── Client.py # 客户端主程序 +├── Server.py # 服务端主程序 +└── ESP3-S3-N16R8-CAM/ # 硬件相关文件 +``` + +## 安装依赖 +```bash +pip install websockets flask +``` + +## 使用说明 + +### 启动服务端 +```bash +python Server.py +``` + +### 启动客户端 +```bash +python Client.py +``` + +### 主要功能 +- 实时视频流传输 +- 远程控制指令处理 +- 自动重连机制 +- 视频预览显示 + +## API文档 + +### 客户端方法 +- `connect_to_server()` - 连接到视频服务器 +- `send_frame()` - 发送视频帧 +- `handle_control_command()` - 处理控制指令 + +### 服务端方法 +- `handle_websocket()` - 处理WebSocket连接 +- `broadcast_frame()` - 广播视频帧 +- `send_control_command()` - 发送控制指令 + +## 配置选项 +- 服务器地址和端口 +- 摄像头ID +- 视频帧率和质量 +- 图像尺寸调整 + +## 许可证 +未找到明确的许可证信息,请联系项目维护者获取授权详情。 \ No newline at end of file