首页 > 解决方案 > 是否可以在 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>

标签: javascriptflashvideo.jscesium

解决方案


我有一个解决方案:

使用VLC等视频服务器接收流并作为http链接重新发送流,然后使用nginx代理或其他方式确保新发送的流与cesium应用程序在同一源下,然后加载视频cesium 中的元素(使用 http 链接作为源),就像在官方沙盒演示中一样。似乎不适用于 rtmp,但适用于其他格式。

它有效,但似乎 VLC 在性能方面不是很好。


推荐阅读