From 5c83f0629df8cc0e145ea20f2beada6d69d890f3 Mon Sep 17 00:00:00 2001 From: xiaoxia Date: Mon, 27 Jul 2026 08:24:43 +0800 Subject: [PATCH] =?UTF-8?q?style:=20black=E6=A0=BC=E5=BC=8F=E5=8C=96?= =?UTF-8?q?=E4=BF=AE=E5=A4=8DCode=20Quality=E6=A3=80=E6=9F=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- apps/worker/video_processing/pip_engine.py | 20 +++++++++++++++----- 1 file changed, 15 insertions(+), 5 deletions(-) diff --git a/apps/worker/video_processing/pip_engine.py b/apps/worker/video_processing/pip_engine.py index 762fee4d6..fe5e4a799 100755 --- a/apps/worker/video_processing/pip_engine.py +++ b/apps/worker/video_processing/pip_engine.py @@ -124,7 +124,9 @@ class PiPEngine: if layer.border_width > 0: bw = layer.border_width color = layer.border_color - filters.append(f"pad={pip_width + 2*bw}:{pip_height + 2*bw}:{bw}:{bw}:{color}") + filters.append( + f"pad={pip_width + 2*bw}:{pip_height + 2*bw}:{bw}:{bw}:{color}" + ) # Step 4: 透明度 if layer.opacity < 1.0: @@ -165,7 +167,9 @@ class PiPEngine: # 淡出需要知道总时长,这里用表达式 if layer.duration > 0: start_fade = layer.duration - anim_dur - filters.append(f"fade=t=out:st={max(0, start_fade)}:d={anim_dur}:alpha=1") + filters.append( + f"fade=t=out:st={max(0, start_fade)}:d={anim_dur}:alpha=1" + ) return filters @@ -274,7 +278,9 @@ class PiPEngine: base_x, base_y = self._parse_position(layer, pip_w, pip_h) # 构建overlay表达式(支持滑动动画) - x_expr, y_expr = self._build_overlay_expr(layer, base_x, base_y, pip_w, pip_h) + x_expr, y_expr = self._build_overlay_expr( + layer, base_x, base_y, pip_w, pip_h + ) # 时间控制(enable表达式) enable_expr = "" @@ -291,7 +297,9 @@ class PiPEngine: # overlay 滤镜 overlay_filter = ( - f"[{current_label}][{pre_label}]" f"overlay={x_expr}:{y_expr}{enable_expr}" f"[{combined_label}]" + f"[{current_label}][{pre_label}]" + f"overlay={x_expr}:{y_expr}{enable_expr}" + f"[{combined_label}]" ) filter_parts.append(overlay_filter) @@ -338,7 +346,9 @@ class PiPEngine: validate_url_safety(layer.source, purpose="pip_source") logger.info("PiP URL 安全校验通过: %s", layer.source[:80]) except UrlSecurityError as e: - logger.warning("PiP URL 安全校验失败: %s (error=%s)", layer.source[:80], e) + logger.warning( + "PiP URL 安全校验失败: %s (error=%s)", layer.source[:80], e + ) return None # 暂时不支持直接URL下载,返回None表示降级跳过 return None