利用第三方FFMPEG解码器让群晖的Video Station完美支持DTS、EAC3、TrueHD

       群晖公司由于版权的原因,群晖自带的Video Station无法播放带有DTS、EAC3、TrueHD等编码格式的视频文件,严重影响使用效果。本文将利用第三方的ffmpeg替换VideoStation中自带的ffmpeg解码器,完美播放带有DTS、EAC3、TrueHD等编码格式的视频,实现对全视频格式的支持。

一、安装ffmpeg解码器

1、在群晖套件中心,设置,套件来源,新增,名称(任意写),位置:http://packages.synocommunity.com

 

 

        如果按照上述方法不能正常安装ffmpeg套件的,可以到这个地址:https://github.com/th0ma7/synology/tree/master/packages
        请根据自己的CPU架构下载对应的ffmpeg安装包,上传到群晖的套件中心安装,目前常见的构架有:

(1)DS918+的CPU架构是apollolake

(2)DS3617xs的CPU架构是broadwell

(3)DS3615xs的CPU架构是bromolow

        其他的CPU架构与之对应的版本可以在这查询:https://github.com/SynoCommunity/spksrc/wiki/Architecture-per-Synology-modelffmpeg

 

二、安装VideoStation
       在套件中心安装Video Station,本文安装的Video Station版本为2.4.7-1603。

 

 

三、我们先来测试一下没修改之前,用Video Station播放带有DTS和EAC3编码的视频文件,会是怎样的

这个是带EAC3编码的视频文件

 

 

用Video Station播放EAC3编码的界面提示

 

 

这个是带DTS编码的视频文件

 

 

用Video Station播放DTS编码的界面提示

 


四、用第三方的FFMEG代替

       进群晖的控制面板,终端机和SNMP,勾选启动SSH功能,并调整对应的端口号。然后到电脑上打开XSheell软件,用root用户以SSH的方式登录到群晖(还没开启root的,请自己去开启:https://wp.gxnas.com/?s=root),执行以下命令:

1、调整文件权限

sudo chmod +s /var/packages/ffmpeg/target/bin/ffmpeg
sudo chmod +s /var/packages/ffmpeg/target/bin/ffprobe
sudo chmod +s /var/packages/ffmpeg/target/bin/vainfo

 

2、备份原文件

sudo sed -i'-BACKUP' -e 's/eac3/ZAAP/' -e 's/dts/ZAP/' -e 's/truehd/ZAPZAP/' /var/packages/VideoStation/target/lib/libsynovte.so
sudo mv /var/packages/VideoStation/target/bin/ffmpeg /var/packages/VideoStation/target/bin/ffmpeg-BACKUP
sudo mv /var/packages/VideoStation/target/bin/ffprobe /var/packages/VideoStation/target/bin/ffprobe-BACKUP
sudo mv /var/packages/VideoStation/target/bin/vainfo /var/packages/VideoStation/target/bin/vainfo-BACKUP

 

3、更改/var/packages/VideoStation/target/ffmpeg为自定义脚本,调用第三方的ffmpeg解码器

echo "H4sICEoigl4AA2ZmbXBlZwCtU8tOwzAQvO9XLEmkPlAwrRCHVokqBOILOEUVctN1YtE8FFumEvDvOA9KSQInfEhsZ2ZnPN64F2wnc7bjKgWws8ChI8XIDK9YyeMXnpBiQmQlJUzzKiHd4NsdB8DF+4e7p0egOC3Q8TYOhiEynZUd5OpQJACWqILpDF5TeSCMIvRc9BON17jdwr6AmCuy7IWDMge0wzdlVQgLnjVLO1Qqhf5a1PUug6njH5e3Nx3SaQqc8Ot1V0iMl3CNCLxpZ9sKv6OiPfqEE3veosq4DnKzWF7NVcwP9Gw4LyU7nyeTDu2x1RmBTU56jUyXT7cciGoi9Hk/sf9zAz/ttNJGrDDyjNiO3lY/YyPqaO1zkK0cjzYrjKSgPuCgluzdUi+e1l7Lj7zm/afHzsh81hfqdQIpHkPrcV/kBKBIo+9bL281I9psP/q97Nk2/7WhG8TI/jdpGYaDv8A9fYZPjqtrMXcDAAA=" | base64 -d | gunzip > /var/packages/VideoStation/target/bin/ffmpeg

 

4、更新ffprobe vainfo

sudo ln -s /var/packages/ffmpeg/target/bin/ffprobe /var/packages/VideoStation/target/bin/ffprobe
sudo ln -s /var/packages/ffmpeg/target/bin/vainfo /var/packages/VideoStation/target/bin/vainfo

 

5、解除对EAC3、DTS、TrueHD的屏蔽

sudo sed -i'-BACKUP' -e 's/eac3/ZAAP/' -e 's/dts/ZAP/' -e 's/truehd/ZAPZAP/' /var/packages/VideoStation/target/lib/libsynovte.so

 

6、调整文件权限

sudo chmod +x /var/packages/VideoStation/target/bin/ffmpeg
sudo chmod +s /var/packages/VideoStation/target/bin/ffmpeg
sudo chown root:VideoStation /var/packages/VideoStation/target/bin/ffmpeg

 

 

五、接下来我们再用Video Station来播放刚才未能播放的文件做一下测试

1、DTS播放正常

 

2、EAC3播放正常

六、非常完美!

点赞

发表评论