# WebRTCNativePlugin **Repository Path**: PodWareHouse/WebRTCNativePlugin ## Basic Information - **Project Name**: WebRTCNativePlugin - **Description**: Cocos的原生插件,用于播放视频流 - **Primary Language**: JavaScript - **License**: MulanPSL-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-07-06 - **Last Updated**: 2026-08-04 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # WawaduoVideo Native Plugin Cocos Creator 3.x iOS Native Plugin,基于 [WawaduoVideo](https://gitee.com/librarybyself/wawaduo-video) 实现 RTMP / WebRTC 双协议视频播放。 **仓库地址:** https://gitee.com/PodWareHouse/WebRTCNativePlugin **TS 封装:** https://gitee.com/PodWareHouse/wwd-cocos-video ## 特性 - 支持 **RTMP**(`rtc=0`)和 **WebRTC**(`rtc>0`)两种流 - 封装 `VideoPlayerVC`,统一音频、旋转、刷新等操作 - 通过 sebind 暴露到 TypeScript: - `WawaduoVideoNative` 视频播放 - `WawaduoOtherNative` 设备 UUID - `WawaduoOrientationNative` 横竖屏 - `WawaduoCameraNative` 相机/相册(回调 JPEG 临时路径 JSON) - `WawaduoPayNative` 内购 - 支持 **Git Submodule**,供多个 Cocos 项目复用 ## 目录结构 ``` WebRTCNativePlugin/ ├── cc_plugin.json ├── bridge/ │ ├── WawaduoVideoBridge.swift │ ├── WawaduoOther.swift │ ├── WawaduoOrientation.swift │ ├── WawaduoCamera.swift │ └── WawaduoPayTool.swift ├── include/ │ └── wawaduo_video_bridge.h ├── src/ │ ├── wawaduo_video_glue.cpp │ ├── WawaduoVideoBridge.mm │ └── CMakeLists.txt ├── ios/ │ └── wawaduo_video_glue-config.cmake ├── WawaduoVideoCocosBridge.podspec └── Podfile.example ``` > TypeScript 封装已独立为 [wwd-cocos-video](https://gitee.com/PodWareHouse/wwd-cocos-video) 仓库。 --- ## 多项目接入架构 ``` Cocos 项目 ├── native/plugins/wawaduo-video ← Git Submodule(本仓库) └── package.json ← npm 依赖 wwd-cocos-video ``` --- ## Git Submodule 接入(原生插件) ### 首次接入某个 Cocos 项目 ```bash cd /path/to/YourCocosProject git submodule add https://gitee.com/PodWareHouse/WebRTCNativePlugin.git native/plugins/wawaduo-video git add .gitmodules native/plugins/wawaduo-video git commit -m "接入 WawaduoVideo Native Plugin submodule" ``` ### TypeScript:npm 包接入 在 Cocos 项目根目录 `package.json` 中添加: ```json { "dependencies": { "wwd-cocos-video": "file:../wwd-cocos-video" } } ``` 或使用 Git 依赖: ```json { "dependencies": { "wwd-cocos-video": "git+https://gitee.com/PodWareHouse/wwd-cocos-video.git#v1.0.0" } } ``` ```bash npm install ``` 游戏脚本中引用: ```typescript import { createWawaduoVideo } from 'wwd-cocos-video'; ``` ### 克隆已接入 submodule 的项目 ```bash git clone --recurse-submodules https://gitee.com/xxx/YourCocosProject.git # 若已克隆但未拉 submodule git submodule update --init --recursive ``` ### 更新原生插件版本 ```bash cd native/plugins/wawaduo-video git fetch --tags git checkout v1.0.0 cd ../../.. git add native/plugins/wawaduo-video git commit -m "升级 WawaduoVideo 原生插件至 v1.0.0" ``` ### 插件发版(维护者) ```bash git tag -a v1.0.0 -m "首个稳定版本" git push origin v1.0.0 ``` --- ## iOS 构建集成 ### 1. Cocos Creator 首次 iOS 构建 - 创建 iOS 构建任务并构建一次 - 构建面板勾选 **Skip the update of Xcode project** ### 2. 配置 Podfile ```bash cp native/plugins/wawaduo-video/Podfile.example build/ios/proj/Podfile ``` 编辑 `build/ios/proj/Podfile`,将 `YourGame-mobile` 改为实际 target 名称。 ### 3. 安装 Pod 依赖 ```bash cd build/ios/proj && pod install ``` ### 4. 再次构建并运行 在 Cocos Creator 重新构建 iOS,用 Xcode 打开 `.xcworkspace`,选择 **真机** 运行。 > WawaduoVideo 依赖 SmartPlayer 真机库,**不支持 iOS 模拟器**。 --- ## TypeScript 用法 详见 [wwd-cocos-video](https://gitee.com/PodWareHouse/wwd-cocos-video) 仓库文档。 ```typescript import { createWawaduoVideo } from 'wwd-cocos-video'; // WebRTC const player = createWawaduoVideo({ type: 1, rtc: 1, url: 'webrtc://your-server/live/stream', link: 'https://your-server/rtc/v1/play/', }); // RTMP const rtmpPlayer = createWawaduoVideo({ type: 1, rtc: 0, url: 'rtmp://your-server/live/stream', link: '', }); ``` ## 相关仓库 | 仓库 | 用途 | |------|------| | [WebRTCNativePlugin](https://gitee.com/PodWareHouse/WebRTCNativePlugin) | iOS Native Plugin(本仓库) | | [wwd-cocos-video](https://gitee.com/PodWareHouse/wwd-cocos-video) | TypeScript 封装 | | [WawaduoVideo](https://gitee.com/librarybyself/wawaduo-video) | iOS 播放 SDK | ## 依赖 - Cocos Creator >= 3.6.3 - iOS >= 16.0(仅真机) - WawaduoVideo ~> 2.0.0