在jellyfin10.5.5中解决ASS字幕无法正常显示的问题

2020-05-17 14:03:55 38点赞 248收藏 65评论


前言

2019年,经站内大佬们介绍,成功上车星际蜗牛C双版本,并安装了黑群,此后NAS一直稳定运行。

最近经过@阿文菌等大佬孜孜不倦的安利,将NAS升级成i3 8100+矿渣B365主板,并且部署了docker版的jellyfin,想着也体验一把远程串流。

组装一台高性能NAS:打造家庭影音媒体服务器 流畅硬解转码Plex Emby Jellyfin大家好,俺又来了!之前一直推荐大家使用华擎J3455ITX主板当作家庭的NAS服务器,到目前为止,我还是觉得J3455非常不错。功耗低,价格便宜,体积小,盘位多,性能方面,在一般日常家用还是足够的。J3455安装黑群晖NAS的文章,如果不知道NAS是什么的朋友也可以看下面这篇文章开头了解,这里就不重阿文菌| 1k 评论1k 收藏10k查看详情我爱捡垃圾 篇四:800元购买G5400蜗牛D款新矿渣,内置ITX主板:B365芯片+双千兆网口+6sata!前言大家好,俺又来了!最近已经新开一个专栏,专门分享一些我觉得低价而购入的设备,觉得有价值,就分享给大家。这个专栏的名字,就叫:我爱捡垃圾,也和站内同类话题的文章相符,大家检索起来也方便!至于我分享的商品,到底值不值这个价格,大家说了算!我只是分享!专栏内的所有商品,都是我自费购买,折腾完了有可能再阿文菌| 442 评论435 收藏1k查看详情jellyfin 10.4.3之后无法硬解的解决方法小编注:此篇文章来自#原创新人#活动,成功参与活动将获得额外50金币奖励。先说下我为什么想升级,不知道你们在使用的过程中有没有发现,字幕不同步的问题,或者声音不同步的问题,苹果设备更为明显,字幕延迟吓死爹!且这些问题发生都是在无线环境下,我不清楚是带宽问题还是其他什么问题,但是足以带给我去升级版本的esp卡米| 24 评论70 收藏167查看详情

(在此感谢大佬们无私分享经验知识!)

然而,在安装最新的10.5.5版本的jellyfin后,发现使用jellyfin在播放外挂ASS字幕的视频时,字幕无法正常显示,会出现一个个的方框。经过多方查询后并没有得到有效的解决办法,大部分网友们选择将ass字幕替换成scr字幕以规避此问题。

ass字幕无法正常显示,变成了一个个的方框ass字幕无法正常显示,变成了一个个的方框

现在NAS上的影音资源大多是这几年慢慢积累起来的,是在懒得挨个检查文件夹并替换字幕,所以只能自力更生,所幸最终找到了一个解决该问题的方法,迫不及待的来分享给大家。

本人是NAS小白,说实话连jellyfin的日志文件都看不懂,在次只是抛砖引玉,给大家提供一个思路,希望大家集思广益,最终找到更有效的解决方案。

解决过程

看到播放时字幕变成了方框,我第一个思路就是,该问题是否类似windows系统中播放视频时字体库不全,引发的字体兼容问题。

用记事本打开ass格式的字幕文件,发现ass字幕格式中自带对字幕字体进行了声明。

在jellyfin10.5.5中解决ASS字幕无法正常显示的问题

考虑jellyfin为linux内核,且为国外开发人员开发,猜测其内置字体库对中文字体支持不佳,所以尝试将相应中文字体挂载到jellyfin字体库中。

在jellyfin10.5.5中解决ASS字幕无法正常显示的问题

查看10.5.5版jellyfin的日志文件,以font为关键字未搜到相关内容。

在10.5.5版字幕显示有问题后我安装过10.5.4版本,在日志文件中偶然搜到几句日志,大意是因字体不兼容,转用/usr/share/fonts的dejavu字体。但是当时未截图,后来调试过程中将10.5.4的映像删除后再也没有下载成功。。。

作为不懂linux的小白,此时只能依靠百度了。。。经查询/usr/share/fonts目录为linux的字体库目录,所以尝试一下将中文字体导入该目录中,看看效果。

下载了字幕文件中声明的几种中文字体后,在File StStation中随意找个文件夹存放。此处我选择了/download/fonts文件夹。

在jellyfin10.5.5中解决ASS字幕无法正常显示的问题

由于jellyfin运行在docker中,所以jellyfin无法直接调用该文件夹中的字体。在docker中将jellyfin停止,将/Download/fonts文件夹挂载到jellyfin的/usr/share/fonts位置。

选中jellyfin点编辑选中jellyfin点编辑

如图所示进行挂载如图所示进行挂载

重新启动,jellyfin,看看效果。

还是方框。。还是方框。。

纳尼?!竟然还是不行?

此时又想到,在张大妈查询jellyfin字幕问题时看到一网友的评论:

在jellyfin10.5.5中解决ASS字幕无法正常显示的问题

照着这个设置再来试试:

在jellyfin10.5.5中解决ASS字幕无法正常显示的问题

在jellyfin10.5.5中解决ASS字幕无法正常显示的问题

再来试一次:

在jellyfin10.5.5中解决ASS字幕无法正常显示的问题

666,网页版播放成功了!此时并非直接串流视频,而是播放的转码之后的视频流。

回放数据显示因字幕问题而转码回放数据显示因字幕问题而转码


再来测试jellyfin其他客户端的效果:

1.ios客户端

jellyfin的客户端同样需要单独对字幕进行一下设置:

在jellyfin10.5.5中解决ASS字幕无法正常显示的问题

然后再来播放试试:

在jellyfin10.5.5中解决ASS字幕无法正常显示的问题

同样能够正常显示字幕了。

2.安卓客户端

通过百度找到了jellyfin安卓手机客户端的下载地址为:https://repo.jellyfin.org/releases/client/android/,下载realease1.0.0版本安装。

在jellyfin10.5.5中解决ASS字幕无法正常显示的问题

遗憾的是,安卓版本的jellyfin客户端并没有烧录字幕的选项。

无法选择烧录字幕无法选择烧录字幕

尝试播放,没有选择烧录特效字幕的情况下,果然无法播放,又看到了熟悉的方框。

讨厌的方框框讨厌的方框框

3.安卓手机浏览器

经测试,用安卓手机的浏览器访问jellyfin,是有烧录字幕的设置选项的。

在jellyfin10.5.5中解决ASS字幕无法正常显示的问题

照例进行播放测试,一切正常!

在jellyfin10.5.5中解决ASS字幕无法正常显示的问题

总结

1.在使用jellyfin客户端(包括网页、os客户端、安卓客户端等)进行串流时,请记得检查字幕设置,在没有选择烧录特效字幕的情况下,无法正常显示ass等特效字幕。

2.为了体验ass等特效视频,建议提前下载字幕常用字体库存放到NAS中,临时遇到无法正常显示的问题时候,也可以通过查看ass文件中对字体的声明,下载相应字体。字幕常用字体也就那么多,总比一个个重新找scr字幕来的快捷。

3.使用此方法在jellyfin中显示ass字幕的前提是服务端需将字幕烧录进视频流中,即对播放视频进行转码,所以利用核显能对视频进行硬解是必要前提(软解实在是太痛苦了)。蜗牛星际自带的J1900 CPU对HEVC 10bit视频的解码能力非常堪忧,所以在不更新硬件的前提下,貌似只能将将外挂的ass字幕一个个替换成scr格式了。

4.现在1.0.0版本的jellyfin安卓客户端不提供烧录字幕的设置选项,所以安卓手机可以通过网页访问jellyfin来进行播放。


PS:一点小探索

在终于解决了ass字幕显示的问题后,我参考网络教程,利用SSH登陆群晖,用sudo -i获取root权限后,使用docker ps命令获取容器ID,再通过docker exec -it 容器ID /bin/bash的方式进入了jellyfin的文件目录。

疑似与字体配置有关的文件疑似与字体配置有关的文件

在/usr/share/fontconfig/conf.avail目录下,有很多设置文件。百度上说这个目录里存放的是linux系统的字体设置相关文件。因为自己不懂linux,所以无法进一步进行探索了。不知linux大神们能否从这里入手,从底层层面修改jellyfin对中文字体的配置,达到一劳永逸的效果。

展开 收起
65评论

  • 精彩
  • 最新
  • 烧录后的字幕有的字大有的字小,有人遇到吗?

    校验提示文案

    提交
    我还没遇到过。。。建议打开字幕文件瞅瞅,看看里边声明的字体有没有在字体库中。。。。

    校验提示文案

    提交
    收起所有回复
  • 楼主方法亲测有效~但是烧录字幕设置后,会变得非常卡,但是不开启烧录字幕就能流畅播放,很奇怪。。 [大哭]

    校验提示文案

    提交
    烧录字幕后视频会被强制转码,所以最好需要硬解支持,cpu性能不足的话感觉会吃力。不开启烧录字幕的话,有的视频会不经过转码直接串流,流畅0cpu负担小,就比较流畅。

    校验提示文案

    提交
    4年过去了,这个问题 jellyfin 还是没有完美解决

    校验提示文案

    提交
    收起所有回复
  • 请问有打包下载字体文件的链接分享吗,一个一个下好麻烦 [损失几个亿]

    校验提示文案

    提交
    暂时没有。。。百度网盘容量满了,没法上传了。。。

    校验提示文案

    提交
    收起所有回复
  • jefflin 现在好像不能硬解码了

    校验提示文案

    提交
    刚刚实测了一把,i3 8100下jellyfin解码HEVC,占用率11%,还是可以硬解码的。

    校验提示文案

    提交
    这个跟片源有关系

    校验提示文案

    提交
    收起所有回复
  • 我用jellyfin字幕不同步音轴,改成emby就正常。

    校验提示文案

    提交
    我平时也不用jellyfin,自己看的话一般用plex,jellyfin给亲友分享用。

    校验提示文案

    提交
    收起所有回复
  • 只是这样,jellfyin应该还是读取不到字体的,进入jellyfin容器里,输入这个命令刷新Linux系统字体信息
    `fc-cache -fv`

    校验提示文案

    提交
    老哥,刚试了一下,出现了“command not found”……接下来该咋整……

    校验提示文案

    提交
    老哥,输入这个代码显示command not found 咋办。。。

    校验提示文案

    提交
    还有9条回复
    收起所有回复
  • 感谢感谢,烧录正常了
    挂载了方…正…字…库

    校验提示文案

    提交
    可以可以,能帮上忙就好~

    校验提示文案

    提交
    收起所有回复
  • 多谢楼主,还需要改字体吗?我看改完烧录就不乱码了呀。

    校验提示文案

    提交
    我下了字幕常用的几十个字体,一劳永逸。。。没有乱码的话,只要对字体要求不高,不改字体估计也行,反正能显示中文就成。

    校验提示文案

    提交
    收起所有回复
  • [喜极而泣] 感谢,做了映射后直接把整个Windows字库拖进去重启就解决了 [喜极而泣] [喜极而泣]

    校验提示文案

    提交
    能帮上忙就好……

    校验提示文案

    提交
    请问,你的jellyfin是装在win上的吧?有说的映射有具体操作步骤吗?

    校验提示文案

    提交
    还有8条回复
    收起所有回复
  • 非常感谢,把字库照着教程加载进去就搞定了,之前要不是实在太多,都差点全部下载srt字幕替换了

    校验提示文案

    提交
    我也是啊,以前下载的资源太多,实在懒得一个个替换字幕了

    校验提示文案

    提交
    收起所有回复
  • 我不是容器里的jellyfin,在APP商店里下载安装的。也出现了口口口。这时去jellyfin设置里启用备用字体,指定有中文字体的目录后,一切正常。但是只要一重启NAS,字体文件就丢失,好像自动删除一样。我也无语了,现在也没解决方法,楼主有解决方法吗?

    校验提示文案

    提交
    有了,现在有大神魔改后中国特供版的jellyfin了,这些问题都解决了,超好用。

    校验提示文案

    提交
    从哪下。。找不到尴尬

    校验提示文案

    提交
    还有1条回复
    收起所有回复
  • 抱歉挖个坟,在把字体上传到fonts文件夹后,可以到控制台-播放,找到额外字体路径,填写fonts文件夹的路径,确认下面勾选了启用备用字体与允许实时提取字幕,即可消除字幕的方框,并且不知道为什么还是直接推流,没有转码 [狂汗]

    校验提示文案

    提交
    请问你是哪个版本的jellyfin,我的10.6.4没有发现这个额外字体路径的设置

    校验提示文案

    提交
    设置好但是还是不行

    校验提示文案

    提交
    收起所有回复
  • 这个可以有,用了楼主的方法,成功解决jellyfin的字幕框框问题 [大妈三宝] [大妈三宝] [大妈三宝]

    校验提示文案

    提交
  • 按楼主方法实测有效,就是基本所有视频都要转码了,对CPU有要求,我用的是UNRAID系统里的Jellyfin,cpu是老旧的i5 2400,集显不支持HEVC,但CPU还是可以顶一下,就是要彪到80%、90%多。

    校验提示文案

    提交
  • jellyfin服务端app用emby来看也能正常显示的

    校验提示文案

    提交
  • 非常感谢,我是威联通,照你的文章做了2个关键步骤。在 Portainer 里重建了 jellyfin,设置了字体文件夹映射 /share/Download/fonts 到 /usr/share/fonts,然后 jellyfin 里设置烧录,成功显示 ass 的中文

    校验提示文案

    提交
  • jellyfin播放4K时报错提示:客户端配置文件存在问题,服务器未发送兼容的媒体格式。 播放1080P正常.

    校验提示文案

    提交
    同样,所以后来还是买了plex。。。plex很成熟也很省心,只是不容易分享,只能独享了。

    校验提示文案

    提交
    收起所有回复
  • 去看看。看见别的网友的一个帖子,提供了很全的字体库文件,还有在WIN系统下的字幕字体识别和加载程序,GITHUU上也有项目,不知有没有大神能否移植一下。

    校验提示文案

    提交
    下载地址是什么请问

    校验提示文案

    提交
    收起所有回复
  • 能共享你下载好的需要用到的字体文件吗?

    校验提示文案

    提交
  • 请教下在播放时显示视频信息是按哪个键咩

    校验提示文案

    提交
    播放的时候,设置按钮——回放数据

    校验提示文案

    提交
    谢谢谢谢哈 [吃土]

    校验提示文案

    提交
    收起所有回复
提示信息

取消
确认
评论举报

相关文章推荐

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