Category: IT

智能电视乱想

小米电视这样的智能电视应该再加一个primesense.com 提供的3D摄像头(primesense也是kinect技术的提供者)及麦克风。 加上后能做很多事,最容易想到的是玩游戏和视频聊天,除此之外还有很多更有意思的:

  1. 控制电视不再用遥控器,而是用手势或语音
  2. 自动识别看电视的人,为每个人保存单独的收看进度,及收藏夹列表,及观看记录。并可根据不同的人给出不同的收视推荐
    当有多个人一起看电视时,可以用如下解决方案

    1. 每个人可以通过特定手势或语音来请求电视的控制权,如果没有人提出异议则电视由他控制
    2. 如果有人提出异议,则电视可以用如下规则来选出谁最终控制电视
      1. 从争议者中选出这个星期看电视较少者
      2. 用石头剪子布之类的小游戏来决定
  3. 深度的收视行为统计分析
    现在的收视率统计是用一些样本户(尼尔森公司在中国有18000个收视率调查样本户, 2007年数据),进行采样。而采样过程中,还需要人员的参与,比如另一大收视率统计公司索芙特的遥控器上有家里每个人的按钮,每次选择了台后需要按下对应按钮,这样机器才知道当前是谁在看电视。这种收视率调查方式问题很多。首先是因为需要人的参与,容易有错误,例如人按错了键,或者懒得按。再者采样范围过小,容易被一些
    电视台控制而用3D摄像头+麦克风很容易对用户的收视行为进行深入准确的分析

    1. 用摄像头识别有多少人看,收看人的性别,年龄段
    2. 收看时谁是专心在看,谁是边聊天嗑瓜子,甚至看着报纸,或走来走去
    3. 统计播放到电视剧的什么时候,大家更专注,什么时候笑得最多
  4. 广告统计分析
    1. 可以统计哪些广告大家真正认真看了,哪些没认真看,哪些压根没看
    2. 精确统计广告观看者的人口属性:年龄段,性别,影视喜好
  5. 真正的精准定向广告
    互联网电视知道每个用户最近看了什么电视,通过电视浏览了什么网页,搜索了什么关键词,这些资料都有助于提高广告的定向效果。
  6. 高度互动的,游戏式的广告
    例如播放一款汽车广告时,用户可以进到广告里,看到自己坐在车上的样子,玩一个开这个车赛车的游戏(可参照用kinect玩赛车游戏的效果,不需要任何游戏柄,直接双手做出握方向盘的姿势即可)。
  7. 有时看着电视就睡着了,通过摄像头识别出来后,电视可自动关闭
  8. 通过摄像头识别出小孩,对他看电视时间进行限制
  9. 试衣服
    通过3D摄像机估测出人的身高,腰围,胸围等指标,然后吧人脸等图片上传上去,在衣服的购物网站,立刻就能显示出购买人穿上新衣服以后的效果。

vim clang autocomplete插件

以前一直用omnicppcomplete自动完成插件,前几天查到有人对clang autocomplete插件评价极高,于是用了一下发现确实很棒,在用c/c++开发时,效果比前者好很多。 下面是些安装使用中的一些经验,和大家分享一下

注:使用环境为centos 6.2, vim 7.3

  1. 系统要先安装llvm和clang, 建议用install-clang来安装,方便很多。 安装时间很长,在我的虚拟机上,安装了整整一下午。
  2. https://github.com/Rip-Rip/clang_complete 直接clone代码来安装插件,用文档提示的用make install安装总失败, 后来从 http://www.vim.org/scripts/script.php?script_id=3302 下载了 clang_complete.vmb 放到代码目录才安装成功
  3. 开始用的时候总不成功,提示pattern not found, 后来在.vimrc 里加入 let g:clang_hl_errors=1, 失败的时候会提示出详细的失败原因。 发现是因为找不到另外一个目录里的头文件。于是在工程根目录建立.clangg_complete 文件, 加入-Isrc/include等内容,问题解决。
  4. 有时还是会失败,后来网上查到个解决方案,在.vimrc中加入let g:clang_user_options=’|| exit 0′ 解决

 

补充:发现这个插件在python开发中也能实现自动完成。

Tags: ,

categories IT

自动翻墙路由3

以前一直用openvpn的自动翻墙路由, 非常方便,但自从斯巴达后,GFW升级,openvpn死翘翘,自动翻墙就玩不转了。 前两天经秋树指点配置成功实现了openvpn static key模式的自动翻墙。网上已经有很多相关资料,但发现有些关键小问题没说到,尤其是我用的asus n12 b1路由器的一些特殊问题, 写下来分享如下。

 

  1.  这次给路由器刷了Tomato固件,下载是从tomato.groov.pl, 一定要选tomato-K26-1.28.RT-N5x-MIPSR2-108-Max.trx, 比他尺寸大的会占满整个flash,造成jffs不能创建,比他小的功能不全。
  2. 我是先把路由器刷到ddwrt,然后再刷tomato,在用ddwrt升级tomato前,一定要telnet上去,执行如下命令
    nvram show|grep http_username
    nvram show|grep http_passwd
    得到的是ddwrt加密存储的用户名和口令,把返回值都保存好,升级完tomato后,从web登录,问的用户名和口令就是这个。
  3. 升级完tomato后,telnet上去, 用户名root,口令就是上一步保存的口令。然后执行如下命令,修改web用户名和口令
    nvram set http_username=’admin’
    nvram set http_passwd=’password’
    口令的修改也会影响到telnet的口令。
  4. 给路由器设置静态dns
    Untitled5
  5. openvpn服务器安装请参看xiaohui的文章
  6. 用如下命令在服务器端生成static key
    openvpn –genkey –secret static.key
  7. 服务器端配置文件如下

    local 1.1.1.1 # 服务器ip,可不指定
    port 443 # 端口用https端口
    proto udp

    dev tun
    secret /etc/openvpn/keys/static.key
    ifconfig 10.8.0.1 10.8.0.2

    push “redirect-gateway”
    push “dhcp-option DNS 208.67.222.222”
    push “dhcp-option DNS 208.67.222.220”

    keepalive 10 120

    comp-lzo
    max-clients 100

    persist-key
    persist-tun
    status /var/log/openvpn-status.log
    log-append /var/log/openvpn.log
    verb 3

    float

  8. 打开jffs,下载脚本请参看 @ckyOL写的文章,他后面讲如何填写各种证书的我们不用看了,因为我们配置的是static key模式
  9. tomato的vpn设置如下:
    Untitled2UntitledUntitled3
    其中static key不要填很重要, n12上nvram的剩余空间很少,一旦把static key填入里面会造成很多奇怪问题,造成vpn不能拨通,我在这上面折腾了很久。 static key应该用外部文件的方式导入。 把静态文件放在路由器/jffs/openvpn/static.key下即可。 
  10. 到这里,vpn已经能拨通了,自动翻墙已经实现。 但你会发现有时访问国内网站慢了,甚至一些视频网站把你当成国外访问者,不提供服务。这时需要用到dnsmasq,按照如下设置:
    Untitled4
    然后在/jffs/openvpn/dnsmasq.conf中写入如下内容

    server=/cn/219.141.140.10
    server=/baidu.com/219.141.140.10
    server=/qq.com/219.141.140.10
    server=/taobao.com/219.141.140.10
    server=/163.com/219.141.140.10
    server=/soso.com/219.141.140.10
    server=/sohu.com/219.141.140.10
    server=/youku.com/219.141.140.10
    server=/sogou.com/219.141.140.10
    server=/tudou.com/219.141.140.10
    server=/hao123.com/219.141.140.10
    server=/ifeng.com/219.141.140.10
    server=/renren.com/219.141.140.10
    server=/kaixin001.com/219.141.140.10
    server=/ku6.com/219.141.140.10
    server=/xunlei.com/219.141.140.10
    server=/chinaz.com/219.141.140.10
    server=/alibaba.com/219.141.140.10
    server=/alipay.com/219.141.140.10
    server=/live.com/219.141.140.10
    server=/douban.com/219.141.140.10
    server=/56.com/219.141.140.10
    server=/xinhuanet.com/219.141.140.10
    server=/gougou.com/219.141.140.10
    server=/soufun.com/219.141.140.10
    server=/mop.com/219.141.140.10
    server=/4399.com/219.141.140.10
    server=/youdao.com/219.141.140.10
    server=/51.la/219.141.140.10
    server=/126.com/219.141.140.10
    server=/58.com/219.141.140.10
    server=/360buy.com/219.141.140.10
    server=/soku.com/219.141.140.10
    server=/csdn.net/219.141.140.10
    server=/2345.com/219.141.140.10
    server=/tom.com/219.141.140.10
    server=/51.com/219.141.140.10
    server=/yesky.com/219.141.140.10
    server=/ganji.com/219.141.140.10
    server=/it168.com/219.141.140.10
    server=/ynet.com/219.141.140.10
    server=/39.net/219.141.140.10
    server=/51job.com/219.141.140.10
    server=/pchome.net/219.141.140.10
    server=/onetad.com/219.141.140.10
    server=/eastmoney.com/219.141.140.10
    server=/hudong.com/219.141.140.10
    server=/doubleclick.com/219.141.140.10
    server=/1133.cc/219.141.140.10
    server=/alimama.com/219.141.140.10
    server=/paipai.com/219.141.140.10
    server=/china.com/219.141.140.10
    server=/msn.com/219.141.140.10
    server=/admin5.com/219.141.140.10
    server=/7k7k.com/219.141.140.10
    server=/verycd.com/219.141.140.10
    server=/qidian.com/219.141.140.10
    server=/pcpop.com/219.141.140.10
    server=/dangdang.com/219.141.140.10
    server=/zhaopin.com/219.141.140.10
    server=/huanqiu.com/219.141.140.10
    server=/duowan.com/219.141.140.10
    server=/ppstream.com/219.141.140.10
    server=/sougames.com/219.141.140.10
    server=/xici.net/219.141.140.10
    server=/onlinedown.net/219.141.140.10
    server=/88db.com/219.141.140.10
    server=/pptv.com/219.141.140.10
    server=/naqigs.com/219.141.140.10
    server=/mozilla.com/219.141.140.10
    server=/dianping.com/219.141.140.10
    server=/hc360.com/219.141.140.10
    server=/360doc.com/219.141.140.10
    server=/ctrip.com/219.141.140.10
    server=/homeinns.com/219.141.140.10
    server=/weibo.com/219.141.140.10
    server=/jd.com/219.141.140.10
    server=/qiyi.com/219.141.140.10
    server=/iqiyi.com/219.141.140.10

    这基本把国内访问量最大的网站全列出来了,你也可以把自己常访问的大站加入其中。219.141.140.10是我用的电信宽带的dns,你可以改成自己宽带的dns,一定要国内的。

  • 多谢秋树
  • 有什么问题欢迎交流
  • 很可能这种方式过一阵也会被gfw封锁,但相信很快会有新的方法出现的。 生命不息,翻墙不止。

另:static key模式虽然实现了翻墙,但没有了原先证书模式支持多用户的优势,一个openvpn服务器只能为一个用户服务,这是一大缺憾。

更新:用了自动翻墙路由后,老婆常用的wifi phone不能用了,后来看tomato路由QOS下的View Details,找到了wifi phone链接的服务器地址,把这个ip加入/jffs/openvpn/chnroutes.sh 解决。

Tags: ,

categories IT

创意市场

经常听人说想法(创意)是不值钱的,必须要实现出来才值钱。这其实很大程度上是因为现在社会没有发达的想法(创意)的市场,如果能建立起一套规则,让不适合申请专利的想法(创意)也能在市场上公开交易,并对想法进行充分的产权保护,那想法的价值会体现出来的。

有不少很好的创意想法,因为想出来的人实现能力的缺乏,造成创意悄无声息的湮灭。 如果有一个世界范围的发达的创意(想法)市场,那擅长创意的人,专门去想创意,而实现能力强的人或公司,则从创意市场中购买创意, 可能会大幅提高人类全体的创新能力。

前两天看了锤子rom的发布会现场直播,感觉罗永浩把那些颇有亮点的创意卖给三星,小米,华为等有成熟开发团队的大厂, 没准会有个好很多的,皆大欢喜的结局。

VIM粘贴时的自动缩进问题

在vim里粘贴时,常遇到很讨厌的自动缩进问题,贴出来的格式面目全非。后来在http://stackoverflow.com/questions/2514445/turning-off-auto-indent-when-pasting-text-into-vim 找到解决方案,整理翻译如下:

  1. 在粘贴前,可以执行:set paste, 粘贴完后,再执行 :set nopaste 格式就不会乱了
  2. 但敲命令毕竟麻烦,可在~/.vimrc中加入set pastetoggle=<F10>, 指定F10键为paste状态切换键

 

Tags:

categories IT

自动翻墙路由2

前一阵写过  DDWRT + autoddvpn + openvpn 实现自动翻墙, 但斯巴达前后openvpn彻底完蛋,自动翻墙路由也成了废品。昨天终于让openvpn死而复生

  1. 换了一个新IP 
  2. 端口换到443
  3. 协议改成tcp
有朋友说还会被封的,但目前运行24小时,还满正常,希望不会。 

Tags: ,

categories IT

osx下最好用的16进制编辑器 – vim

  1. 用vim打开要编辑的文件
  2. 执行命令
    :% ! xxd
  3. 编辑
  4. 编辑完毕,执行命令
    :% ! xxd -r
  5. 保存

翻译自 http://stackoverflow.com/questions/827326/whats-a-good-hex-editor-viewer-for-the-mac

Tags: , ,

categories IT

解决ssh登录慢的问题

在 /etc/ssh/sshd_config加入一行”UseDNS no”解决。参考了 http://www.turnkeylinux.org/blog/slow-ssh。

Tags: ,

categories IT