From 59f199db33772abd7126ba046700e0e620d85d31 Mon Sep 17 00:00:00 2001 From: Jerry Yan <792602257@qq.com> Date: Wed, 20 Jul 2022 10:16:46 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E5=AD=97=E4=BD=93=E5=A4=A7?= =?UTF-8?q?=E5=B0=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- config.py | 6 +++++- templates/index.html | 5 +++++ workflow/danmaku.py | 4 ++-- 3 files changed, 12 insertions(+), 3 deletions(-) diff --git a/config.py b/config.py index 7ef00d3..5b02614 100644 --- a/config.py +++ b/config.py @@ -9,6 +9,8 @@ DANMAKU_FACTORY_EXEC = "DanmakuFactory" DANMAKU_SPEED = 12 # font DEFAULT_FONT_NAME = "Sarasa Term SC" +# font_size +DANMAKU_FONT_SIZE = 40 # resolution VIDEO_RESOLUTION = "1280x720" # [ffmpeg] @@ -49,10 +51,11 @@ def load_config(): config.read("config.ini", encoding="utf-8") if config.has_section("danmaku"): section = config['danmaku'] - global DANMAKU_FACTORY_EXEC, DANMAKU_SPEED, DEFAULT_FONT_NAME, VIDEO_RESOLUTION + global DANMAKU_FACTORY_EXEC, DANMAKU_SPEED, DEFAULT_FONT_NAME, VIDEO_RESOLUTION, DANMAKU_FONT_SIZE DANMAKU_FACTORY_EXEC = section.get('exec', DANMAKU_FACTORY_EXEC) DANMAKU_SPEED = section.getfloat('speed', DANMAKU_SPEED) DEFAULT_FONT_NAME = section.get('font', DEFAULT_FONT_NAME) + DANMAKU_FONT_SIZE = section.getint('font_size', DANMAKU_FONT_SIZE) VIDEO_RESOLUTION = section.get('resolution', VIDEO_RESOLUTION) if config.has_section("video"): section = config['video'] @@ -87,6 +90,7 @@ def get_config(): 'exec': DANMAKU_FACTORY_EXEC, 'speed': DANMAKU_SPEED, 'font': DEFAULT_FONT_NAME, + 'font_size': DANMAKU_FONT_SIZE, 'resolution': VIDEO_RESOLUTION, }, 'video': { diff --git a/templates/index.html b/templates/index.html index ba3b8c9..c56490e 100644 --- a/templates/index.html +++ b/templates/index.html @@ -104,6 +104,10 @@ 弹幕字体 {{ config.danmaku.font }} + + 字体大小 + {{ config.danmaku.font_size }} + 视频分辨率 {{ config.danmaku.resolution }} @@ -218,6 +222,7 @@ exec: "", speed: 0, font: "", + font_size: 0, resolution: "", }, video: { diff --git a/workflow/danmaku.py b/workflow/danmaku.py index f54895b..80bec32 100644 --- a/workflow/danmaku.py +++ b/workflow/danmaku.py @@ -7,7 +7,7 @@ from typing import Union from bs4 import BeautifulSoup -from config import DANMAKU_FACTORY_EXEC, VIDEO_RESOLUTION, DANMAKU_SPEED, DEFAULT_FONT_NAME +from config import DANMAKU_FACTORY_EXEC, VIDEO_RESOLUTION, DANMAKU_SPEED, DEFAULT_FONT_NAME, DANMAKU_FONT_SIZE from exception.danmaku import NoDanmakuException, DanmakuFormatErrorException from util.file import check_file_exist @@ -37,7 +37,7 @@ def danmaku_to_subtitle(file: Union[os.PathLike[str], str], time_shift: float): process = subprocess.Popen(( DANMAKU_FACTORY_EXEC, "--ignore-warnings", "-r", str(VIDEO_RESOLUTION), "-s", str(DANMAKU_SPEED), "-f", "5", - "-S", "40", "-N", str(DEFAULT_FONT_NAME), "--showmsgbox", "FALSE", + "-S", str(DANMAKU_FONT_SIZE), "-N", str(DEFAULT_FONT_NAME), "--showmsgbox", "FALSE", "-O", "255", "-L", "1", "-D", "0", "-o", "ass", new_subtitle_name, "-i", file, "-t", str(time_shift) ))