群晖(一)DSM7系统 Video Station解锁DST、EAC3和HEVC

群晖(一)DSM7系统 Video Station解锁DST、EAC3和HEVC

前言

最近买了一台群晖DS220+,圆了多年以来的梦想。在折腾群晖的时候发现自带的Video Station无法播放DST和EAC3音频格式的电影,所以就有了这篇文章。

安装Advanced Media Extensions扩展支持HEVC

首先要安装群晖的Advanced Media Extensions扩展以解锁HEVC格式视频的播放,不然播放视频时会始终卡在加载页面。

Advanced Media Extensions

据说只有白群晖才能安装成功,不过我也没试过在黑裙上安装。

安装ffmpeg解锁DTS,EAC3

先手动停止Video Station

停止VS

然后添加社群套件来源,这一步网上大部分教程的社群地址是http://packages.synocommunity.com,但是我通过这个地址添加的ffmpeg套件在后续过程中会出现问题,所以我最后使用了这个地址https://spk7.imnks.com/

添加社群

按照图示顺序添加套件来源,名称自己设一个就好

然后在社群中搜索ffmpeg并安装

安装ffmpeg

然后通过ssh登录群晖,并切换root用户

输入如下指令,输入之前最好看一下自己在做什么

sudo -i
#备份 VideoStation's ffmpeg
mv -n /var/packages/VideoStation/target/bin/ffmpeg /var/packages/VideoStation/target/bin/ffmpeg.orig
#下载ffmpeg脚本
wget -O - https://gist.githubusercontent.com/BenjaminPoncet/bbef9edc1d0800528813e75c1669e57e/raw/ffmpeg-wrapper > /var/packages/VideoStation/target/bin/ffmpeg
#设置脚本相应权限
chown root:VideoStation /var/packages/VideoStation/target/bin/ffmpeg
chmod 750 /var/packages/VideoStation/target/bin/ffmpeg
chmod u+s /var/packages/VideoStation/target/bin/ffmpeg
# 备份VideoStation's libsynovte.so
cp -n /var/packages/VideoStation/target/lib/libsynovte.so /var/packages/VideoStation/target/lib/libsynovte.so.orig
chown VideoStation:VideoStation /var/packages/VideoStation/target/lib/libsynovte.so.orig
# 为libsynovte.so 添加 DTS, EAC3 and TrueHD支持
sed -i -e 's/eac3/3cae/' -e 's/dts/std/' -e 's/truehd/dheurt/' /var/packages/VideoStation/target/lib/libsynovte.so
#备份CodecPack的ffmpeg41
cp /var/packages/CodecPack/target/bin/ffmpeg41 /var/packages/CodecPack/target/bin/ffmpeg41.bak
#链接ffmpeg解码模块
cp /var/packages/VideoStation/target/bin/ffmpeg /var/packages/CodecPack/target/bin/ffmpeg41

然后重启Video Station,此时应该可以播放之前无法播放的视频了。

如果需要恢复原本的ffmpeg,通过如下代码从备份中恢复

#恢复之前备份的 VideoStation's ffmpeg, libsynovte.so, ffmpeg41文件
mv -f /var/packages/VideoStation/target/bin/ffmpeg.orig /var/packages/VideoStation/target/bin/ffmpeg
mv -f /var/packages/VideoStation/target/lib/libsynovte.so.orig /var/packages/VideoStation/target/lib/libsynovte.so
mv -f /var/packages/CodecPack/target/bin/ffmpeg41.bak /var/packages/CodecPack/target/bin/ffmpeg41

总结

一定要按顺序操作,这个顺序指的是先添加HEVC扩展后更换ffmpeg,不然会出现可以播放EAC3视频但是HEVC编码的视频无法播放的问题。


文章作者: keevinzha
版权声明: 咳咳想白嫖文章?本文章著作权归作者所有,任何形式的转载都请注明出处。 https://www.keevinzha.com !
  目录