{"id":38608676,"url":"https://github.com/kunkundi/minirtc","last_synced_at":"2026-01-17T08:41:44.439Z","repository":{"id":180907683,"uuid":"665846046","full_name":"kunkundi/minirtc","owner":"kunkundi","description":"A lightweight cross-platform real-time audio and video transmission engine | 一个轻量级跨平台实时音视频传输引擎","archived":false,"fork":false,"pushed_at":"2025-12-24T10:12:21.000Z","size":12462,"stargazers_count":94,"open_issues_count":1,"forks_count":30,"subscribers_count":4,"default_branch":"reliable-transmission","last_synced_at":"2025-12-25T07:45:23.866Z","etag":null,"topics":["audio-decoding","audio-encoding","av1","h264","libdatachannel","libnice","opus","rtc","rtp","srtp","video-decoding","video-encoding","webrtc"],"latest_commit_sha":null,"homepage":"","language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"lgpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/kunkundi.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2023-07-13T06:18:39.000Z","updated_at":"2025-12-24T10:12:25.000Z","dependencies_parsed_at":"2024-04-26T09:43:29.319Z","dependency_job_id":"4869c44a-5f5f-472a-988d-3235ce84dfb1","html_url":"https://github.com/kunkundi/minirtc","commit_stats":null,"previous_names":["dijunkun/projectx","kunkundi/minirtc"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/kunkundi/minirtc","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kunkundi%2Fminirtc","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kunkundi%2Fminirtc/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kunkundi%2Fminirtc/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kunkundi%2Fminirtc/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/kunkundi","download_url":"https://codeload.github.com/kunkundi/minirtc/tar.gz/refs/heads/reliable-transmission","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kunkundi%2Fminirtc/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28504371,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-17T06:57:29.758Z","status":"ssl_error","status_checked_at":"2026-01-17T06:56:03.931Z","response_time":85,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["audio-decoding","audio-encoding","av1","h264","libdatachannel","libnice","opus","rtc","rtp","srtp","video-decoding","video-encoding","webrtc"],"created_at":"2026-01-17T08:41:44.380Z","updated_at":"2026-01-17T08:41:44.428Z","avatar_url":"https://github.com/kunkundi.png","language":"C++","funding_links":[],"categories":[],"sub_categories":[],"readme":"# MiniRTC\n\n[![Platform](https://img.shields.io/badge/platform-Windows%20%7C%20Linux%20%7C%20macOS-brightgreen.svg)]()\n[![License: LGPL v3](https://img.shields.io/badge/License-LGPL%20v3-blue.svg)](https://www.gnu.org/licenses/lgpl-3.0)  \n[![GitHub issues](https://img.shields.io/github/issues/kunkundi/minirtc.svg)]()\n[![GitHub stars](https://img.shields.io/github/stars/kunkundi/minirtc.svg?style=social)]()\n[![GitHub forks](https://img.shields.io/github/forks/kunkundi/minirtc.svg?style=social)]()\n\n[ [English](README_EN.md) / 中文 ]\n\n**轻量级跨平台实时音视频传输库**，专为 P2P 通信设计，低延迟、高性能、安全可靠。MiniRTC 提供完整的音视频编解码、加密传输和网络优化方案，并已在开源远程桌面项目 [CrossDesk](https://github.com/kunkundi/crossdesk.git) 中稳定应用。  \n\n---\n\n## 核心特性\n\n- **跨平台支持**：Windows、Linux、macOS 等主流平台  \n- **P2P 音视频传输**：点对点直连，降低延迟，提高实时性  \n- **多视频编码支持**：\n  - **AV1** 软件编解码  \n  - **H.264** 硬件加速编码/解码  \n    - Windows / Linux: **NVIDIA Video Codec SDK (NVENC/NVDEC)**  \n    - macOS: **Video Toolbox**  \n- **音频编码支持**：**Opus** 编解码，高质量低延迟  \n- **安全加密**：支持 **SRTP 协议 (RFC 3711)**，保障音视频传输安全  \n- **网络透传**：基于 **RFC 5245 (ICE)** 的 NAT 穿透，适应复杂网络环境，实现直接连接  \n- **QoS 保证**：复用 WebRTC 核心模块，实现丢包恢复、带宽管理与网络抖动补偿  \n- **轻量化设计**：核心库体积小，易于集成到各类项目  \n\n## 如何编译\n\n依赖：\n- [xmake](https://xmake.io/#/guide/installation)\n- [cmake](https://cmake.org/download/)\n\nLinux环境下需安装以下包：\n\n```\nsudo apt-get install -y software-properties-common git curl unzip build-essential libx11-dev libxrandr-dev libxinerama-dev libxcursor-dev libxi-dev libxcb-randr0-dev libxcb-xtest0-dev libxcb-xinerama0-dev libxcb-shape0-dev libxcb-xkb-dev libxcb-xfixes0-dev libxv-dev libxtst-dev libasound2-dev libsndio-dev libxcb-shm0-dev libasound2-dev libpulse-dev\n```\n编译\n```\ngit clone https://github.com/kunkundi/minirtc.git\n\ncd minirtc\n\nxmake b minirtc\n```\n#### 无 CUDA 环境下的开发支持\n\n对于未安装 **CUDA 环境** 的Linux开发者，这里提供了预配置的 [Ubuntu 22.04 Docker 镜像](https://hub.docker.com/r/crossdesk/ubuntu22.04)。  \n该镜像内置必要的构建依赖，可在容器中开箱即用，无需额外配置即可直接编译项目。\n\n进入容器，下载工程后执行：\n```\nexport CUDA_PATH=/usr/local/cuda\nexport XMAKE_GLOBALDIR=/data\n\nxmake b --root minirtc\n```\n\n## 关于 Xmake\n\n#### 安装 Xmake\n使用 curl：\n```\ncurl -fsSL https://xmake.io/shget.text | bash\n```\n使用 wget：\n```\nwget https://xmake.io/shget.text -O - | bash\n```\n使用 powershell：\n```\nirm https://xmake.io/psget.text | iex\n```\n\n#### 编译选项\n```\n# 切换编译模式\nxmake f -m debug/release\n\n# 可选编译参数\n-r ：重新构建目标\n-v ：显示详细的构建日志\n-y ：自动确认提示\n\n# 示例\nxmake b -vy minirtc\n```\n更多使用方法可参考 [Xmake官方文档](https://xmake.io/guide/quick-start.html) 。","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkunkundi%2Fminirtc","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fkunkundi%2Fminirtc","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkunkundi%2Fminirtc/lists"}