javascript - 是否可以在 Cesium 中显示 rtmp 直播视频?
问题描述
我想在 Cesium 中显示一个 rtmp 流视频。我创建了一个实体并使用该<video>
元素作为它的材质。当我使用本地存储的视频(以 .mp4 格式)时,它运行良好,但是当我切换到 rtmp 源并通过 videojs 播放时,它可以在<video>
元素中播放,但不能在实体上播放。rtmp使用flash播放,而普通视频不需要flash,不知是不是这个原因。
这是<video>
元素
<video id="rtmpStream" class="video-js" controls preload="auto" width="640" height="300" data-setup="{}" autoplay>
<source src="rtmp://202.69.69.180:443/webcast/bshdlive-pc" type="rtmp/flv">
</video>
解决方案
我有一个解决方案:
使用VLC等视频服务器接收流并作为http链接重新发送流,然后使用nginx代理或其他方式确保新发送的流与cesium应用程序在同一源下,然后加载视频cesium 中的元素(使用 http 链接作为源),就像在官方沙盒演示中一样。似乎不适用于 rtmp,但适用于其他格式。
它有效,但似乎 VLC 在性能方面不是很好。
推荐阅读
- html - 在现有应用程序中使用额外的 React 组件
- c# - SignalR .net 核心在 Windows 内部网中获取 401 协商请求
- python - Yolov4.conv.137 在 Yolov4 暗网中是什么意思?
- html - 如何在 Firefox 中禁用/删除“不允许 localhost:8082 再次提示您”功能
- java - 登录失败或关闭登录浏览器时的应用通知 - Keycloak.loginDesktop()
- flutter - 是否可以从回车分隔的字符串构建列表?
- validation - L8 - 从另一个 FormRequest 发出 FormRequest 失败
- javascript - JSON返回主函数的问题
- authentication - 如何从页面中分离赛普拉斯测试运行器?
- vue.js - Vue测试库,子组件接收props