Uya WebRTC发布v0.3.0里程碑版本:推进Chrome互通验证,解锁多方向关注亮点

发布时间:2026/6/12 19:34:36
Uya WebRTC发布v0.3.0里程碑版本:推进Chrome互通验证,解锁多方向关注亮点 Uya WebRTC发布v0.3.0里程碑版本Uya WebRTC发布了 v0.3.0 里程碑版本。这个版本继续沿着默认运行路径用Uya实现WebRTC transport的方向推进把通用PeerConnection从DataChannel - only的验证边界推进到Chrome video SDP、SRTP/VP8 RTP接收路由和host FFmpeg Chrome call手工互通。Uya简介Uya是一个正在演进中的系统编程语言和工具链目标是面向底层、网络、嵌入式和高性能服务场景提供接近C/C的控制力同时把模块、错误处理、泛型、异步、标准库和构建体验做成更适合工程协作的形态。在这个WebRTC项目里Uya主要承担三类工作协议和状态机SDP、ICE、STUN/TURN、DTLS、SRTP/SRTCP、RTP/RTCP、SCTP DataChannel、PeerConnection、stats/trace。热路径数据结构固定容量buffer、arena、ring queue、packet clone budget、jitter/reassembly、pacer。跨平台边界默认不复用libwebrtc、BoringSSL、usrsctp、libsrtp、libvpx或libopus的运行时对象只在socket、clock、线程、epoll等OS能力处保留薄FFI。本仓库还把 ./uya/bin/uya 和 ./uya/lib 纳入发布验证确保release gate使用仓库内的Uya编译器和标准库快照而不是依赖开发机上的sibling checkout。这次v0.3.0做了什么1. PeerConnection进入Chrome video验证v0.3.0 增加了PeerConnection层的video media section、addTransceiver、addTrack、processSrtpPacket 和 routeVideoFrame 路径。对应gate是UYA./uya/bin/uya bash tests/check_phase14_peer_connection_chrome_video.sh这个gate验证的不只是代码存在还会编译并运行 src/webrtc_peer_connection_chrome_video_test_main.uya确认Chrome video SDP和SRTP/VP8 RTP接收路由能走通。2. Host FFmpeg Chrome Call可手工预览make host - ffmpeg - chrome - call 提供一个本机浏览器互通页面。页面左侧是Chrome本地采集右侧是Uya remote synthetic video中间还能打开Uya收到的Chrome A/V播放窗口。页面下方输出timing、ICE状态、首帧耗时和RTP计数便于区分只是发包了和浏览器真的解码了。启动方式make host - ffmpeg - chrome - call UYA./uya/bin/uya发布验证中使用了短时smoketimeout 15s make host - ffmpeg - chrome - call UYA./uya/bin/uya HOST_CALL_DURATION_US3000000 HOST_CALL_PORT0该入口是显式reference codec / 手工互通入口。FFmpeg用于host侧codec和设备接入验证不进入默认runtime。3. FFmpeg Chrome call E2E gate本版本继续保留并加强Chrome direct call验证UYA./uya/bin/uya make test - ffmpeg - chrome - call该gate覆盖FFmpeg codec extern boundary。direct sender RTP/SRTP/SRTCP packetizer。DTLS/STUN/SRTP/SRTCP runtime控制包处理。playback smoke。synthetic manual preview。1080p MP4 manual preview。Chrome direct call的audio/video RTP与decoded frames统计。4. 发布验证使用仓库内Uya发布记录明确使用./uya/bin/uya --versionUYA./uya/bin/uya make testUYA./uya/bin/uya make test - ffmpeg - chrome - call当前仓库内编译器版本输出为v0.10.0适合关注什么这个版本适合关注以下方向纯Uya WebRTC transport的协议边界如何拆分。PeerConnection层如何从DataChannel - only走向音视频media section。不依赖libwebrtc的情况下如何逐步建立Chrome互通gate。如何把host reference codec和默认runtime边界分开既能验证互通又不把FFmpeg变成默认依赖。RK1106/RV1103B这类板端H264/G711推流示例如何复用同一套WebRTC transport。已知限制通用PeerConnection还不是完整生产级浏览器P2P音视频API采集、发送和手工互通主要由direct sender / 示例入口承接。FFmpeg仍是显式reference codec / host interop测试边界不进入默认runtime。纯Uya Opus codec bridge、../vp8 UPM path dependency、跨平台CI matrix仍在推进中。RK1106板端真实链路依赖Rockchip SDK、MPI、VENC/AENC、AI设备和现场网络环境。参考地址项目仓库READMEv0.3.0版本说明Changelog设计文档TODO / 阶段拆解