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

关于样式修改的意见探讨和一个BUG #132

Closed
MiKoto-Railgun opened this issue Jan 29, 2025 · 4 comments
Closed

关于样式修改的意见探讨和一个BUG #132

MiKoto-Railgun opened this issue Jan 29, 2025 · 4 comments

Comments

@MiKoto-Railgun
Copy link
Contributor

MiKoto-Railgun commented Jan 29, 2025

新年快乐🎉🎉🎉

就现在的弹幕样式实时修改功能我觉得已经差不多了,但还是有速度和密度不可调节,之前看 @Tony15246 大佬做多源弹幕功能后,得知了load_danmaku(true)会重新加载danmaku.ass文件。

我就想着要不每次修改后就再次加载整合弹幕文件,这样可以得到真正的弹幕位置渲染支持,速度、密度和显示范围可以支持修改了,但这样会导致弹幕重新加载(就感觉弹幕会卡顿0.5s,且弹幕文字的位置也会变),没有实时修改的流畅,所以我想询问一下有没有增加必要。

另外就是有个小bug,也是与多源弹幕功能有关,我的锅

if num and min_num <= num and num <= max_num then
    options[query] = num
    menu_items_config[query]["hint"] = options[query]
    -- "refresh" 模式会清除输入框文字
    add_danmaku_setup(query, "refresh")
    return
end

这里的options[query] = num应该改成options[query] = tostring(num),我原先让它为num类型了,应该改为字符串类型,要不然先修改弹幕样式后屏蔽弹幕源重新加载整合弹幕文件时会报错,Command subprocess: argument args has incompatible type.

大佬样式修改有什么想法?如果不改的话,那麻烦 @Tony15246 大佬在做 #120 功能时帮我改一下上面BUG吧,毕竟就这个小改提个pr怪怪的

@Tony15246
Copy link
Owner

但这样会导致弹幕重新加载(就感觉弹幕会卡顿0.5s,且弹幕文字的位置也会变),没有实时修改的流畅,所以我想询问一下有没有增加必要。

我感觉可以加上,重新加载弹幕的延迟我觉得在可接受范围内。而且在我的环境下mpv有时候会抽风,option里的值改了,但是没有实时变化,退出mpv重进一下之后option的修改就又能实时响应了,之前对于这种抽风现象,我就在考虑要不要加上强制重新加载弹幕。

大佬样式修改有什么想法?如果不改的话,那麻烦大佬在做 120 功能时帮我改一下上面BUG吧,毕竟就这个小改提个pr怪怪的

现在决定加一个新pr的话,那我就不越俎代庖了

另外,祝你新年快乐🎉蛇年大吉,万事如意🎉🎉🎉

@MiKoto-Railgun
Copy link
Contributor Author

我感觉可以加上,重新加载弹幕的延迟我觉得在可接受范围内。而且在我的环境下mpv有时候会抽风,option里的值改了,但是没有实时变化,退出mpv重进一下之后option的修改就又能实时响应了,之前对于这种抽风现象,我就在考虑要不要加上强制重新加载弹幕。

阿这,还有这种BUG的吗,我昨天还在研究xml转ass的方法,想复刻在 render() 函数里进行位置速度和密度计算,借此摆脱对 DanmakuFactory 的依赖,并解决卡顿问题,那按这种抽风现象BUG来看的话岂不是要废

现在决定加一个新pr的话,那我就不越俎代庖了

OK,那我提个新pr吧

也祝你新年快乐🎉蛇年大吉,万事如意🎉🎉🎉

@MiKoto-Railgun
Copy link
Contributor Author

MiKoto-Railgun commented Jan 30, 2025

option里的值改了,但是没有实时变化,退出mpv重进一下之后option的修改就又能实时响应了

还是想问一下这个现象的具体表现,是uosc面板里的值变了弹幕没变,还是面板里的值都没变,具体是哪个值,以及这种问题多不,可以打印一下看看是不是render函数里的问题吗,会不会是Linux下同样的类型问题识别有问题

@Tony15246
Copy link
Owner

option里的值改了,但是没有实时变化,退出mpv重进一下之后option的修改就又能实时响应了

还是想问一下这个现象的具体表现,是uosc面板里的值变了弹幕没变,还是面板里的值都没变,具体是哪个值,以及这种问题多不

uosc面板里的值变了弹幕没变,发生这种异常的时候任何修改都不会对弹幕生效

这种异常容易发生在每次开机后第一次打开mpv的时候,之后就都是正常的了。由于这种异常小概率发生,不易捕捉,我目前没有捕捉到过关于这个异常的线索。

可以打印一下看看是不是render函数里的问题吗,会不会是Linux下同样的类型问题识别有问题

我回家以后试验一下看看

dyphire pushed a commit that referenced this issue Jan 31, 2025
* fix: style menu add density and scrolltime

* force refresh density and speed separately
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

2 participants