用树莓派制作流光溢彩

关键字: Raspberry Ambilight Hypercon hyperion

写这个流程的缘由

其实我已经用上这个一年了, 然而一次手贱调试时在电脑上hypercon远程把hyperion删了, 导致点安装也不好用, 就从头再来吧, 索性也不是从头开始, 设备都接好了, 只差系统

参考:

教程1 http://tuohuang.info/build-ambilight-with-raspberry-pi-part-one#.WYnTEtP5j_8
教程2 http://tuohuang.info/build-ambilight-with-raspberry-pi-part-two#.WYnTCNP5j_8
英文1: https://ajpawelski.wordpress.com/how-to-raspberry-pi-raspbmc-hyperion-and-a-ws2801-strip-2/
英文2: http://raspberry-at-home.com/ambi-tv-ampilight-effect-from-any-video-i-e-hdmi-source/

什么是流光溢彩

  • 流光溢彩来自飞利浦电视技术, 通过对画面边缘的灯光效果, 来达到扩展屏幕光影的效果, 飞利浦的技术有可能是多微型投影仪, 因为投影出来的效果不是灯泡能达到的
  • 不过有老外通过彩色灯带的控制, 做出了类似的效果
    这不算什么新技术, 大概在10年就已经有老外在开发这个项目, 玩这个在会diy的人眼里也算有些过时了
  • 这个项目也是我在将近一年前做的, 对树莓派也不了解, 网上各种查资料, 其实并不难, 有点动手能力的都可以搞, 即便你不动linux命令, python写法以及gpio语法

准备设备

  • 树莓派1代以上, 也就是只要是树莓派都可以
  • usb capture采集卡, 我用的是XXX L240 USB视频采集卡(输入命令"dmesg | grep usb"得到的是 usbtv Fushicai USBTV007 Audio-Video Grabber, 驱动装好后lsusb显示为Bus XXX Device XXX: ID 1b71:3002, 无名称)
  • hdmi -> av 转换器
  • hdmi 1in2out 一进二出
  • (可选)hdmi 3/4/5in1out 如果你需要多输入需要买, 比如切换视频盒子/ps4/xbox/电视机信号, 如果输入源只有一个那么就可以省点钱
  • 5v 10a的开关电源, 买稳压好一些的, 稳压差会导致led闪烁, 我这一年来被晃的不行, 一直以为是树莓派控制的不好, 后来玩nodemcu发现灯带本身有寄存器, 不存在不发送数据会导致闪烁的问题, 于是我在电源端还加了滤波电容
  • ws2811/ws2812灯带30颗/米 or 60颗/米都可以, 如果不想显示的特别细腻, 可以选择30颗的, 买10块钱左右一米的即可 (ws2801不是不可以, 贵, 笔者买这个只是图5v, 后来发现基本上都能找到5v的, 买这个灯30颗的价格相当于买ws2812 60颗的价格)
    • 灯带的另一个选择APA102, 油管有人在16年制作了144灯珠/米的效果, 相比30颗/米灯珠分辨率高了很多, 飞利浦也许是微型投影, 也许是这种密集led集成, 看demo
      https://www.youtube.com/watch?v=VG4o7_B4POU

连接方法

我画了个流程图, 思维导图的方式更直观一些


树莓派流光溢彩流程图.png

给树莓派安装系统

刷镜像

http://www.jianshu.com/p/5dc83db2b78e
需要注意的是, 写入镜像需要很长时间, 耐心等待

  • 注意, 如果出现raspberrypi-net-mods结尾问题 尝试下面方式烧录(笔者试了下面这个170705, 默认方式和软件方式写入都会出现这个错误, 下面这个命令行写入就没有这个问题)

sudo dd bs=1m if=/path/to/Downloads/2017-07-05-raspbian-jessie.img of=/dev/rdisk2 conv=sync status=progress

  • 也有老外用python来批处理这个问题
#!/usr/bin/python
# 8th November, 2009
# update manager failed, giving me the error:
#       'files list file for package 'xxx' is missing final newline' for every package.
# some Googling revealed that this problem was due to corrupt files(s) in /var/lib/dpkg/info/
# looping though those files revealed that some did not have a final new line
# this script will resolve that problem by appending a newline to all files that are missing it
# NOTE: you will need to run this script as root, e.g. sudo python newline_fixer.py
import os
dpkg_path = '/var/lib/dpkg/info/'
paths = os.listdir(dpkg_path)
for path in paths:
    path = dpkg_path + path
    f = open(path, 'a+')
    data = f.read()
    if len(data) > 1 and data[-1:] != '\n':
        f.write('\n')
        print 'added newline character to:', path
    f.close()  

解决方案都来自帖子:
https://www.raspberrypi.org/forums/viewtopic.php?f=63&t=187936#p1185337

也可以使用 ApplePi-Baker.app 进行傻瓜安装
https://www.tweaking4all.com/hardware/raspberry-pi/macosx-apple-pi-baker/

使用国内源更新速度快

deb http://mirrors.aliyun.com/raspbian/raspbian/ jessie main non-free contrib
deb-src http://mirrors.aliyun.com/raspbian/raspbian/ jessie main non-free contrib

安装流光溢彩程序

安装时可能需要很长时间, 请耐心等待

sudo apt-get update
sudo apt-get upgrade
sudo apt-get install git libqtcore4 libqtgui4 libqt4-network libusb-1.0-0 libprotobuf9 ca-certificates
wget -N https://raw.github.com/tvdzwan/hyperion/master/bin/install_hyperion.sh
sudo sh ./install_hyperion.sh
sudo vi /boot/config.txt(然后末尾添加此行:dtparam=spi=on) 

测试usb采集卡信号

https://www.raspberrypi.org/forums/viewtopic.php?t=124546

//获取usb设备列表
lsusb
//获取usb设备列表详细信息
dmesg | grep usb
//列出视频设备
v4l2-ctl --list-devices
//获取上面列表中设备的具体信息, 不一定是video0
v4l2-ctl --list-formats-ext -d /dev/video0
//安装mplayer, 用于检测视频是否抓取正确
sudo apt-get install mplayer
//运行mplayer获取easycap视频流
mplayer tv:// -tv driver=v4l2:norm=NTSC-M:width=720:height=480:outfmt=uyvy:device=/dev/video0:input
=0
mplayer tv:// -tv device=/dev/video0 -hardframedrop
//获取视频采集卡数据
v4l2-ctl --all

设置树莓派远程访问

设置固定ip

步骤 http://ju.outofmemory.cn/entry/102072
格式 http://blog.csdn.net/jdh99/article/details/22096479

SSH 为了安全新版默认都不开机启动ssh

http://blog.csdn.net/messidona11/article/details/71514247
开机启动ssh(电脑上在boot分区创建ssh文件即可) http://blog.csdn.net/scylhy/article/details/62896559
如果以前登录ssh时保存密钥, 重装系统后同样ip下会提示

WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED

解决方法

sudo nano /Users/zszen/.ssh/known_hosts
用#屏蔽掉提示的那个ip即可

控制灯条

下载hypercon.jar这个软件
https://hyperion-project.org/wiki/HyperCon-Information

//截图
hyperion-v4l2 --screenshot
//将灯条变红 (必须把hyperion启动起来, 通过hypercon软件可开启)
hyperion-remote --color red

软件配置

  • device 设置输出的灯带类型, 我这里用的是rbg的ws2801


    image.png
  • 第二页配置颜色适配, 以及是否过度有缓冲


    image.png
  • 第三页配置输入源


    image.png
  • 第四页配置服务器端口, 第一开启, 可以用手机控制灯带颜色简单变化, 没什么用


    image.png
  • 第五页是连接和调试


    image.png

软件使用顺序

  • 将软件各页调整好后, 到最后一页连接树莓派ssh
  • 点save保存软件设置
  • 点create Hyperion Configuration 创建配置json
  • 点Local Config Path 找到存放的本地配置json
  • 点Send Config把配置通过ssh发送到树莓派的/etc/hyperion/下, 并命名为hyperion.config.json
  • 连上后start就相当于hyperiond /etc/hyperion/hyperion.config.json
  • stop为停止服务

问题 和 解决

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 212,080评论 6 493
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 90,422评论 3 385
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 157,630评论 0 348
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 56,554评论 1 284
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 65,662评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 49,856评论 1 290
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,014评论 3 408
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,752评论 0 268
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,212评论 1 303
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,541评论 2 327
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,687评论 1 341
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,347评论 4 331
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,973评论 3 315
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,777评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,006评论 1 266
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,406评论 2 360
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,576评论 2 349

推荐阅读更多精彩内容