LibreELEC部署媒体中心服务器emby和jellyfin篇

2020-03-28 13:57:54 58点赞 507收藏 42评论

创作立场声明:jellyfin衍生于emby 3.5.2,emby从版本3.6开始不再开源。目前常见的4.X版本硬件转码需要购买会员。所以本文只选择了3.5.3版完成教程。本文用到的emby安卓客户端将放到百度网盘中。

emby和jellyfin的前世今生

用过jellyfin和emby的朋友肯定会发现,这两个软件不论端口8096还是界面都非常的相似,实际上jellyfin是从emby发展来的。起因是emby在3.6版本开始就不再开源,引起了一些核心开发人员的不满,这些人就独立出来做了jellyfin。jellyfin基于emby的3.5.2开发,许多文件还能发现的字样。在LibreELEC中emby的搭建方式可以用插件也可以用docker,这里我只讲插件安装emby server的方法。emby的docker安装方法和jellyfin差不多,大家可以参考linuxserver.io的介绍配置。jellyfin目前只能考虑使用docker安装,至于portable和linux Generic x86_64的版本无法运行(事实证明该方案目前不可行,后文会说原因)。

既然emby好用为啥还折腾jellyfin呢?因为闭源问题,现在新版的emby的硬件转码需要购买Premiere版本才可以开启硬件转码。但是老版本很多功能又不再支持了。我个人还是更看好jellyfin以后的发展,毕竟开源免费。这里我把两个媒体中心服务器的安装方法都放出来,大家可以根据自己的需要考虑用哪个。

LibreELEC安装emby server插件

Emby的服务器端插件在LibreELEC中默认给了安装插件,我们需要在插件选项中选择从库安装来安装emby插件,但是这里emby的插件有两个版本,3.5.3和4以上。我这样的穷鬼肯定还是选3.5.3的,如果已经购买了emby的会员可以考虑选择4,获取更多的技术支持。

LibreELEC部署媒体中心服务器emby和jellyfin篇

LibreELEC部署媒体中心服务器emby和jellyfin篇

LibreELEC部署媒体中心服务器emby和jellyfin篇

LibreELEC部署媒体中心服务器emby和jellyfin篇

LibreELEC部署媒体中心服务器emby和jellyfin篇

LibreELEC部署媒体中心服务器emby和jellyfin篇

建议关闭自动更新,以免哪天升级到4.x版本,硬件转码就不能免费用了。建议关闭自动更新,以免哪天升级到4.x版本,硬件转码就不能免费用了。

然后输入本地服务器的IP地址:8096就可以看到emby的客户端了。

LibreELEC部署媒体中心服务器emby和jellyfin篇

emby开启转码功能

emby语言国家等基本设置大家根据自己的实际情况设置即可,这里只介绍和LibreELEC有关的转码设置以及媒体库索引路径。

点击右上角的齿轮进入设置菜单点击右上角的齿轮进入设置菜单

LibreELEC部署媒体中心服务器emby和jellyfin篇

查询intel核心显卡的支持情况

如果使用的是intel的核心显卡,可以到intel的官网查询自己cpu的核心显卡支持的转码方式。这个网站还可以查询intel CPU的参数,例如是否支持VT-D等。

这里点击搜索这里点击搜索

这里输入CPU的型号这里输入CPU的型号

点击规格,点击产品规范。点击规格,点击产品规范。

LibreELEC部署媒体中心服务器emby和jellyfin篇

LibreELEC部署媒体中心服务器emby和jellyfin篇

上次文章中有朋友问我推荐的哪种硬件,我当时建议的是G4560。考虑到现在8代的G5400T也就300多块钱,所以能上新还是推荐8代吧,毕竟核心显卡更好。J3455或者J1900这种看普通的H.264 4K是没问题的,H.265 10bit可能会有困难。所以准备一步到位的情况下推荐用G5400T,首先价格不是很贵,G5400T综合功耗和性能能够满足NAS+HTPC的使用,千元左右可以搞定4K H.265 10bit转码。如果喜欢弄黑群做硬件转码可以考虑J3455系列,对918+黑群支持的更好。功耗的这件事,我的态度是主要看多少纳米的制程,8代14纳米制程不会很费电,而且性能有余量,低负载情况下不会比所谓的低功耗CPU费电多少,但是性能不足CPU经常满载的话,CPU会非常的卡,也不会省下多少电费,此外CPU性能稍微强一点还能做更多的事情,比如做一个all in one的服务器,HTPC+NAS+软路由都是可以的,组一台多用途的服务器的电费总好过多台服务器加起来的总和。CPU发展到现在已经很成熟了,除非是落后的制程和技术,一般来说还是考虑用多少电换多少性能,大家选择处理器的时候可以根据需求适当考虑余量。CPU的话题扯远了,下面我们来讲解Jellyfin这边的安装和配置。

jellyfin在docker下安装后的设置

(如果根据我的教程已经安装了emby的朋友请一定在管理控制台中的高级选项中把网页登录的端口号修改一下,不然会造成jellyfin无法访问)

LibreELEC部署媒体中心服务器emby和jellyfin篇

LibreELEC部署媒体中心服务器emby和jellyfin篇

如果改完端口号也没啥反应,就到LibreELEC中把emby服务的插件禁用,等几秒钟后再启用就可以了。

LibreELEC部署媒体中心服务器emby和jellyfin篇

LibreELEC部署媒体中心服务器emby和jellyfin篇

LibreELEC部署媒体中心服务器emby和jellyfin篇

LibreELEC部署媒体中心服务器emby和jellyfin篇

测试下ip地址:8100是否能够打开emby,如果不能操作重复上述设置步骤,保存后禁用再开启服务或者重启主机直至能打开。

考虑到libreelec很多朋友都是考虑使用arm盒子来安装,所以采用了linuxserver.io维护的jellyfin。在他的介绍页面中可以找到arm盒子的GPU硬件加速的参数,这个是官方docker所不具备的,为了保证一定的通用性,我就找了linuxserver维护的jellyfin,各位看官可以视平台自行决定。linuxserver的dockerhub地址,具体参数大家可以参考修改

在之前的教程里没有在config的data目录下创建transcodes文件夹,但是在LibreELEC中如果没有这个文件夹会导致硬件转码失败。

在/storage/docker/jellyfin/config/data文件夹下创建transcodes文件夹在/storage/docker/jellyfin/config/data文件夹下创建transcodes文件夹

jellyfin的安装在lubuntu和omv的文章中已经介绍过多次,这里不再赘述。在ssh环境中登libreelec,默认路径是/storage,我们在storage目录下创建文件夹docker,docker下创建jellyfin目录用来保存容器的配置环境。

(1) mkdir docker

(2) cd docker

(3) mkdir jellyfin

(3) cd jellyfin

(4) mkdir cache config

(5) cd config

(6) mkdir data

(7) cd data

(8) mkdir transcodes

(9) cd

这时候光标退回到默认/storage目录下,我们通过docker安装jellyfin。ssh中输入命令:

docker run -d --name=jellyfin-HW -e PUID=0 -e PGID=0 -p 8096:8096 --device=/dev/dri:/dev/dri -v /storage/docker/jellyfin/config:/config -v /storage/docker/jellyfin/cache:/cache -v /var/新加卷/media:/media --restart=always linuxserver/jellyfin

如果有命令行恐惧症,可以采用winscp软件登录。下载安装过程不表,360软件中心或者网页上搜下winscp安装下载即可。软件设置如下:

LibreELEC部署媒体中心服务器emby和jellyfin篇

保存后点登录保存后点登录

LibreELEC部署媒体中心服务器emby和jellyfin篇

LibreELEC部署媒体中心服务器emby和jellyfin篇

接着创建doker/jellyfin/config/data/transcodes文件夹。

LibreELEC部署媒体中心服务器emby和jellyfin篇

LibreELEC部署媒体中心服务器emby和jellyfin篇

这个transcodes文件夹在转码保存设置前创建好即可,不影响docker部署jellyfin。jellyfin的转码文件在服务器设置中的播放选项卡中,和emby的设置方法类似,打开vaapi其他选项默认,点保存。稍等片刻可以设置成功。但是我的jellyfin有一些格式无法转码播放,docker中log中显示ffmpeg返回error code 137我不明白是什么原因,如果有懂的高人麻烦指点下。在emby 3.5.3中,手机客户端安装2.98版本时候也出现了rm文件无法播放的情况,用了3.0客户端就好了。我猜测是jellyfin的客户端问题,emby的手机客户端的兼容性要好的多,rm文件也可以顺利的开启GPU转码。但是到了网页端情况就反过来了,jellyfin多数文件可以正常的开启GPU转码,emby则提示串流错误。

jellyfin在LibreELEC下安装(暂时放弃,等dotnet插件更新)

之前在docker安装jellyfin之后我尝试把LibreELEC下的ffmpeg-tools的ffmpeg文件映射到docker中给jellyfin来用,但是手机客户端还是无法播放。于是我尝试使用jellyfin官方的教程来安装了generic linux的版本,官网上generic linux和portable是一样的,但是都需要netcore环境,如果没有在libreelec中安装过emby server插件,还需要安装Net Core Runtime和ffmpeg-tools这两个插件。

LibreELEC部署媒体中心服务器emby和jellyfin篇

LibreELEC部署媒体中心服务器emby和jellyfin篇

LibreELEC部署媒体中心服务器emby和jellyfin篇

我参考了jellyfin的安装文档尝试安装了generic linux和portable两种包(下载的时候会发现是一种),按照官网指导配置好以后,运行报错。大意是系统缺少ICU package,我按照网上的教程尝试修改jellyfinportable包内的jellyfin.runtimeconfig.json这个文件才发现这个东西运行需要dotnet的runtime版本达到3.1以上,这个信息我在官方archlinux的教程中也得到了验证,看来新版的jellyfin确实需要在dotnet3.1以上环境下才能运行了。而libreelec插件源中提供的版本最新才2.2.6。

LibreELEC部署媒体中心服务器emby和jellyfin篇

LibreELEC部署媒体中心服务器emby和jellyfin篇

本打算继续尝试用docker版的dotnet和ffmpeg继续搞,但是微软这个dotnet 3.1的docker镜像已经达到了1.7G,而jellyfin的docker镜像才不到500m,反正jellyfin一直在更新,Libreelec也在更新,等后续Libreelec更新了新的插件后我再追加这部分内容,这部分内容就暂告段落。如果有朋友知道如何编译或者更新dotnet插件到新版本请留言告诉我,万分感谢。

结语

从Libreelec平台的角度看emby和jellyfin可以说各有所长,我现在手机看视频大部分时间都在用emby。在网页上我用jellyfin的时间比较多。一个有意思的情况,emby的转码GPU始终保持在25%到50%左右,比jellyfin的CPU解码占用率略低。但是jellyfin遇到可以硬转码的视频,前期会90%多甚至 100%的占用CPU进行转码,等HW转码任务完成后,cpu占用率会降低到10%附近,大部分时间在5%到10%之间。

emby开启硬解码的占用情况emby开启硬解码的占用情况

jellyfin开启硬解码初期jellyfin开启硬解码初期

jellyfin的GPU转码完成后vaapi进程关闭,仅保留ffmpeg进程,cpu占用率很低。jellyfin的GPU转码完成后vaapi进程关闭,仅保留ffmpeg进程,cpu占用率很低。

emby安卓客户端百度网盘地址:

链接

提取码:h074

下一期我将介绍Libreelec下kodi安装emby的客户端以及皮肤设置等。

展开 收起
42评论

  • 精彩
  • 最新
  • 我也是折腾了一圈下来,还觉得还是plex最好用

    校验提示文案

    提交
    plex现在会员多少钱?

    校验提示文案

    提交
    plex 的tv剧集 ,在手机端怎么才能显示字幕?电影没问题,就tv不行

    校验提示文案

    提交
    还有3条回复
    收起所有回复
  • 用jellyfin在手机浏览器看片,字幕用ass的中文都是方框,用srt正常,但是字幕时间轴不同步,而且是随机的,有时慢一点,有时慢很多,在电脑浏览器就正常。同样的片源和字幕emby一点问题没有。

    校验提示文案

    提交
    jellyfin毕竟还年轻,需要时间。

    校验提示文案

    提交
    目前docker里还有个3.5.3这个硕果仅存的版本,我这台ivy平台的老机器上emby比jellyfin效果更好,你可以在docker注册表中搜一下emby-unlock我也是随便找来的一个,发现能用。

    校验提示文案

    提交
    收起所有回复
  • 家里是B款蜗牛星际,想弄个all in
    one,有没有推荐的升级方案,双网口,4SATA

    校验提示文案

    提交
    蜗牛星际主机可以考虑用unraid搭建,建议看下阿文菌和哔哩哔哩上司波图的视频,讲的都很详细,也用了j1900的平台。用unraid可以软路由+nas+转码,如果还有余力可以直通显卡装这个libreelec当播放器。

    校验提示文案

    提交
    收起所有回复
  • 刚买了块i5 5675c,替换旧电脑的4130,和h97配合使用。等有空了弄个unraid玩

    校验提示文案

    提交
    unraid很合适带vtd的平台

    校验提示文案

    提交
    这块5675c有vtd

    校验提示文案

    提交
    还有1条回复
    收起所有回复
  • 大神,我想问一下,为什么我每次安装kodi 都设置中文失败,就是只有English ,没有Chinese simplicity。另外,插件下载安装也全是失败!更可气的是我无论在shield tv上,还是华为荣耀盒子上,都失败。

    校验提示文案

    提交
    情况是这样的,有时候大天朝的网会抽风,就下不来。解决办法是可以去下一个中文语言包的插件,地址你参考下这个,自己安装好就能看到中文语言的选项了。我第一次装libreelec也遇到这种情况了。去看看

    校验提示文案

    提交
    你可以百度查一下kodi的中文语言插件,去看看你可以找下类似的包下载通过zip安装,通常过一阵网络好了就没问题了。

    校验提示文案

    提交
    还有1条回复
    收起所有回复
  • 话说,就没有成品nas+HTPC系统吗?

    校验提示文案

    提交
    QNAS威联通

    校验提示文案

    提交
    收起所有回复
  • 如果直接安装lrbreelec系统,不用emby,那是不是就可以直接用自己的硬件解码,我是四代i3. 集成的inter 4600显卡,我发现看4k片源20g左右容量的,很卡,不知道是不是没设置对,请大佬赐教!

    校验提示文案

    提交
    emby主要作用是同步nas里的媒体库,节约自己设置的时间。libreelec里面自带了核心显卡驱动可以满足解码需要。我这里写的转码的作用是把libreelec当做一个串流服务器,假如不在家其他地方手机播放时候可以调用显卡编码,把高码率分辨率的视频转换成低码率分辨率的视频,有利于带宽有限且对清晰度要求不太高的手机去播放。

    校验提示文案

    提交
    收起所有回复
  • Jellyfin下如何映射媒体文件夹?麻烦指点,谢谢大佬!

    校验提示文案

    提交
    本来以为win下不算啥问题,我用raidrive目的就是方便挂载文件夹。正常索引媒体库点右边放大镜找到对应视频所在的文件夹就行了。

    校验提示文案

    提交
    收起所有回复
  • 大佬,小白没看懂,能用两句话简要说一下KODI装这个插件干嘛用吗?如果看共享的视频,那KODI本身不是就支持吗?

    校验提示文案

    提交
    kodi插件我主要是看电视用iptv。至于你说的插件我理解是raidrive吧,那个主要为了索引方便,不然kodi里加文件夹要输入一大串路径,还要登陆账户密码。这个raidrive还方便了jellyfin挂载视频文件。

    校验提示文案

    提交
    谢谢了,kodi太复杂了,看迷糊了 [喜极而泣]

    校验提示文案

    提交
    收起所有回复
  • emby装了没反应

    校验提示文案

    提交
    你用的是插件里自带的emby server吗

    校验提示文案

    提交
    LZ,我是PVE6.1下面安装了libreelec,显卡声卡都做了直通,hdmi接显示器、远程都没有问题。按照你的教程安装了emby server 3.5。但是内网网络访问8096端口毫无反应。请教啥情况哟?

    校验提示文案

    提交
    还有8条回复
    收起所有回复
  • 回头把前几篇看看

    校验提示文案

    提交
  • 不支持原盘

    校验提示文案

    提交
  • 你好,用手机远程观看emby里的电影,非常卡,已选择720p,3m码源的电影,不知道是怎么回事,求助,谢谢!家里宽带是公网ip, 30m上传。

    校验提示文案

    提交
提示信息

取消
确认
评论举报

相关文章推荐

更多精彩文章
更多精彩文章
最新文章 热门文章
507
扫一下,分享更方便,购买更轻松