群晖NAS:DSM7.1激活Advanced Media Extensions【自留记录】

群晖NAS:DSM7.1激活Advanced Media Extensions【自留记录】

本文仅半白群晖可用,不需要安装其他套件或者ssh修改什么
本文仅半白群晖可用
本文仅半白群晖可用

使用DS Video 网页播放视频时候,提示:【不支持当前所选音轨的文件格式,
因此无法播放视频。请尝试播放其它音轨,确认其是否支持】

如图:

在这里插入图片描述
网上很多大神的方案,基本上卒。很多走不下去,直接报错,有的不生效。

解决方案是:

1、安装套件:Advanced Media Extensions【官方必须的】

在这里插入图片描述

2、上传ame.py文件到nas本地
(如果不成功,看下面的py代码,注释掉了 md5 不匹配部分)

点击到云盘下载

保存以下代码保存为ame.py文件

import hashlib
import os

r = ['669066909066906690', 'B801000000', '30']
s = [(0x1F28, 0), (0x48F5, 1), (0x4921, 1), (0x4953, 1), (0x4975, 1), (0x9AC8, 2)]

prefix = '/var/packages/CodecPack/target/usr'
so = prefix + '/lib/libsynoame-license.so'

print("Patching")
with open(so, 'r+b') as fh:
    full = fh.read()
    print(hashlib.md5(full).digest().hex())
    # 这里的 md5 值很多人对不上,我是直接获取替换字符串,没有直接注释来的方便
    # if hashlib.md5(full).digest().hex() != 'fcc1084f4eadcf5855e6e8494fb79e23':
    #     print("MD5 mismatch")
    #     exit(1)
    for x in s:
        fh.seek(x[0] + 0x8000, 0)
        fh.write(bytes.fromhex(r[x[1]]))

lic = '/usr/syno/etc/license/data/ame/offline_license.json'
os.makedirs(os.path.dirname(lic), exist_ok=True)
with open(lic, 'w') as licf:
    licf.write('[{"appType": 14, "appName": "ame", "follow": ["device"], "server_time": 1666000000, "registered_at": 1651000000, "expireTime": 0, "status": "valid", "firstActTime": 1651000001, "extension_gid": null, "licenseCode": "0", "duration": 1576800000, "attribute": {"codec": "hevc", "type": "free"}, "licenseContent": 1}, {"appType": 14, "appName": "ame", "follow": ["device"], "server_time": 1666000000, "registered_at": 1651000000, "expireTime": 0, "status": "valid", "firstActTime": 1651000001, "extension_gid": null, "licenseCode": "0", "duration": 1576800000, "attribute": {"codec": "aac", "type": "free"}, "licenseContent": 1}]')


print("Checking whether patch is successful...")
ret = os.system(prefix + "/bin/synoame-bin-check-license")
if ret == 0:
    print("Successful, updating codecs...")
    os.system(prefix + "/bin/synoame-bin-auto-install-needed-codec")
    print("Done")
else:
    print(f"Patch is unsuccessful, retcode = {ret}")

3、在控制面板的任务计划中,新建一个计划任务使用用户自定义脚本,用户账户使用root

在这里插入图片描述

任务设置中的用户自定义脚本输入:python后面跟刚才我们保存的文件位置。

在这里插入图片描述

python /volume1/async.data.center/aem.py

注意:替换自己的文件地址,建议在 ds file 里面点开文件的属性,查看

在这里插入图片描述
运行:
在这里插入图片描述

或者

链接 SSH方式:
获取root权限。输入密码(此时密码不可见,输入完回车进入)

sudo -i

执行命令:

python /volume1/async.data.center/aem.py

4、看下解锁状态

在这里插入图片描述

备注:
1、如果未解锁,且多次执行也不行,试试替换py代码里面自己本机的md5 值。ssh执行打印出来即可获取到
2、没有显示 aac 格式解码包,不影响使用(亲测有效)

5、重启 DS Video 播放之前放不出来的视频即可

在这里插入图片描述

完结,看效果

在这里插入图片描述

其他解决方案:

1、下载套件:可以使用特定版本 ffmpeg + Jellyfin 解决。(不能升级,强迫症难受)
2、https://zhuanlan.zhihu.com/p/619795133(我没成功,有兴趣可以试试)

参考大神们文档:
https://www.bilibili.com/read/cv22556816/
https://tieba.baidu.com/p/8474781494
  • 2
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 8
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 8
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值