Git Product home page Git Product logo

Comments (11)

muzuiget avatar muzuiget commented on July 20, 2024

那个 WebSite 就是类似 Java 的抽象类,不建议直接实例化 WebSite,具体由子类来实现。

后一个问题没看懂,为什么要分开呢,什么叫标准格式?如果要添加一个新网站(NicoNico?),那么只需要实现下载的 Downloader 和转换函数 create_nico_subtitles() 就可以了。

from niconvert.

muzuiget avatar muzuiget commented on July 20, 2024

毕竟代码还是一年前写的,现在水平进步了,以现在眼光看,代码确实需要重构,但是一方便能用就又不想动了。

from niconvert.

kaedei avatar kaedei commented on July 20, 2024

可能会有这样的场景:转换所需的XML来自于字符串,或是来自于磁盘某个文件,或者是某个List/Set对象等等。现在就没办法直接从这些来源中转换。
最近把niconvert移植到了IronPython中(.NET平台下的Python实现),然后在普通的C#程序中调用。Python Host程序已经取得了所需的xml,传递给Python的就是含有xml的一个String,因为其中没有下载的过程,所以调用起来相当吃力,我不得不把WebSite类砍掉重新写了个转换入口函数才达到目的。

标准格式就是说类似Java中的pojo类,定义一条弹幕所需的标准的格式,比如

class Danmaku {
  public String Time;
  public int Color;
  public int Mode;
  public String Message;
}

from niconvert.

muzuiget avatar muzuiget commented on July 20, 2024

当时没考虑那么多,只想简单粗暴实现基本效果。其实你也不用纠结这个吧,代码不合口味然后重新封装很常见的,不想改别人代码可以建立个新文件,把有用的部分 import 进去用就行了。

from niconvert.

m13253 avatar m13253 commented on July 20, 2024

我最近在写另一个弹幕转换ASS的程序
弹幕排布算法是,从上往下,找到第一个可以放得下弹幕的地方,如果找不到,就放在空位最多的行。
这个算法和B站本身的弹幕排布算法非常接近。

目前我已经有命令行界面(以后图形界面很方便),尚未有弹幕 XML 抓取功能,可以配合 you-get 来抓 XML。

如果你们有兴趣,可以考虑和我合作。

from niconvert.

muzuiget avatar muzuiget commented on July 20, 2024

@m13253 很好,不过我已经没有闲功夫继续改进这个项目了,而且我也觉得现在足够用了。

现在 niconvert 的 gui 代码全是调用 niconvert.py 的接口,你略加修改就能用了。

from niconvert.

m13253 avatar m13253 commented on July 20, 2024

@muzuiget 如果你有时间,不妨试试看我的程序。目前弹幕排布算法有一些奇怪的bug而不好调试,我希望多多收集大家的报告。

如果我直接用你的GUI代码就需要2to3转换,既然那样我就再自己写一个Gtk+3的GUI吧。现在我也没有闲功夫,不过还请期待。

from niconvert.

muzuiget avatar muzuiget commented on July 20, 2024

我已经完全用 Python 3 重写了。

@m13253 我也看过你的博客,觉得你用那张演示截图效果不错,我也弄了一张,希望你不要介意。

from niconvert.

m13253 avatar m13253 commented on July 20, 2024

嗯。截图什么的没关系的。
我的Danmaku2ASS也成功移植到Py2了。在py2分支。因为我打算做成 XBMC 插件。(仿照 https://github.com/Syndim/XBMC-Bilibili 目前这货用的是修改过的 niconvert 引擎)
话说我已经先你一步,完整实现了高级弹幕功能了哟。只可惜还有一个bug,就是Y轴旋转的问题。Flash的旋转貌似和ASS的旋转坐标不同。我数学不够好,要是能一起研究就好了。

from niconvert.

m13253 avatar m13253 commented on July 20, 2024

于是新版还是没有导入本地弹幕功能…… #10

from niconvert.

m13253 avatar m13253 commented on July 20, 2024

@m13253 我也看过你的博客,觉得你用那张演示截图效果不错,我也弄了一张,希望你不要介意。

我那个截图使用的是第一版碰撞算法,不仅低效而且效果不好。
我后来修改了碰撞算法。现在用的第三版碰撞算法,过两天重新截图。

from niconvert.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.