What is it?
Danmaku2ASS converts comments from Niconico/Acfun/Bilibili to ASS format so that you can play it with any media player supporting ASS subtitle.
This software is free software released under GPL 3 license. There is no warranty to the extent permitted by law.
How to use it?
danmaku2ass. You can see further instructions below.
You may install
danmaku2ass with the Makefile provided.
make make install
PREFIX= is accepted by
make install for specifying installation prefix.
A PKGBUILD is also provided.
./danmaku2ass -o foo.ass -s 1920x1080 -fn "MS PGothic" -fs 48 -a 0.8 -dm 5 -ds 5 foo.xml
Name the output file with same basename but different extension (.ass) as the video. Put them into the same directory and most media players will automatically load them. For MPlayer, you will have to specify
Make sure that the width/height ratio passed to
danmaku2ass matches the one of your original video, or text deformation may be experienced.
You can also pass multiple XML/JSON files and they will be merged into one ASS file. This is useful when watching danmakus from different website at the same time.
Video: 5 Centimeters Per Second
Players for a specific site
If you prefer to watch videos on a specific site listed below with a media player, you can check these projects, which usually provide online streaming features:
- Bilibili: BiliDan, (MPV Player, FFmpeg, Linux, OS X, (unstable on) Windows), officially supported by Danmaku2ASS contributer
- Bilibili: BiliGui, (MPV Player, Ruby, Qt4, FFmpeg, Linux)
- Bilibili: Biligrab, (Aria2, Python2, FFmpeg, OS X, (unstable on) Linux)
- Bilibili: MoonPlayer, (MPlayer, Qt4, Linux, Windows)
- Tudou Doupao, Acfun, Bilibili: Yatto, (MPV Player, FFmpeg, Linux)
Please submit your work if you have made a better one!
Command line reference
usage: danmaku2ass.py [-h] [-f FORMAT] [-o OUTPUT] -s WIDTHxHEIGHT [-fn FONT] [-fs SIZE] [-a ALPHA] [-dm SECONDS] [-ds SECONDS] [-fl FILTER] [-p HEIGHT] [-r] FILE [FILE ...] positional arguments: FILE Comment file to be processed optional arguments: -h, --help show this help message and exit -f FORMAT, --format FORMAT Format of input file (autodetect|Bilibili|Tudou2|MioMi o|Acfun|Niconico|Tudou) [default: autodetect] -o OUTPUT, --output OUTPUT Output file -s WIDTHxHEIGHT, --size WIDTHxHEIGHT Stage size in pixels -fn FONT, --font FONT Specify font face [default: sans-serif] -fs SIZE, --fontsize SIZE Default font size [default: 25] -a ALPHA, --alpha ALPHA Text opacity -dm SECONDS, --duration-marquee SECONDS Duration of scrolling comment display [default: 5] -ds SECONDS, --duration-still SECONDS Duration of still comment display [default: 5] -fl FILTER, --filter FILTER Regular expression to filter comments -flf FILTER_FILE, --filter-file FILTER_FILE Regular expressions from file (one line one regex) to filter comments -p HEIGHT, --protect HEIGHT Reserve blank on the bottom of the stage -r, --reduce Reduce the amount of comments if stage is full
The text is moving laggy. / The text is slightly blurred.
Most ASS renderers render ASS subtitles at the same resolution as the video. This is probably because the video is at low resolution or framerate.
If you use MPlayer, you can add options similar to
-vf scale=1920:1080 (change the values as you wish).`
I would like to render the danmakus into the video.
ffmpeg -i foo.flv -vf ass=foo.ass -vcodec libx264 -acodec copy foo-with-danmaku.flv
Change the parameters as you like.
Danmaku2ASS gave me some warnings of 'Invalid comment'.
This is probably because of comment styles that are not recognized by Danmaku2ASS. This is mostly normal. However, if you think that Danmaku2ASS missed some important things, please feel free to submit an issue.
Is there a GUI?
Currently no. But there will soon be one made of Gtk+ 3. If you would like to help me, please contact with me.
Any contribution is welcome. Any donation is welcome as well.