《IP摄像头》推出后,就想着开发一款不带视频只有音频的“IP摄像头”,于是把IP摄像头的代码裁剪之后,《无线话筒》诞生了!跟《IP摄像头》一样,你可以通过浏览器或者VLC媒体播放器收听《无线话筒》广播的音频,浏览器端如果装有Flash插件,则用Flash渲染音频,没有的话就用html5。经过测试,Android自带的浏览器通过Flash插件也能完美播放。目前Android版和Windows Phone版已经上线,欢迎下载使用!

《无线话筒》for Android

《无线话筒》for Windows Phone

无线话筒 for Android

无线话筒 for Android

无线话筒 for Windows Phone

无线话筒 for Windows Phone

IP摄像头开始支持实时音频传输了,现在你不仅可以看到图像,还能听到声音!使用支持html5的浏览器(Chrome、Firefox、Opera或者IE9以上)来打开IP摄像头的网址,就能看到图像听到声音了。不过目前由于浏览器实现html5音频的不同,会导致声音有10秒左右的延迟。这是由于浏览器缓冲时导致的,不同浏览器的延迟时间也不同。当然你也可以使用客户端比如VLC媒体播放器来收听,并把缓冲时间调整为100ms左右就不会有延迟了,后期考虑用Flash来代替html5处理音频以降低延迟。

目前 IP摄像头 for Win8.1版和Windows Phone 8版已经支持实时音频了,并且已经上架,欢迎使用!Android版的IP摄像头也已经成功实现了,目前还处于调试阶段,最快一周内发布,欢迎到时使用!

IP摄像头的音频支持

在编写IP摄像头的Win8.1版和WP8版时遇到多线程调用StreamSocket发送数据时被意外Dispose,具体是StreamSocket是从StreamSocketListener接受连接后传过来的,然后用DataWriter发送一行数据后插入List供别的线程发送数据,问题就出现在别的线程发送数据时产生Dispose异常,可是奇怪的是我并没有将StreamSocket给Dispose,因为我还要用来传输数据呢!

问题解决:在插入List之前,将DataWriter先DetachStream,然后再给别的线程条用,这样就正常了!估计是DataWriter离开作用域后被销毁时顺便把StreamSocket给连带Dispose了,这个在使用StreamSocket时候得注意一下!当然如果用用DataReader的话也得DetachStream!

本想用Silverlight让IP摄像头支持IE,结果做出来后发现很卡顿,不流畅,按理说Silverlight性能应该比Flash好才对,找不出原因,果断用Flash插件代替,而且Flash在Win8的Modern版的IE也支持。编写后本地测试没问题,编译进IP摄像头后就不行了,一直报Error #2048安全沙箱冲突,所以就有了这篇文章以下的故事……

首先以下的内容是可以完完全全解决问题的,感谢这篇文章《完全解决AS3 中使用Socket的安全问题.》,我是网上搜了好久才找到这篇有用的,最后还看这篇《flash跨域策略文件crossdomain.xml配置详解》。依次看完这两篇就能解决这个问题。

IP摄像头里开辟了一个端口专门用于发送跨域策略文件,然后就解决这个问题了。不懂为什么在网站根目录下放策略文件不行(网络监控显示文件被Flash正常获取了),真觉得Adobe闲得蛋疼~~。所以如果你想要用IE通过外网访问IP摄像头,除了开辟IP摄像头的端口外,还要开辟IP摄像头的策略文件发送端口 8430(If you want to use IE to access IP Camera through external network, you must open up the  port 8430 to send policy file.) 。

完成以上步骤,就能用IE正常访问IP摄像头了!

View IP Camera from Modern IE

IP摄像头 for Win8 全新发布,这个版本现在完整支持把摄像头变成IP摄像头了(点击一下底部的AppBar 共享我的摄像头 即可),并且跟Windows Phone版一样支持滤镜。另外这个版本支持录制MJPG视频流,你可以在查看视频流时点击录制按钮,视频流便开始录制了。

试用版仅会在广播mjpg视频流时加入水印,除此之外与完整版无差别。

录制视频流

录制视频流

共享我的摄像头

共享我的摄像头

立即前往Windows应用商店下载