老E的博客

  • 首页
  • 关于
  • 技术应用
    • VPS相关
    • AI相关
    • 盒子相关
    • 其他
  • 订阅Youtube频道
  • 网络加速
    • expressvpnNo.1 ExpressVPN
    • 最佳免费VPN-PrivadoVPN
    • NordVPN
    • 廉价王者-Surfshark
    • PrivateInternetAccess
    • 解锁一切-PrivateVPN
  • 公益资源
    • AI导航
    • 工具下载
    • Docker镜像加速
  • 友情链接
    • tickcloudTickcloud
老E的博客
专注记录并分享跨境技术应用及随想
  1. 首页
  2. 技术应用
  3. 正文

Jellyfin封面与字幕乱码的解决方法

2024年2月14日 8648次阅读 0条评论
clawcloud
expressvpn best vpn
privado vpn
surfshark vpn
private vpn
pia vpn
nord vpn
Windows下安装、使用jellyfin基本不会遇到什么问题,但跑在armbian盒子上的jellyfin对中文的字体支持不太行,封面乱码、字幕乱码时有出现,已有的解决措施基本都是在容器化部署的NAS上,或者比较简单粗暴。本文简要介绍下规范、优雅点的jellyfin乱码解决办法。

方法一:安装noto-cjk-extra字体

本方法安装字体文件约需300M的磁盘空间,并且如果jellyfin以容器方式加载运行的话,需要在容器环境(不是宿主机)下运行。

apt update -y
apt install fonts-noto-cjk-extra

安装完成后,在封面上右键,选择『修改图片』,删除图片后再重启容器、重新扫描媒体即可。

方法二:同名替换支持中文的字体

jellyfin默认采用的字体是DejaVu,DejaVu的6个字体文件(3类字体)是不支持中文的,我们可以进行同名替换。

DejaVuSans-Bold.ttf
DejaVuSans.ttf
DejaVuSansMono-Bold.ttf
DejaVuSansMono.ttf
DejaVuSerif-Bold.ttf
DejaVuSerif.ttf

下载替换中文字体文件,本文参考开源的字体文件repo如下:

https://github.com/notofonts/noto-cjk/releases

分析上面Jellyfin使用的DejaVu字体文件,分别为Sans、SansMono、Serif的常规(Regular)和加粗(Bold)字体文件。我们可以在noto-cjk仓库中仅下载Sans、SansMono、Serif三类字体。下方可直接点击下载:

  • Sans -「简体中文」、「繁体中文」
  • SansMono -「简体中文」、「繁体中文」
  • Serif  -「简体中文」、「繁体中文」

找到中文字体下载后解压,每类字体选择2个字体文件,对应修改名称为上文的文件名。例如将NotoSansCJKsc-Regular和NotoSansCJKsc-Bold分别拷贝更名为DejaVuSans和DejaVuSans-Bold。

这样就与DejaVu对应的6个待替换字体文件,替换之前,还需要通过格式转换将otf文件转换为ttf文件。

DejaVu ttf

otf 转 ttf 可以使用在线的字体转换服务,或者是使用开源项目自行转换。这里分享转换后可直接下载使用的「压缩包」。

替换文件我们可以采取最简单的方法,以windterm为例,进入并同步至/usr/share/fonts/truetype/dejavu/目录,通过sftp将文件拖拽进当前目录覆盖、替换掉原字体文件即可。

完成替换后,可重新扫描媒体库、刷新元数据、手动触发计划任务等多种方式,实际耗费的时间基本相同。

正确的操作顺序是在控制台进行操作后,重启jellyfin服务,再通过浏览器打开jellyfin后刷新元数据。完成上述操作后,封面标题显示恢复正常。

字幕中文显示异常

Linux对中文支持不好,arm64 Linux下的jellyfin只会更差。字幕中文字显示异常(口口口)的解决方法相对简单,下载「Noto Sans SC woff2」 字体包,解压后,仅拷贝 NotoSansCJKsc-Medium.woff2 文件至目标文件夹。本文示例为/usr/share/fonts/truetype/dejavu目录。

打开jellyfin控制台。左侧导航栏选择『播放』,勾选『启用备用字体』,上方填入备用woff2文件所在目录。

配置完成后,视频播放过程中的中文乱码问题得到解决。

文中环境为armbian直接安装的jellyfin,存储设备(硬盘柜)的samba访问权限仅向transmission应用开放,jellyfin本地、管理访问媒体文件。个人认为,嵌入式平台如果以媒体服务为主,应避免使用docker,安全性提高了一点,降低、牺牲了易用性、性能等,而家庭媒体串流领域对安全性并没有要求。

本作品采用 知识共享署名-非商业性使用-禁止演绎 4.0 国际许可协议 进行许可
标签: armbian Jellyfin
最后更新:2024年5月22日

老E

这个人很懒,什么都没留下

点赞
< 上一篇
下一篇 >

文章评论

razz evil exclaim smile redface biggrin eek confused idea lol mad twisted rolleyes wink cool arrow neutral cry mrgreen drooling persevering
取消回复

站内搜索
归档
  • 2025 年 5 月
  • 2025 年 4 月
  • 2025 年 3 月
  • 2025 年 2 月
  • 2025 年 1 月
  • 2024 年 12 月
  • 2024 年 11 月
  • 2024 年 10 月
  • 2024 年 9 月
  • 2024 年 8 月
  • 2024 年 7 月
  • 2024 年 6 月
  • 2024 年 5 月
  • 2024 年 4 月
  • 2024 年 3 月
  • 2024 年 2 月
  • 2024 年 1 月
  • 2023 年 12 月
  • 2023 年 11 月
  • 2023 年 10 月
  • 2023 年 9 月
  • 2023 年 8 月
  • 2023 年 7 月
  • 2023 年 6 月

Copyright ©2023-2025 Appscross. All Rights Reserved.