发布网友 发布时间:2024-09-30 14:06
共1个回答
热心网友 时间:2024-09-30 14:28
适用读者:
如果您在寻找微信小程序推流和拉流的详细指南,这篇文章将为您提供所需的知识。请注意,如果您遇到的技术难题超出了当前文章的范畴,可能本文内容并不适合您。
正文开始:
微信小程序内置了 live-pusher 和 live-player 两个组件,旨在简化实时音视频的集成过程。然而,官方文档的简略性使得许多人难以上手。在集成过程中遇到的问题,微信官方也不予回答。因此,本文旨在帮助解决这些难题,并提供一个开源示例,以便您自行测试。
您可以通过访问以下链接获取开源组件和详细的 README 文件:[GitHub 链接]
本仓库包含以下内容:
使用 Node-Media-Server 进行本地 RTMP 服务搭建
在命令行中进入文件夹 "Node-Media-Server",执行程序默认将在 1935 端口提供 RTMP 服务,并在 8000 端口提供 HTTP 流服务。
程序使用 Node-Media-Server,这是一个遵循 MIT 协议的第三方组件。
第二步:小程序 live-pusher 和 live-player 的使用指南
注册微信开放平台的小程序开发账号并申请实时音视频流权限。
个人账号可以申请此类接口权限。
获取 appid,并在微信开发者工具中导入项目,选择 "client" 文件夹,然后点击 "真机调试",使用手机微信调试 RTMP 视频流。别忘了先开启本地的 RTMP 服务。
第三步:在网页上测试小程序推的视频流
完成前两步后,您可以在网页上测试小程序推的视频流。在命令行中进入 "web-client" 文件夹,执行如下命令。
浏览器打开 "http://localhost:8080",根据网页提示填写拉取流的名称,然后点击开始按钮,您应该能看到来自小程序的视频流。
总结:关于腾讯云实时流媒体服务的讨论
如果您对腾讯云实时流媒体服务感兴趣,可以通过腾讯云申请直播服务,并利用腾讯提供的免费 20GB 流量进行测试。
腾讯云的 RTMP 服务基于私有的 UDP + RTMP 协议,使用 Google 的 QUIC 协议提供了一整套拥塞控制等方案,这使得实际测试过程中,腾讯云的实时视频延时大约在 400ms 左右。
相比之下,使用基于 TCP 传输的本地搭建的 RTMP 服务,在 4G、5G 网络下,延时约为 1 秒钟,但遇到 WIFI 等网络波动较大的情况下,延时可能达到 2 秒。
微信小程序环境只能使用腾讯云自家的 RTMP 服务,或是使用基于 TCP 的服务。否则,将无法正常运行。
请注意,本文基于 2019 年 3 月 5 日的信息,微信小程序的策略可能会发生变化,建议您定期关注相关更新。