当前位置: 首页 > news >正文

玩客云 线刷Armbian 搭配Alist 阿里云盘 Jellyfin NovaVideoPlayer搞电视墙

啰嗦的背景

喜欢看电影,买了个投影仪,是这一切折腾的开端。

投影仪虽然有当贝系统,但是想看的电影总是需要**电视会员,那我肯定是不用的。因为有爱腾优的会员,最开始都是使用手机投屏,当呗的投影仪好就好在投屏基本没有广告。然而遇到某些电影,要不就是会员也得加钱点映,要不就是根本没资源,当时的解决方案是电脑迅雷找资源,下好了之后拷贝到U盘,插到投影仪或者客厅电视播放。

这个过程听着就烦人。有没有更好的方案呢?
这时候有个快被淘汰的叫玩客云的便宜矿渣进入了视线。

大概了解之后去拼多多找货,结果发现都是些刷好系统的,原本的玩客云系统已经不能使用。其实我最开始就是想要个能够方便(快速)下载电影,并且不需要再用U盘挪来挪去的工具。所以最后在小黄鱼花高价买了个已绝育的原装玩客云。

到手后一番折腾,可惜并没有意淫中的美妙。玩客云的好处在于,它有一个比较成熟完整的网盘系统,可以在电脑或者手机客户端直接远程添加下载,可以勉强充当一个私有网盘使用,可以开启smb服务,投影仪支持直接打开smb文件夹中的视频。然而这一切都毁在下载上,说好的永久免费迅雷会员呢,结果大部分资源根本下不动,下的动的用玩客云下载还不如我电脑迅雷试用会员呢。系统也不太稳定的样子,手机客户端经常需要多次刷新才能显示链接上。

接着开始琢磨玩客云的玩法,从搜索结果来看,主流的做法都是刷个Armbian系统,然后装docker玩一些应用。于是开始琢磨刷机。

开始刷机

具体的刷机步骤不描述了,网上太多,只记录一下思路。搜索到的大多数教程,都是使用U盘,需要先刷一个安卓底包,再刷5.88版本的Armbian系统,再刷5.9版本。太麻烦了太麻烦了。继续找,在恩山论坛找到了线刷的办法(参考:玩客云-Armbian23.05-直刷包-内核6.1)。然后去github下载了最新版本的直刷包,京东3.5买了一条双头USB线,在一个夜深人静的周六下午,经历了暴力拆机和多次短接失败之后成功刷入了Armbian系统…

阿里云盘初体验

最开始刷完之后我是有点懵的,我刷机是要干嘛来着…

噢,对了,我要看电影。这时候我其实还想着下载这个事。但是在搜索电影资源的时候发现了阿里云盘这个玩意儿。我感觉打开了新世界的大门,原来不用下载就能看(大部分)想看的高清电影!还可以投屏!在这几天中,我沉迷于在阿里云盘上找资源,晚上直接使用手机阿里云盘投屏看视频…

我买个玩客云来干啥来着…
为了不荒废这个便宜的矿渣,经过一番学习(百度),了解到还可以把阿里云盘挂载到本地路径供局域网的电脑、投影仪、电视访问,也算是找到一点(几乎没有)用处。

具体步骤也不描述了,百度一大堆,仅介绍一下思路。我参考:玩客云安装armbian后将阿里网盘挂载为本地磁盘,并共享给摄像头当存储设备 这篇文章(以及大量其他文章),在armbian系统中安装了docker, 使用aliyundrive-webdav,davfs2,将我的阿里云盘挂载到本地路径了…

开始折腾Jellyfin和Alist

如果就挂到本地,像访问文件夹一样去访问播放,那我还不如手机投屏还方便呢…
这时候“学习”到有个东西叫Jellyfin, 可以扫描(挂载到)本地的文件夹,刮削海报和电影信息,自动生成海报墙,提供了安卓客户端,可以安装到投影仪和电视,遥控器在海报墙之间刷来刷去,想想都美滋滋啊(虽然没什么*用)。

最开始使用docker安装了jellyfin。在添加媒体库的时候,选择了阿里云aliyundrive-webdav挂载的目录,发现跑特别慢,观察玩客云负载, 发现aliyundrive-web服务基本上把cpu占满了,才几百个电影文件夹, 仿佛要跑到地老天荒(玩客云弱鸡 )。此外,aliyundrive-webdav有个缺点,使用了它之后我只能看到我备份盘的文件,但是看不到资源盘的文件,而我大多数电影资源都在资源盘,需要手动移动道备份盘。

这时候发现一个叫alist的开源项目,可以实现aliyundrive-webdav更多的功能,挂载更多的的网盘,也提供webdav服务。于是我选择把jellyfin的容器停掉,使用docker安装了一个最新版本:

docker run -d --restart=always -v /root/**/alist:/opt/alist/data -p 5244:5244 -e PUID=0 -e PGID=0 -e UMASK=022 --name="alist" xhofe/alist:latest

访问http://*.*.*.*:5244,然后挂载阿里云盘,选择资源盘…还算是非常快速方便的连上了我的阿里云盘。
这次我使用了本地安装的办法安装Jellyfin(为了省资源提效率):

sudo apt install curl gnupg
curl -fsSL https://repo.jellyfin.org/ubuntu/jellyfin_team.gpg.key | sudo gpg --dearmor -o /etc/apt/trusted.gpg.d/jellyfin.gpg
echo "deb [arch=$( dpkg --print-architecture )] https://repo.jellyfin.org/$( awk -F'=' '/^ID=/{ print $NF }' /etc/os-release ) $( awk -F'=' '/^VERSION_CODENAME=/{ print $NF }' /etc/os-release ) main" | sudo tee /etc/apt/sources.list.d/jellyfin.list
sudo apt update
sudo apt install jellyfin

访问http://*.*.*.*:8096就可以继续折腾jellyfin了。这次我使用rclone来挂载alist webdav到本地,挂载完成后继续尝试添加媒体库,开始刮削。by the way , 实测,因为某些原因,需要修改系统hosts文件或者在路由器设置代理,才能正常的访问api,themoviedb.org 刮削到海报和电影信息。经过观察,这次cpu占用率要低很多,20%左右,也比较顺利的刷出了海报墙。

KODI 和 NovaVideoPlayer

我最开始装了个ios端的jellyfin客户端,发现播不动,因为玩客云性能太渣渣,解码太慢了,cpu都占满。然后查了下文档,在jellyfin后台设置优先使用fmp4-hls, 换了个infuse,使用客户端解码,终于可以播放了。

有人推荐使用KODI,但是根据我的亲身经历,这产品经理真…不好用,反人类,装个最新版的一到配置的时候还卡死, 折腾一晚上搞不出效果,放弃…

然后在投影仪和电视上都安装Jellyfin的安卓客户端,再装一个当贝播放器,用Jellyfin浏览电影信息,播放的时候选择使用当贝播放器,实现客户端硬件解码,基本上阿里云盘资源中的电影都能秒点开秒播放了。到此,基本上算是告一段落…?

在播放电影时,观察玩客云的负载,发现rclone 服务占用较高,推测是需要从阿里云盘下载数据挂载到本地再给客户端播放。此外,想着等公网ip申请下来,我在外使用(伪需求,绝对伪需求)时,流量还得经过家里的带宽和玩客云,太不美观了。于是看了下alist的官网,找到了NovaVideoPlayer这款播放器https://github.com/nova-video-player/aos-AVP, 它的最新版本已经支持webdav。直接在github release页面下载它们最新的apk安装包,安装到电视上,配置alist webdav地址,它会自动扫描文件夹,自动连接themoviedb刮削电影信息和海报,生成海报墙,自带影视分类,自带客户端解码播放,也可以选择使用第三方播放器,可以在线自动搜索下载字幕…总之一切都很美妙,等我装好了之后,发现刮削过程中玩客云负载并不高;我选择了一部近50G的高清电影播放,几乎秒开,整个播放过程玩客云保持“冷静”,流量直接从阿里云盘到客户端Nova解码播放…完美,感动得想哭。

总结

简单总结一下,对于我这样的电影党 + 乞丐流派,玩客云刷Armbian,装alist 挂载阿里云盘 ,使用NovaVideoPlayer观看电影,几乎是我尝试下来的最佳实践。当然,由于Jellyfin的界面相对于Nova,还是更美观一点(Nova更偏向之前WP的扁平化风格),因此Jellyfin我也一直留着,在局域网内看电影依然美滋滋。

至于下一步折腾什么?

申请了公网ip, 准备考虑弄个客户端,挂载个闲置的移动硬盘,弄个私人网盘玩玩,就当给我乞丐版的macbook扩容了。

相关文章:

玩客云 线刷Armbian 搭配Alist 阿里云盘 Jellyfin NovaVideoPlayer搞电视墙

啰嗦的背景 喜欢看电影,买了个投影仪,是这一切折腾的开端。 投影仪虽然有当贝系统,但是想看的电影总是需要**电视会员,那我肯定是不用的。因为有爱腾优的会员,最开始都是使用手机投屏,当呗的投影仪好就好…...

9月1日,每日信息差

1、华大智造:已实现海外基因测序仪和测序试剂的量产,实现了海外基因测序仪和测序试剂的量产 2、邮储银行下调定存利率。价格表显示,整存整取,一年期存款年利率为1.58%,二年期年利率为1.85%,三年期年利率为…...

【大数据】Flink 详解(六):源码篇 Ⅰ

Flink 详解(六):源码篇 Ⅰ 55、Flink 作业的提交流程?56、Flink 作业提交分为几种方式?57、Flink JobGraph 是在什么时候生成的?58、那在 JobGraph 提交集群之前都经历哪些过程?59、看你提到 Pi…...

ShardingSphere——弹性伸缩原理

摘要 支持自定义分片算法,减少数据伸缩及迁移时的业务影响,提供一站式的通用弹性伸缩解决方案,是 Apache ShardingSphere 弹性伸缩的主要设计目标。对于使用单数据库运行的系统来说,如何安全简单地将数据迁移至水平分片的数据库上…...

Linux项目自动化构建工具-make/Makefile

一、什么是make和makefile make是一条指令 Makefile是当前目录下的一个文件 二、makefile文件编写 依赖关系::前为要目标文件,后为其依赖的文件 依赖方法:用依赖文件生成目标文件的具体指令 简便写法: $:表示目标文件 $^:表示…...

Python爬虫实战:自动化数据采集与分析

在大数据时代,数据采集与分析已经成为了许多行业的核心竞争力。Python作为一门广泛应用的编程语言,拥有丰富的爬虫库,使得我们能够轻松实现自动化数据采集与分析。本文将通过一个简单的示例,带您了解如何使用Python进行爬虫实战。…...

视频智能分析平台EasyCVR安防视频汇聚平台助力森林公园防火安全的应用方案

一、研发背景 随着经济的发展和人们生活水平的提高,越来越多的人喜欢在周末去周边的森林公园旅游,享受大自然的美景,并进行野炊和烧烤等娱乐活动。然而,近年来由于烟蒂和烧烤碳渣等人为因素,森林公园火灾频繁发生。森…...

跨境做独立站,如何低成本引流?

大家都知道,海外的消费习惯与国内不同,独立站一向是海外消费者的最喜欢的购物方式之一,这也吸引了许多跨境商家开设独立站。 独立站不同于其他的第三方平台,其他平台可以靠平台自身流量来获得转化,而独立站本身没有流…...

leetcode55.跳跃游戏 【贪心】

题目: 给你一个非负整数数组 nums ,你最初位于数组的 第一个下标 。数组中的每个元素代表你在该位置可以跳跃的最大长度。 判断你是否能够到达最后一个下标,如果可以,返回 true ;否则,返回 false 。 示例…...

探秘C语言扫雷游戏实现技巧

本篇博客会讲解,如何使用C语言实现扫雷小游戏。 0.思路及准备工作 使用2个二维数组mine和show,分别来存储雷的位置信息和排查出来的雷的信息,前者隐藏,后者展示给玩家。假设盘面大小是99,这2个二维数组都要开大一圈…...

Leetcode112. 路径总和

力扣(LeetCode)官网 - 全球极客挚爱的技术成长平台 给你二叉树的根节点 root 和一个表示目标和的整数 targetSum 。判断该树中是否存在 根节点到叶子节点 的路径,这条路径上所有节点值相加等于目标和 targetSum 。如果存在,返回 t…...

生成12位短id,自增且不连续,永不重复,不依赖数据库

基本思路: 设计模式:单例模式 是否加锁:是 synchronized 获取最后一次生成的时间戳值T0 限定初始时间为2023-08-01 00:00:00,获取当前时间时间戳T1,T1与初始时间的毫秒差值T2,转为16进制,转为字符串为r1,获取该字符串的长度L1…...

Zip压缩文件夹php打包函数代码

Zip压缩文件夹php打包函数代码,Zip相关函数是PHP的扩展功能,此函数可以直接复制使用。 以下是代码: <?php # 将文件夹的文件压缩到文件里 class Zip {/*** 将目标文件夹下的内容压缩到zip中(zip包含文件夹目录)* @param $sourcePath *文件夹路径 例: /home/test* @p…...

RISC-V交叉工具链riscv-gnu-toolchain编译

文章目录 1、下载2、编译1. 依赖安装2. 编译 3、运行 1、下载 $ sudo apt-get install git wget build-essential $ git clone https://github.com/riscv-collab/riscv-gnu-toolchain $ git checkout 2023.06.02注意上面 clone 的仓库&#xff0c;我们称其为构建脚本仓库&…...

我能“C“——指针进阶(上)

目录 指针的概念 1. 字符指针 2. 指针数组 3. 数组指针 3.1 数组指针的定义 3.2 &数组名VS数组名 3.3 数组指针的使用 4. 数组参数、指针参数 4.1 一维数组传参 4.2 二维数组传参 4.3 一级指针传参 4.4 二级指针传参 5. 函数指针 阅读两段有趣的代码&…...

SQLServer2008数据库还原失败 恢复失败

源地址&#xff1a;http://www.taodudu.cc/news/show-1609349.html?actiononClick 还原数据库问题解决方案 在还原数据库“Dsideal_school_db”时&#xff0c;有时会遇见上图中的问题“因为数据库正在使用&#xff0c;所以无法获得对数据库的独占访问权”&#xff0c;此时我们…...

【微服务部署】04-ForwardedHeaders

文章目录 1. ForwardedHeaders1.1 场景1.2 关键的HTTP头1.3 核心处理要点 1. ForwardedHeaders 1.1 场景 获取用户IP获取用户请求的原始URL 1.2 关键的HTTP头 X-Forwarded-ForX-Forwarded-ProtoX-Forwarded-Host 1.3 核心处理要点 设置PathBase设置ForwardedHeaders中间件…...

JVM 垃圾收集器

重点&#xff1a;CMS&#xff0c;G1&#xff0c;ZGC 主要垃圾收集器如下&#xff0c;图中标出了它们的工作区域、垃圾收集算法&#xff0c;以及配合关系。 Serial 收集器 Serial 收集器是最基础、历史最悠久的收集器。 如同它的名字&#xff08;串行&#xff09;&#xff0c…...

CSS 样式使用link和@import有什么区别

在页面导入样式时&#xff0c;使用link和import有以下区别&#xff1a; 位置&#xff1a;link标签可以放置在HTML文档的head或body中的任何位置&#xff0c;而import规则必须出现在CSS样式表的顶部。 加载方式&#xff1a;当浏览器解析到link标签时&#xff0c;会立即请求并加…...

LeetCode-2511-最多可以摧毁的敌人城堡数目

题目链接 代码实现&#xff1a; class Solution {/** 找 1 -> -1 的时候&#xff0c;经过0的最大个数* 解题思路&#xff1a;双指针*/public int captureForts(int[] forts) {int len forts.length;if(len1){return 0;}int max Integer.MIN_VALUE;boolean flag false;boo…...

iOS开发Swift-2-图片视图、App图标-赏月App

1.创建新项目 点击File - New - Project。 选择Single View App&#xff0c;点击Next。 填写文件信息&#xff0c;点击Next。 选择文件位置&#xff0c;点击Create。 修改App显示名称为 “赏月”。 2.设置背景色 选择Main&#xff0c;点击View界面&#xff0c;选择右边属性&…...

node18 vue2启动报错 error:0308010C:digital envelope routines::unsupported

出现原因 貌似是因为是因为 node 17版本开始发布的OpenSSL3.0, 而OpenSSL3.0对允许算法和密钥大小增加了严格的限制&#xff0c;可能会对生态系统造成一些影响。 解决方法 第一种方法降低node版本 降低到17以下即可 &#xff0c;如项目不能降低版本 看后面的解决方式 第二…...

Java8实战-总结18

Java8实战-总结18 使用流筛选和切片用谓词筛选筛选各异的元素截短流跳过元素 使用流 流让你从外部迭代转向内部迭代。这样&#xff0c;就用不着写下面这样的代码来显式地管理数据集合的迭代(外部迭代)了&#xff1a; List<Dish> vegetarianDishes new ArrayList<>…...

ARM编程模型-指令流水线

流水线技术通过多个功能部件并行工作来缩短程序执行时间&#xff0c;提高处理器核的效率和吞吐率&#xff0c;从而成为微处理器设计中最为重要的技术之一。 1. 3级流水线 到ARM7为止的ARM处理器使用简单的3级流水线&#xff0c;它包括下列流水线级。 &#xff08;1&#xff0…...

邮件营销:高效的节日宣传方式

每个国家都有当地的传统节日&#xff0c;像是我国刚过去的端午节&#xff0c;即将迎来的中秋节、国庆节。我们除了会进行一些传统习俗外&#xff0c;各路商家还会趁这个机会开启促销活动。 对于公司来讲&#xff0c;抓住每一次营销活动都可能会带来更高的营销额&#xff0c;或…...

Leetcode109. 有序链表转换二叉搜索树

力扣&#xff08;LeetCode&#xff09;官网 - 全球极客挚爱的技术成长平台 给定一个单链表的头节点 head &#xff0c;其中的元素 按升序排序 &#xff0c;将其转换为高度平衡的二叉搜索树。 本题中&#xff0c;一个高度平衡二叉树是指一个二叉树每个节点 的左右两个子树的高度…...

基于Googlenet深度学习网络的人脸身份识别matlab仿真

目录 1.算法运行效果图预览 2.算法运行软件版本 3.部分核心程序 4.算法理论概述 5.算法完整程序工程 1.算法运行效果图预览 2.算法运行软件版本 matlab2022a 3.部分核心程序 ..................................................................... % 定义修改的范围 …...

vue2 生命周期,工程化开发入门

一、今日目标 1.生命周期 生命周期介绍生命周期的四个阶段生命周期钩子声明周期案例 2.工程化开发入门 工程化开发和脚手架项目运行流程组件化组件注册 二、Vue生命周期 思考&#xff1a;什么时候可以发送初始化渲染请求&#xff1f;&#xff08;越早越好&#xff09;什么…...

Elasticsearch 分布式搜索——聚合

1.聚合的种类 聚合常见的有三类&#xff1a; **桶&#xff08;Bucket&#xff09;**聚合&#xff1a;用来对文档做分组 TermAggregation&#xff1a;按照文档字段值分组&#xff0c;例如按照品牌值分组、按照国家分组Date Histogram&#xff1a;按照日期阶梯分组&#xff0c;例…...

苹果将在iPhone16系列中引入微透镜阵列技术,亮度更高、功耗更低

根据韩国媒体The Elec的报道&#xff0c;苹果公司正与其主要供应商三星和LG展开合作&#xff0c;以评估并衡量是否有必要在明年的iPhone 16系列中引入微透镜&#xff08;micro-lens&#xff09;技术来升级屏幕。 这项方案集中在OLED屏幕架构上&#xff0c;计划采用微透镜阵列&…...