用树莓派3打造终极版家庭娱乐中心

树莓派微型电脑是大英腐国继反射式天文望远镜、蒸汽机、卷福之后的第四大发明,初始设计目的是提供给孩子,激发他们对编程的兴趣。但是因为超级便宜、扩展性强,也被很多成人用来做DIY项目。截至到2017年,在全世界已卖出了一千二百五十万台,是真正改变世界级的伟大产品。本文将详细讲解用树莓派3进行DIY,打造集播放视音频、玩复古游戏及新Steam游戏于一体的家庭娱乐中心。

现状

目前家里的视听娱乐现状是这样的:

  • 小米电视充了VIP会员,用来看不值当去电影院看的电影,包子想看的“最强大脑”、“快本”、“跑男”、“中餐厅”,包妈爱看的“我是歌手”、“上新了故宫”等电视节目;
  • 正常渠道看不到的电影和剧集,用小米路由器下载,存储在USB外接硬盘中,以局域网共享方式,用小米电视内置的高清播放器软件播放;
  • 一台树莓派2电脑自制的复古游戏机用HDMI线连到电视上,用来玩老游戏;
  • 任天堂Switch主机同样直连电视,玩新游戏。

升级规划

以折腾为己任的包爸在寒假将至之际,对娱乐系统进行了一次升级,以满足假期里和包子同乐的需求,规划的方案如下:

  1. 将原有的复古游戏机升级为家庭视听娱乐中心,也就是把多媒体播放系统OSMC游戏机模拟器系统RetroPie装在同一台树莓派中,实现一机多用;
  2. 视听娱乐中心的硬件升级为树莓派3,提升性能,满足安装Steam Link的要求;
  3. 娱乐中心连接影音功放,实现5.1声道播放;
  4. 增添Steam Link功能,实现在客厅里、赖在沙发上、用大电视和游戏手柄玩包爸HP笔记本电脑中Steam游戏库里的游戏。

所需材料

  • 树莓派3电脑(必备)
  • 至少16G的MicroSD存储卡(必备)
  • USB口键盘(必备,安装完成后不再需要)
  • 5V 3A Micro USB充电器(必备)
  • HDMI连线(必备)
  • 有线网络连接(必备)
  • 至少一个蓝牙游戏手柄(必备)
  • 媒体中心红外遥控套件(可用app替代)
  • 运行Steam客户端的PC机(用于Steam Link功能)

实现步骤

树莓派3安装OSMC系统

  1. 使用PC下载最新的OSMC系统安装镜像;
  2. MicroSD卡格式化为FAT32格式;
  3. 在PC中用Etcher或类似的软件,将下载的OSMC系统镜像文件写入MicroSD存储卡中;
  4. 存储卡插入树莓派电脑中,连接USB键盘、有线网络、HDMI线连电视或显示器。

配置OSMC,实现影音播放功能

  1. 开机完成安装流程,进入设置向导

    Language一定要先选择English,设置时区,皮肤选择默认的OSMC Skin,设置主机名,开启SSH服务;
    在Settings->Interface->Skin下,将Font改为Arial。然后在Settings->Interface->Regional->Character Set下改为Chinese Simplified(GBK),这时才可以将语言改为Chinese(Simple)。不按这个次序会导致界面文字变成方块,完全无法进行操作;

    完成设置向导后系统将进入OSMC的主界面。
  2. 设置网络、字幕语言、皮肤等

    在主界面中选择MyOSMC->Network,可以设置无线网络;

    进入设置->播放器->语言,在首选字幕语言中将Chinese(Simple),Chinese(Traditional)添加进去;

    如果你不喜欢OSMC默认的皮肤,也可以进入设置->Interface->皮肤中选择别的,但是千万要注意,皮肤一改变,很有可能中文字又变成方块了,这时就要盲操作,进入字体设置,改为Arial或Arial Based,才能恢复正常显示。
  3. 导入影音文件资源

    网络设置好以后,进入设置->媒体->资料库,在管理源下选择视频,点击添加视频->浏览->添加网络位置->共享文件夹,然后输入路由器的主机名或IP地址,视频文件夹目录名;

    OSMC系统会自动开始扫描文件夹,并上网搜索这些影视文件对应的封面图片;

    可以将视频共享文件目录加入“收藏夹”菜单项,这样更方便。
  4. 安装字幕插件

    首先要安装OSMC的中文插件软件源,请先到这里下载chinese addon(新)和hdpfans两个软件源文件,把这两个压缩文件保存到路由器的共享文件夹中,然后进入设置->插件浏览器->从zip文件安装,定位到共享文件夹中的这两个zip文件,导入这些插件源;

    软件源安装好以后,进入设置->插件浏览器->从库安装->字幕,找到Shooter,安装射手字幕插件;

    字幕插件安装好以后,当观看下载影片发现没有字幕时,可以呼出播放菜单,点击最右侧的字幕按钮,插件会暂停视频,然后根据当前视频文件名等信息搜索中文字幕,找到后点击下载,很快就可以回到刚才的播放界面继续观看了。

  5. 配置红外遥控器

    要想真正舒服地当沙发土豆,遥控器是必备的。淘宝上几十块钱的MCE或HTPC用红外遥控套件就可以。

    首先把USB口的红外接收器接在树莓派电脑上,重启系统后应该就可以使用了。如果发现有些按键不管用,可以通过安装Keymap Editor插件解决。进入设置->插件浏览器->搜索,用Keymap搜索,安装插件。安装成功后在设置->插件浏览器->我的插件->全部下找到Keymap Editor,点击后选择运行;
    然后点击第一项Edit开始设置遥控器。先要找到要设置的功能,点击后系统会提示在5秒钟内,按下遥控器上某个按钮。设置时请注意,有些按键并不是在设置后立刻生效,而是要回到插件功能主菜单,点击Save保存按钮后才能生效的。
  6. 通过App进行遥控

    如果没有红外遥控器,也可以考虑使用手机App。好处是家里不需要再多一个设备,缺点是触屏操作不能盲按,没有手感,另外手机很快会锁屏,用起来不方便。Android手机请下载Kore, Official Remote for Kodi,苹果手机可以搜索iRemote for Kodi应用进行安装;
    在OSMC系统中,进入设置->服务->控制,开启"允许通过HTTP远程控制",在下面设置端口、用户名和密码。记得将这些设置项同样在遥控App中进行设置后就可以使用了。

在OSMC中安装RetroPie系统

  1. 使用PC上的SSH客户端登录树莓派电脑(默认用户名密码都是osmc),下载并执行安装脚本
    cd /home/osmc 
    wget https://raw.githubusercontent.com/mcobit/retrosmc/master/install-retrosmc.sh
    chmod +x install-retrosmc.sh
    ./install-retrosmc.sh
  2. 在脚本交互界面中安装retrosmc
    按步骤安装完毕后重启系统
    sudo reboot
  3. 安装Library Node Editor插件

    安装这个插件是为了在OSMC的主界面中增加游戏功能的菜单项,进入设置->插件浏览器->搜索,用Library Node搜索,安装插件。
  4. 为主界面增加游戏机菜单项

    设置->Interface->皮肤->设置皮肤->Home->Customize Home Menu,选择添加,标签名称可以叫RetroPie或Games都行。在这个菜单项内选择自定义动作,输入:
System.Exec(/home/osmc/RetroPie/scripts/retropie.sh)


回到OSMC主界面后就可以点击新增的菜单项进入RetroPie系统玩游戏了。

设置RetroPie,实现游戏机功能

  1. 更新系统

    进入RetroPie游戏系统以后,在主界面选择RetroPie->RETROPIE SETUP->RetroPie-Setup Script,选择Update进行更新;
  2. 配置游戏手柄

    回到主界面,键盘按ESC键呼出菜单,选择CONFIGURE INPUT,然后长按蓝牙手柄任意键,开始按引导进行键位配置;

    如果没有找到蓝牙手柄,则需要在主界面选择RetroPie->RETROPIE SETUP->BLUETOOTH,进行蓝牙配对操作,成功以后再配置键位。
  3. 导入游戏ROM

    安装好了模拟器系统,还需要有大量的游戏ROM才能玩,首先请自行搜索你想玩的老游戏机ROM,网上资源有很多。下载以后可以选择用U盘传输到树莓派中,但是考虑到存储卡空间有限,最好还是把ROM文件放在局域网内,设置为共享,让RetroPie读取。
    1. 在路由器或其他网络存储设备中建立RetroPie能理解的roms文件夹结构
      最简便的方法:找个U盘,根目录下建一个名为retropie的文件夹,然后在树莓派运行RetroPie的情况下,将这个U盘插入树莓派USB接口,等U盘读写灯停止闪烁后,将其拔出,重新插到PC机上。这时你会发现,retropie文件夹下多了一个roms文件夹,其中又包含了很多文件夹,每一个代表了一种复古游戏机的名称,比如nes就是任天堂红白机(nintendo entertainment system),snes就是超任(super nintendo entertainment system),megadrive就是世嘉MD……请将这个roms文件夹复制到路由器或网络存储设备的共享文件夹内,并设置同样的共享权限。
    2. 将已下载的rom文件按不同游戏机,分门别类存入上述共享文件夹中
    3. 设置进入RetroPie系统时自动加载网络共享文件夹
      使用PC上的SSH客户端登录树莓派电脑,在命令行界面输入以下命令,编辑RetroPie的启动脚本文件:
      sudo vi /home/osmc/RetroPie/scripts/retropie.sh
      在#!/bin/sh后面添加一行:
      sudo mount -t cifs -o username=guest,password= //192.168.1.1/path/to/roms /home/osmc/RetroPie/roms
      注意,上面命令中的username=后面应是可读写该共享文件夹的用户名(如果设置为任意用户均可访问,就可以设为guest),password=后面是密码(没有可空着),//192.168.1.1 是路由器或网络存储设备的主机名或IP地址,后面跟的/path/to/roms则是指向roms文件夹的路径,增加命令后保存该脚本文件退出。
    4. 退出RetroPie系统,并重启树莓派,再回到RetroPie系统主界面,凡是有Rom文件的游戏机种类,都会显示出来了!

Steam是目前最大的PC/Mac/Linux游戏网上平台,几乎所有的3A级计算机游戏、及无以计数的独立游戏(Indie Game)都会选择在这里发布数字版。每年冬夏两次的促销更是可称为游戏界双十一的存在,这些年包爸已经屯了不少游戏,伴生的苦恼则是好玩的游戏远比悠闲的周末多的多;另外就是安装Steam的计算机是HP的暗影游戏笔记本,性能虽然还不错,但屏幕毕竟只有15.6吋。还是更想在客厅里的沙发上,拿着游戏手柄,对着大电视玩。Steam了解我们这类玩家的需求,推出了Steam Link软件。树莓派安装配置好以后,可以把运行在PC机上的游戏视音频传输到电视上,同时接受游戏手柄的输入,实现了包爸的愿望:) 下面是操作步骤:

  1. 配置网络环境

    Steam Link需要非常好的网络带宽,普通2.4G无线网络是不够的,最好让运行Steam的PC机及树莓派都用有线网络相联。如果只能使用无线网络,则两个终端都要使用5G无线网。
  2. 树莓派中下载安装Steam Link

    使用PC上的SSH客户端登录树莓派电脑,在命令行界面输入以下命令:
    curl -#Of http://media.steampowered.com/Steam Link/rpi/Steam Link1.0.7armhf.deb
    sudo dpkg -i Steam Link1.0.7armhf.deb
  3. RetroPie中增加入口

    安装完毕后需要在主菜单PORTS菜单项下添加Steam入口
    vi ./RetroPie/roms/ports/steam.sh
    在这个脚本文件中添加如下内容:
    #!/bin/bash
    steamlink
    然后保存文件退出,为脚本文件增加执行权限:
    chmod +x ./RetroPie/roms/ports/steam.sh
  4. 连接PC

    退出RetroPie系统后再次进入,在主界面可以看到PORTS菜单项和其中的Steam了。在PC上进入Steam客户端,随后在树莓派中进入Steam。第一次使用需要扫描网络寻找运行Steam的计算机,找到后会显示确认码,将这个码填入PC中弹出的确认窗口中,完成连接设置。以后每次要用树莓派玩Steam游戏时,都要先在PC上进入Steam客户端。

使用报告

影音播放方面,OSMC的功能远比小米电视的高清播放器强大。支持的视频格式更多;接入影音功放后,5.1声道也得以实现;浏览路由器中共享文件夹的速度也更快;影视资料自动从网上更新,展示影视海报大图,非常直观……以后多花些时间琢磨,还可以实现对音乐库、图片库的管理和浏览。

游戏机功能方面,因为硬件提升为树莓派3,某些原本有卡顿的街机游戏运行更流畅了。

Steam Link方面,包爸正带着包子玩To The Moon,目前只玩了几个小时,视频音频有时会卡几秒钟,体验尚可。考虑到没有这个功能,就只能缩在包爸那可怜的4.8平米工作区里玩,或者费劲插拔各种线缆把电脑搬到客厅才能实现,感觉还是值得的。

一句话总结:新的终极版家庭娱乐中心实现了设计目的,大获成功!后附几张老游戏截图,以示庆祝……

参考资料