新版的IP摄像头全平台支持UPnP端口自动映射,可以自动将端口映射出去。如果你的网关(例如路由器)可以通过外网访问(网关没有通过NAT,并且有独立的公网IP),并且网关和IP摄像头同时开启UPnP,就可以通过外网访问到IP摄像头了。不需要在路由器上设置复杂的端口映射。

默认IP摄像头会使用使用设定的端口号做为外网端口使用,如果遇到外网端口已被占用,则会自行选择外网端口。映射情况可以通过查看界面上显示的外网地址了解。当然可以通过设置关闭UPnP禁止自动映射端口。

 

iOS版IP摄像头的UPnP支持

目前,iOS,Android和Windows三大平台已经全部上架(iOS平台遇到了最快的审核速度,排队不到一天,没有申请加急)。

for Android

for Windows

for Windows Phone

iOS版《IP摄像头》已发布,欢迎使用!当前支持iOS8及以上系统,除了提供跟Android和Windows 一样的功能外,iOS版还支持在查看MJPEG视频流时进行录像,如果查看的MJPEG视频流是来自另外一台设备的IP摄像头,录像时还将包含声音。你还可以通过内置的二维码功能,实现IP摄像头的快速添加!

IP摄像头 for iOS

 

IP摄像头服务

 

IP摄像头正在录制远程MJPEG视频流

修改Wordpress

这个问题已经困扰我很久了,今天要在iPad上发一文章,发现拍的照片太大了,而Wordpress的图片编辑功能图片总是出不来,iPad又没好的APP可以改分辨率,索性开电脑排查错误。

先升级到4.1版,发现问题还在。然后就一条一条跟踪代码,在关键地方插入 var_dump 语句查看变量,终于在 文件 class-wp-image-editor-imagick.php (位于 /wp-includes )的 141行跟踪到 Exception,大概是给定的URL不能加载图片,然后在 dump URL,得到地址为 “saestor://wordpress/uploads”开头的URL,应该是Imagick不支持SAE的storage协议所致,看来不能使用Imagick而得改用gd。

解决办法很简单,改图片编辑器为gd即可,在 wp-includes下找到media.php,在第 2489行,找到 $implementations = apply_filters( ‘wp_image_editors’, array(  ‘WP_Image_Editor_Imagick’,’WP_Image_Editor_GD’ ) ); 改为 $implementations = apply_filters( ‘wp_image_editors’, array(  ‘WP_Image_Editor_GD’,’WP_Image_Editor_Imagick’ ) ); 即把GD作为优先使用的图像编辑器即可。

如下图所示,保存修改后,Wordpress即可恢复图像编辑功能。

修改Wordpress

当然Imagick的性能比GD好,只是懒得去了解如何用Imagick加载SAE的storage里面的图片,平常编辑GD足够了。注意:上面的代码行数可能因为版本不同而不同。

前几天漳州飙到30多度,感觉家里的路由猫很热,有点撑不住(基本上我一回去就有5,6台设备要连接,水星的路由猫),遂产生了加散热风扇的想法。

在不破坏外观的情况下,在底部添加了个风扇,12v的,路由器是9v供电,直接从适配器的电源线上截取,9v电压下风扇噪音很小

散热风扇

 

把路由器放到风扇上即可,运行了一天,路由器表面几乎不热。风扇在路由器底部

 

Openwrt官方的WNDR3700v4固件(14.07)不能完整利用128MB NAND的空间,刷完后只剩13MB了,网上说还有96MB左右空闲着,只能修改Makefile自己重新编译固件了,于是在Ubuntu上用官方的源编译了一天,加上网速慢,到下午4点都还没编译好。后来发现了有ImageBuilder,直接就能修改固件了,还能添加需要的ipk包进去(靠,白忙了一天……)

去Openwrt下载好 OpenWrt-ImageBuilder-ar71xx_nand-for-linux-x86_64.tar.bz2 放到 Ubuntu的home目录,提取出OpenWrt-ImageBuilder-ar71xx_nand-for-linux-x86_64这个文件夹,进入该文件夹 target/linux/ar71xx/image/ 修改Makefile文件,将wndr4300_mtdlayout=mtdparts=ar934x-nfc:256k(u-boot)ro,256k(u-boot-env)ro,256k(caldata),512k(pot),2048k(language),512k(config),3072k(traffic_meter),2048k(kernel),23552k(ubi),25600k@0x6c0000(firmware),256k(caldata_backup),-(reserved) 替换为 wndr4300_mtdlayout=mtdparts=ar934x-nfc:256k(u-boot)ro,256k(u-boot-env)ro,256k(caldata),512k(pot),2048k(language),512k(config),3072k(traffic_meter),2048k(kernel),121856k(ubi),123904k@0x6c0000(firmware),256k(caldata_backup),-(reserved)  保存,退出!此处参考 http://blog.csdn.net/magicdog2009/article/details/41628727

打开 终端,cd 到 OpenWrt-ImageBuilder-ar71xx_nand-for-linux-x86_64文件夹下,这时候 make image,即可产生可以支持128MB NAND的镜像,在bin文件夹下,不过这时候生成的镜像仅包含基本系统,没有Luci web界面,不方便使用。我是按照之前官方镜像自带的软件包去make新镜像的,命令如下:

make image PACKAGES=”base-files busybox dnsmasq dropbear firewall fstools hostapd-common ip6tables iptables iw iwinfo jshn jsonfilter kernel kmod-ath kmod-ath9k kmod-ath9k-common kmod-cfg80211 kmod-crypto-aes kmod-crypto-arc4 kmod-crypto-core kmod-gpio-button-hotplug kmod-ip6tables kmod-ipt-conntrack kmod-ipt-core kmod-ipt-nat kmod-ipt-nathelper kmod-ipv6 kmod-ledtrig-usbdev kmod-lib-crc-ccitt kmod-mac80211 kmod-nls-base kmod-ppp kmod-pppoe kmod-pppox kmod-slhc kmod-usb-core kmod-usb-ohci kmod-usb2 libblobmsg-json libc libgcc libip4tc libip6tc libiwinfo libiwinfo-lua libjson-c libjson-script liblua libnl-tiny libubox libubus libubus-lua libuci libuci-lua libxtables lua luci luci-app-firewall luci-base luci-i18n-chinese luci-lib-nixio luci-mod-admin-full luci-proto-ipv6 luci-proto-ppp luci-theme-bootstrap mtd netifd odhcp6c odhcpd opkg ppp ppp-mod-pppoe procd procd-nand swconfig ubi-utils uboot-envtools ubox ubus ubusd uci uhttpd uhttpd-mod-ubus wpad-mini”

很长,我懒得查哪些镜像有的哪些要添加的,直接上了,编译后

捕获

如果已经刷好Openwrt直接进Web界面刷 tar结尾固件,如果从原版系统,进web刷img结尾固件。

op

刷完后,128MB的空间全部释放出来,安装Python什么的都不是问题了,额,我是为了跑Python才折腾的,不是为了翻Q,跑跑自己写的代码做做智能家居玩玩。。