从wifi h.264相机直播到iPhone直播

时间:2012-01-03 03:55:18

标签: iphone streaming live h.264 decoding

我有一台标准的WiFi h.264相机,我用它作为婴儿监视器,从技术角度来说,这意味着我需要它尽可能实时。我最初的目标是对来自摄像头的流进行编码,以便可以使用本机iPhone硬件解码器,从而将结果直接,干净,清晰,实时地从我的相机传输到我的iPhone上。我真的想避免使用FFMPEG,因为它是一个软件解码器,它比硬件解码器慢。

我知道除非我使用HLS作为中间人服务器,否则iPhone不会从相机的流中获取任何内容。我绝望地试图避免在摄像头和iphone之间引入服务器,因为这意味着更多的工作,更多的带宽和更多的视频延迟。

所以我的问题是:为了从我的WiFi摄像头获得直接的h.264流以使用其硬件解码显示在我的iPhone上,我需要做什么?我目前正在使用基本配置文件。如果您需要更多详细信息,请告诉我们。

同样,你的帮助意味着很多,因为我现在已经超过6个月了。

2 个答案:

答案 0 :(得分:1)

/ *编辑(2012年1月24日)* /

我将这个答案留给历史记录,但我现在有一个更好的答案..

/ *结束编辑* / 根据您的相机品牌,Apple App Store中的IP Vision应用程序可以很好地建立直接连接。

见这里:http://itunes.apple.com/us/app/ip-vision/id300593485?mt=8

当然会有一些延迟,但我可以告诉你15年的监控经验,延迟只是生活中的一个事实。

大多数IP摄像机都能提供合理的比特率控制。

如果您可以牺牲速度的质量,请尝试获得大约32kbps的比特率。使用H.264压缩,在QVGA分辨率下,这将是大约1-2 FPS。

至于应用程序中的延迟,我无法向您提供任何具体建议,但该应用程序是免费的,如果它提供了比您赢得更好的结果!

答案 1 :(得分:0)

编辑:Doe不适用于iOS或Android 4.0。可能对网络有一些用处,所以我会把它留给其他人。

您可以从相机获取RTSP流吗?

以下是IP摄像机及其RTSP流的列表: http://www.soleratec.com/rtsp/

如果您可以创建网页,则可以使用此代码嵌入RTSP流。它适用于iOS,并且相当普遍:

<div class="box">
<OBJECT classid="clsid:9BE31822-FDAD-461B-AD51-BE1D1C159921"
 codebase="http://downloads.videolan.org/pub/videolan/vlc/latest/win32/axvlc.cab"
 width="320" height="240" id="vlc" events="True">
<param name="Src" value="rtsp://76.23.103.200:1935/live/camera.stream" />
<param name="ShowDisplay" value="True" />
<param name="AutoLoop" value="False" />
<param name="AutoPlay" value="True" />
<embed id="vlcEmb"  type="application/x-google-vlc-plugin" version="VideoLAN.VLCPlugin.2" autoplay="yes" loop="no" width="320" height="240"
 target="rtsp://76.23.103.200:1935/live/camera.stream" ></embed>
</OBJECT>
</div>

根据需要设置样式。对于iPhone 4,屏幕宽度将为320px,对于典型的IP摄像头,您可能具有3:4的宽高比,因此您希望屏幕高度为240px,如上所示。按照您想要的方式设置包含div的样式。如果您在平板电脑,笔记本电脑,PC等中调用网页,我建议将其置于中心位置。只是让它更容易看到。

示例CSS      .box {      保证金:0自动;      宽度:320px;      身高:240px;      }

注意:本答案的范围并未解决任何安全问题。就像在网络上的任何东西一样,如果你把它放在那里没有安全保障,任何人都可以抓住它。

重新解决您的延迟问题,此方法将导致大约3秒的延迟,而流速为32kbps。在3G无线网络上可能会长一点。正如我所提到的,延迟是视频生活中的事实。即使非常昂贵的解决方案也会有1-2秒的延迟。

我希望这对你有所帮助。如果您没有网站,只需创建一个免费的Wordpress网站,并将此代码粘贴到静态页面中。