Skip to content
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

合并步骤时卡住无反应 #3

Closed
diannaojiang opened this issue Dec 19, 2017 · 14 comments
Closed

合并步骤时卡住无反应 #3

diannaojiang opened this issue Dec 19, 2017 · 14 comments

Comments

@diannaojiang
Copy link

diannaojiang commented Dec 19, 2017

chrome版本 64.0.3282.24
金丝雀65.0.3299.0
都试过了 在四个分块下载完成并进行合并时出现页面无响应并卡住
以前可以 重装系统后出现此问题。想知道是否需要什么前置选项或是前置程序

@liqi0816
Copy link
Owner

这个脚本的依赖项只有bilibili ASS Danmaku Downloader。需要时将自动加载。

一键下载合并时,也会下载弹幕并转换为ASS格式。重装系统会清掉github的缓存,如果又因为众所周知的原因无法访问,一键流程将会卡住。但是不论如何,都不应该出现页面无响应的情况。

烦请提供

  • 出错页面地址
  • 出错时内存占用
  • 出错时f12键可以看到的错误日志

以便跟进。

@diannaojiang
Copy link
Author

qq 20171222222525
qq 20171222222251
如图所示 无响应指的是整个chrome不接受任何io输入 应该是您所说的卡住的现象。
如果是因为无法访问的情况,您能否提供下相关的url段或ip段我加一下代理规则再试一试

@diannaojiang
Copy link
Author

经测试 下载后拖入合并也出现卡主现象 拖入一个会显示下载标签 拖入四个会cpu负载进行解码一段时间后页面直接卡主并且cpu负载回复

@liqi0816
Copy link
Owner

从截图来看,应该是内存溢出了。但是很奇怪:内存占用超出了正常范围,却又没有错误日志,不知道为什么……

我测试了这个网页,但是没有复现无响应。暂时只能当做玄学了……

新的开发版本把依赖项嵌入了脚本,应该可以解决网络的问题。

可能需要麻烦阁下测试一些更小的文件(总大小<250M?),才能知道到底是什么问题。

@diannaojiang
Copy link
Author

已安装开发版本 经过测试 下载更小的文件 仅有两个分段的视频并未出错
下载四分段的番剧依然存在问题

@liqi0816
Copy link
Owner

Err……可以确信是内存溢出了。但为什么8G内存能合并40个分段,而16G?内存反而会溢出,就不清楚了。

到这一步,可能会触及比较底层的垃圾收集,我也不知道能不能解决这个问题。如果只是想使用的话,可能用桌面软件(格式工厂硕鼠合并)会更方便一些。

如果还有兴趣一起debug的话,我希望能知道内存都花在了什么鬼地方:

heap

@diannaojiang
Copy link
Author

抱歉 卡住后无法呼出webshell

@liqi0816
Copy link
Owner

[捂脸]

@qwervbnm
Copy link

@liqi0816 您好,感谢编写本脚本,受益良多。本次我也遇到了和以上反馈一样的问题。
chrome版本 64.0.3282.100
内存8G
测试链接 http://www.bilibili.com/bangumi/play/ep173340
tim 20180121105135

表现为分段缓存时一切正常,合并时会卡住,提示页面无响应。(另尝试只有2个分段的短番时能正常合并)
该视频缓存占用341MB。如图框1,合并前内存占用为200多MB,合并时上升到579.9MB;框2,合并前300多MB,合并时上升到1396.3MB,不知是否属于异常现象。

@qwervbnm
Copy link

qwervbnm commented Jan 21, 2018

@liqi0816 另,请问,除了用脚本自身的缓存功能外,是否还可以手动通过复制链接下载分段。我现在不论是本脚本解析到的链接,还是浏览器中抓到的链接都不能用chrome或者下载工具下载,是否B站禁止了链接下载的功能,还是我这边的问题?或者是需要添加referer才能下载?

另2,之前我有在greasyfork看到您提到,因为没有大会员,没办法测试1080画质的视频,我有一个方法不知道您是否已经知道,只需要破费1元钱,承包一个近期的番剧(比如我给的测试链接),就能测试该番1080画质了,效果和开通了大会员是一样的。(目前我这边测试是1080可以正常解析)

@liqi0816
Copy link
Owner

@diannaojiang @qwervbnm 多谢二位帮助确定问题。

经测,所有非稳定版Chrome都不能正常使用,它们的Blob构造器性能远比稳定版差。暂时不知道这是非稳定版的问题,还是64+版本的“功能”。在de762c6中移除了不必要的Blob;欢迎阁下试试修正版本:

https://github.com/liqi0816/bilitwin/raw/develop/biliTwin.user.js

如果可用,将随下次更新释出。

@liqi0816
Copy link
Owner

主站要求referrer必须正确,不过bangumi域名抓到的链接可以直接用。现在番剧也移到了www,这个口子应该是封住了。所以,只能使用可以传递referrer的下载方法,包括

  • 左键单击
  • 右键目标另存为
  • 右键新标签页打开
  • 右键调用IDM*
  • 右键调用迅雷*
  • 手动给下载软件指定Referer: https://www.bilibili.com

不包括

  • 右键新隐身窗口打开
  • 复制到地址栏打开
  • 复制到IDM下载
  • 其他跳出当前标签页的下载方式

* 如果正确安装

@qwervbnm
Copy link

@liqi0816 感谢感谢,经测试,修正版本合并功能已可用,可以正常下载,1080画质也可用。另手动添加referer可以下载了,谢谢。

@diannaojiang
Copy link
Author

非常感谢您的跟进,经测试新的修正版本一切功能正常。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants