首页
随笔
生活
MAC
技术
游戏
随言碎语
基于树莓派的家庭影音系统(KODI+ARIA2远程下载)
2023-02-20
yu.shi
959
最近想起了吃灰的树莓派,加上老妈退休,所以开始想起来可以用树莓派给她整一个家庭影院。避免各种电视会员和找片儿的尴尬。借鉴了很多网站,最后摸索出一套适合自己的,也是能完全打的住得家庭影音系统。 最终成果如下,也是分享和记录,也给其他朋友们一种或思路。  ------------ # 基础工具 树莓派4B(2G内存) 索尼电视(9500g) 网络环境(家里网络环境不好,百兆带宽的组网) ------------ # 搭建思路 原先的想法是利用树莓派作为基地,直接高清口接到电视上,树莓派中安装KODI自启动,但是最后发现树莓派2G版本根本带不动KODI,非常卡,即使设置了显存,也非常卡,无奈想到办法在索尼电视上装KODI,虽然电视有点老,但是索尼毕竟是索尼,抗打,再利用树莓派的SMB功能通过网络挂载磁盘,实现整体的搭建。 ------------ # 步骤 ## 树莓派 本人树莓派直接安装的官方系统,32位带桌面的,本以为可以直接安装运行KODI,但是实际上理想和现实是有差距的,所以PASS,树莓派只用来当作aria2的下载机和存储机(后期还可以做点软路由什么),**树莓派4B直接插1T的移动硬盘并不会有带不动或者掉电的情况,尽管放心,自动挂载在media下,无需命令。** 在操作之前,把三个步骤搞好。(装了个新系统,全部是重头开始) 1. 改国内源。在[这个](http://www.huaiansy.com/article/44 "树莓派改国内源")里也记录了,可以参考,不改国内源基本下载东西很难。必须搞。 2. 开启SSH。无屏幕开启比较方便,直接TF卡拿出来,在根目录下新建一个SSH文件(没有后缀)就可以直接ssh远程了。(有屏幕的百度搜一下,本人拿回家之后发现HDMI线坏了,还特意去搜了无屏幕可以直接网线对插电脑设置WIFI等操作) 3. 固定IP。在[这个](http://www.huaiansy.com/article/17 "树莓派设定固定IP")里也记录了,可以参考 都搞完之后可以开整 ------------ ### 安装FTP FTP可以直接远程进行文件管理,必须开。此外也必须要启用root用户,不然删除文件、改名字很麻烦。 ``` # 安装vsftpd sudo apt-get update sudo apt-get install vsftpd # 改配置文件 sudo vim /etc/vsftpd.conf ``` 文件最后加入 ``` # 允许本地访问 local_enable=YES # 允许写操作 write_enable=YES # 不允许匿名登录 anonymous_enable=NO # 对文件上传权限修改 local_umask=022 ``` 保存后重启服务 ``` # 重启服务 sudo service vsftpd restart ``` 要把root用户开开,方便后期操作 ``` # 启用root用户 sudo passwd root sudo passwd --unlock root # 锁定root是这个 # sudo passwd --lock root # 在SSH远程中使用root连接 # 将PermitRootLogin yes #值更改为yes sudo vim /etc/ssh/sshd_config # 在FTP中使用root连接 sudo vim /etc/ftpusers # 在root前边加#, 注释掉它 # 重启服务 sudo service vsftpd restart ``` ### 安装aira2 这里参考了知乎上的一篇文章([这里](https://zhuanlan.zhihu.com/p/533007737 "这里")) ``` # 安装aria2 sudo apt-get install aria2 # 创建aria2的配置文件夹 sudo mkdir /etc/aria2 # 创建状态记录空文件和配置文件 sudo touch /etc/aria2/aria2.session sudo touch /etc/aria2/aria2.conf ``` 配置aria2的配置文件,可以直接将我的这个复制进去,也是多次尝试总结出来的。 ``` ## 文件保存相关 ## # 文件保存目录 此处文件保存目录自行设定 dir=/media/pi/film/ # 启用磁盘缓存, 0为禁用缓存, 需1.16以上版本, 默认:16M disk-cache=128M # 断点续传 continue=true # 文件预分配方式, 能有效降低磁盘碎片, 默认:prealloc # 预分配所需时间: none < falloc ? trunc < prealloc # falloc和trunc则需要文件系统和内核支持 # NTFS建议使用falloc, EXT3/4建议trunc, MAC 下需要注释此项 file-allocation=trunc ## 下载连接相关 ## # 最大同时下载任务数, 运行时可修改, 默认:5 max-concurrent-downloads=30 # 同一服务器连接数, 添加时可指定, 默认:1 max-connection-per-server=15 # 整体下载速度限制, 运行时可修改, 默认:0(不限制) #max-overall-download-limit=0 # 单个任务下载速度限制, 默认:0(不限制) #max-download-limit=0 # 整体上传速度限制, 运行时可修改, 默认:0(不限制) #max-overall-upload-limit=0 # 单个任务上传速度限制, 默认:0(不限制) #max-upload-limit=0 # 禁用IPv6, 默认:false disable-ipv6=false # 最小文件分片大小, 添加时可指定, 取值范围1M -1024M, 默认:20M # 假定size=10M, 文件为20MiB 则使用两个来源下载; 文件为15MiB 则使用一个来源下载 min-split-size=10M # 单个任务最大线程数, 添加时可指定, 默认:5 split=10 ## 进度保存相关 ## # 从会话文件中读取下载任务 input-file=/etc/aria2/aria2.session # 在Aria2退出时保存错误的、未完成的下载任务到会话文件 save-session=/etc/aria2/aria2.session # 定时保存会话, 0为退出时才保存, 需1.16.1以上版本, 默认:0 save-session-interval=60 ## RPC相关设置 ## # 启用RPC, 默认:false enable-rpc=true # 允许所有来源, 默认:false rpc-allow-origin-all=true # 允许外部访问, 默认:false rpc-listen-all=true # RPC端口, 仅当默认端口被占用时修改 # rpc-listen-port=6800 # 设置的RPC授权令牌, v1.18.4新增功能, 取代 --rpc-user 和 --rpc-passwd 选项 #rpc-secret=
## BT/PT下载相关 ## # 当下载的是一个种子(以.torrent结尾)时, 自动开始BT任务, 默认:true #follow-torrent=true # 客户端伪装, PT需要 peer-id-prefix=-TR2770- user-agent=Transmission/2.77 # 强制保存会话, 即使任务已经完成, 默认:false # 较新的版本开启后会在任务完成后依然保留.aria2文件 #force-save=false # 继续之前的BT任务时, 无需再次校验, 默认:false bt-seed-unverified=true # 保存磁力链接元数据为种子文件(.torrent文件), 默认:false bt-save-metadata=false # 分离仅做种任务,以下载完成的不占用队列 bt-detach-seed-only=true # 无速度时自动停止时间 bt-stop-timeout=900 # 最小分享率 seed-ratio=0.0 # 最小做种时间 seed-time=20 # 期望下载速度 bt-request-peer-speed-limit=5M # bt-tracker,需要到网上搜一下最新的,在ariaNg中可以配置的,这里不写也没关系 bt-tracker= ``` 将aira2开机启动 ``` # 启动,没有提示则表示启动成功 sudo aria2c --conf-path=/etc/aria2/aria2.conf -D # 设置开机启动 sudo vim /etc/rc.local # 在exit 0前添加一行指令 sudo aria2c --conf-path=/etc/aria2/aria2.conf -D & # 保存并退出 ``` 安装ariaNg,用于界面管理,网址(http://ariang.mayswind.net/zh_Hans/) ``` sudo apt install -y nginx # nginx开机启动,网站根目录在/var/www/html/ sudo systemctl enable nginx ``` **注意想下载bt,必须要配置bt-tracker,而且种子要好,不然根本没速度,这是血的教训,种子要好,种子要好。所以迅雷,虽然很不好,但是是离不开的,有些资源必须得用迅雷,然后通过FTP传到树莓派里,多种方式结合,才能看到好片子** 参考知乎文章(https://zhuanlan.zhihu.com/p/265105814) 进行配置和测试。 全部完成之后,在浏览器里输入树莓派IP就可以直接跳到管理界面,默认都是直接连接上aira2的。 ### 开启SMB服务 SMB可以允许家里的设备通过SMB协议连接到树莓派。直接安装并修改配置文件即可 ``` sudo apt-get install samba samba-common-bin # 修改配置文件 sudo vim /etc/samba/smb.conf ``` 配置文件最后加上共享的文件夹 ``` # 在最后加上,其中下面的file是SMB中文件夹名称 [file] # 可以访问的用户,这里就直接用pi和root valid users = pi,root # 如果是共享文件夹,不需要密码的,就把上一句注释掉,再添加 public = yes path = /media/pi/film # 可被其他人看到资源名称(非内容) browseable = yes # 可写 writable = yes # 新建文件的权限为 777 create mask = 0777 # 新建目录的权限为 777 directory mask = 0777 ``` 怎么用windows连SMB就不写了,随便搜搜所有。 ------------ 自此树莓派的全部配置OK。接下来要把公网映射开开。我这里用的是免费的ngrok。 ## 利用ngrok配置远程访问 家里没有公网条件,因此用内网穿透来进行远程访问,内网穿透用的是[Sakura Frp](https://www.natfrp.com/ "Sakura Frp"),具体可以按照上面教程来做,帮助文档写的非常好,必须点赞。 映射的时候,注意不仅要映射出80端口,还要映射出一个6800端口,否则公网访问的时候ariaNg里的RPC是连不上的 ## KODI KODI本人直接用U盘装在电视上,直接到KODI官网下载就可以(我安装和下载都喜欢直接到官网,一是相对干净,二是文档充足) KODI安装后要设置中文。参考[这个](https://jingyan.baidu.com/article/e6c8503c536c99a44e1a1850.html "这个")。 安装完成后,在视频源里添加网络位置,输入地址、用户名密码即可直接将树莓派的SMB设置为源。实在不会就搜一下吧,这个基础操作。 ## 刮削器 没有刮削KODI就是一个没啥用的工具了,这也是本人折腾很久的方法,由于网络问题,KODI自带的刮削器插件根本用不了,什么改HOST(电视改不了,路由器也不支持)、改DNS都没用。最后用PC上的tinyMediaManager将视频信息刮到本地,最终完美解决,还顺带解决了不占用电视内存的问题。 自此一套影音系统搭建完成。非常方便,在单位里想看什么电影电视剧,下了种子就可以远程下载,回家刮削一下就可以直接看,效果满分。
0
yu.shi
爱生活,爱游戏,爱coding,爱工作
145682
总访问量
47
站内文章数
1776
博客开设天数
随笔点击排行
1
无公网IP+ZeroTier+...
(2023)
2
剧本杀《千千晚星》
(1978)
3
关于梦想
(1536)
4
P5R攻略两篇
(1490)
5
树莓派制作电子相册
(1426)
标签
生活
PHP
前端
公考
PS4
魂系列
树莓派
友情连接
PSN
兄弟影视
WEUI
WEUI.JS
音乐解密
无损音乐