-
Notifications
You must be signed in to change notification settings - Fork 284
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
申请支持央视网直播源 #442
Comments
I can share the way how they do it, I'm not sure I get time to do this myself, but for others it may be a perfect reference point:
|
这样抓出来的直播源是花屏的,没法看,求破 |
@toorich In their flash player, they use api endpoint, which looks like |
不行,也是花屏 |
他这个是音视频编码改了吧,最早的时候是不花屏的。 |
看了下,貌似是对I帧进行了加密,加密的操作在liveplayer_controls.js下面的一坨(应该是魔改版本的hls.js),原本的逻辑 Module里的函数是h5.worker提供的,貌似用了wasm,暂时没啥好办法 |
应该是用JS解密吧…… |
h5.worker最开始的字符串就是base64过的wasm |
WABT: The WebAssembly Binary Toolkit |
@hr3lxphr6j |
能直接调wasm里的这几个函数应该就可以,我试了几个python上跑wasm的库都不行,不知道是不是我姿势不对的原因 |
这搞法,和我想法一样啊。处理I祯的前面若干字节的二进制数据,使用aes加密。主要是 iv 和key做好秘密传输就可以了。 |
都放弃破解了? |
Any news about this problem? |
但是目前最新的网页,貌似没有运行这个地方的代码,断点断不到这个位置。目前发现这个加密是跟url地址有关系 |
我是用python还原了一下算法,主要是es流的一些异或操作,还原出来的基本可以播放,但是对于解密后的数据长度变短的问题还没处理好 |
現在還有研究嘛? |
目前wasm已经进行了更新,增加了中等程度的控制流混淆。使用jsrpc方式可以完成解密【https://www.52pojie.cn/thread-1708807-1-1.html】。后面准备使用ast进行反混淆进行算法分析 |
大佬要是能分享1个Python的解密库就好了。现在非加密的m3u8只支持480 x 270,之前的1080 x 720被砍了 |
360p的也加密了,也是花屏 |
大佬有解决办法么 |
看了下官方播放器关于帧解密的代码基本没变。估计帖子里面jsonrpc直接调用官方解密库的方法还值得一试 |
在提交前,请确保您已经检查了以下内容!
ykdl
下载。ykdl
为最新版。ykdl
,而不是其他项目。请将错误输出粘贴在下面:
ykdl -i http://tv.cctv.com/live/cctv17/ --debug
DEBUG:common:video_host> tv.cctv.com
DEBUG:common:short_name> cctv
DEBUG:html:get_content> URL: http://tv.cctv.com/live/cctv17/
DEBUG:html:get_content> Charset: UTF-8
CRITICAL:YKDL:cant find vid
如果您有其他附言,例如问题只在某个视频发生,或者是一般性讨论或者提出新功能,请在下面添加:
如题,哪怕只能解析出m3u8也行
The text was updated successfully, but these errors were encountered: