我想在服务器和具有低延迟(RTMFP)的单个Flash Player客户端之间提供高质量视频(H.264)。单个客户端将控制机器人设备并通过视频流查看结果,因此低延迟非常重要。
选项A:Flash Player通过Flash Player 10中的RTMFP协议支持两个P2P节点之间的低延迟视频流。它使用Spark编解码器对视频进行编码,据我所知,无法使用播放器中的任何其他编解码器。
选项B:Flash Media Live Encoder支持使用其他编解码器(On2和H.264)进行实时编码,但不能充当RTMFP对等体 - 此选项需要中间的Flash Media Server。
似乎我无法通过RTMFP将视频流式传输到单个客户端,而不是Spark。我错过了什么吗?有没有办法实现我可能没有想到的两个?
答案 0 :(得分:1)
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);
}
答案 1 :(得分:0)
试试这个 http://red5.org/
或另一种新的P2P技术 http://labs.adobe.com/technologies/stratus/
答案 2 :(得分:0)
正确,目前发布的Flash播放器版本不对h.264格式的传出(已发布)视频进行编码。但是,如果您获得flash播放器labs.adobe.com的实验室版本,则下一版本的Flash将支持h.264的实时编码(和发布)。这也适用于您的p2p场景。