# rtsp_push **Repository Path**: y141111/rtsp_push ## Basic Information - **Project Name**: rtsp_push - **Description**: rtsp 推流程序。将指流推送到流媒体服务器。自动检测源是否在线,自动推送,断开会重试。 - **Primary Language**: Go - **License**: MulanPSL-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-07-01 - **Last Updated**: 2025-07-01 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 摄像头状态检测与推流工具 这个项目是一个用于检测摄像头状态并根据摄像头是否在线进行推流操作的工具。它使用Go语言编写,并利用FFmpeg进行多媒体处理。 ## 功能特性 - 检测摄像头是否在线 - 支持使用FFmpeg或ping方法进行在线检测 - 自动切换日志文件按天记录 - 支持跨平台运行(Windows及其他操作系统) ## 安装与配置 1. 确保系统已安装Go语言环境。 2. 克隆项目到本地。 3. 安装依赖包: ```bash go get gopkg.in/yaml.v2 ``` 4. 配置`config.yml`文件以指定摄像头、服务器、FFmpeg路径和日志目录的相关信息。 ## 使用说明 1. 运行程序前,请确保配置文件`config.yml`已正确设置。 2. 执行main.go: ```bash go run main.go ``` 3. 程序会根据配置的检测方法检查摄像头状态,并自动执行相应的推流操作。 ## 配置文件示例 以下是一个`config.yml`文件的示例: ```yaml camera: rtsp_url: "rtsp://username:password@192.168.1.100:554/stream" server: rtsp_url: "rtsp://server_ip:server_port/stream" ffmpeg: path: "/path/to/ffmpeg" logging: dir: "/path/to/log/dir" detection: method: "ffmpeg" # 可选值为 "ffmpeg" 或 "ping" ``` ## 许可证 本项目遵循MIT许可证,详情请查看LICENSE文件。 ## 注意事项 - 确保FFmpeg已安装并且可以在指定路径中找到。 - 确保摄像头和服务器的RTSP地址正确无误。 - 日志目录需要保证程序有写入权限。 本工具会持续检测摄像头的状态,并在摄像头重新上线时自动恢复推流。如果检测失败,程序会等待一段时间后再次尝试。