使用 Spark 以外的格式通过 RTMFP 流式传输实时视频

发布于 2024-09-14 05:33:17 字数 424 浏览 5 评论 0原文

我想在服务器和单个 Flash Player 客户端之间提供低延迟 (RTMFP) 的高质量视频 (H.264)。单个客户端将控制机器人设备并通过视频流查看结果,因此低延迟非常重要。

选项 A:Flash Player 通过 Flash Player 10 中的 RTMFP 协议支持两个 P2P 节点之间的低延迟视频流。它使用 Spark 编解码器对视频进行编码,据我所知,不可能使用任何其他编解码器进行编码在播放器中。

选项 B:Flash Media Live Encoder 支持使用其他编解码器(On2 和 H.264)进行实时编码,但不能充当 RTMFP 对等体 - 此选项需要中间有 Flash Media Server。

看来我无法使用 Spark 以外的任何东西通过 RTMFP 将视频流式传输到单个客户端。我错过了什么吗?有没有某种我可能没有想到的方法来实现这两者?

I would like to serve high quality video (H.264) between a server and a single Flash Player client with low latency (RTMFP). The single client will be controlling a robotic device and seeing the results through the video stream, so low latency is important.

Option A: The Flash Player supports low latency streaming of video between two P2P nodes via the RTMFP protocol in Flash Player 10. It uses the Spark codec to encode the video and as far as I know it is not possible to encode using any other codec in the player.

Option B: Flash Media Live Encoder does support live encoding using other codecs (On2 and H.264) but cannot act as an RTMFP peer - this option would require Flash Media Server in the middle.

It seems I cannot stream video to a single client over RTMFP with anything other than Spark. Am I missing something? Is there some way of achieving both that I might not have thought of?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

随梦而飞# 2024-09-21 05:33:17

Flash 现在支持 h.264

设置如下:

if (Camera.names.length > 0) { 
    h264Settings = new H264VideoStreamSettings();
    h264Settings.setProfileLevel(H264Profile.BASELINE, H264Level.LEVEL_3_1);
    cam = Camera.getCamera();
    cam.setMode(384,288,16,true);
    cam.setKeyFrameInterval(8); 
    cam.setQuality(90000,85);
    cam.setMotionLevel(35,10000);
    cam.setLoopback(false);
    cam.addEventListener(StatusEvent.STATUS, camStatusHandler); 

}

Flash now supports h.264

Set it up like this:

if (Camera.names.length > 0) { 
    h264Settings = new H264VideoStreamSettings();
    h264Settings.setProfileLevel(H264Profile.BASELINE, H264Level.LEVEL_3_1);
    cam = Camera.getCamera();
    cam.setMode(384,288,16,true);
    cam.setKeyFrameInterval(8); 
    cam.setQuality(90000,85);
    cam.setMotionLevel(35,10000);
    cam.setLoopback(false);
    cam.addEventListener(StatusEvent.STATUS, camStatusHandler); 

}
故事↓在人 2024-09-21 05:33:17

正确,当前 Flash 播放器的发布版本不以 h.264 格式对传出(已发布)视频进行编码。但是,如果您获得了 flash 播放器 labs.adobe.com 的实验室版本,则下一版本的 flash 将支持 h.264 的实时编码(和发布)。这也适用于您的 p2p 场景。

Correct, currently the release version of the flash player doesn't encode outgoing (published) video in the h.264 format. However if you get the labs version of the flash player labs.adobe.com, the next version of flash is going to support live encoding (and publishing) of h.264. This will also work in your p2p scenario.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文