style: normalize python formatting gates

This commit is contained in:
Xiaoxia AI
2026-06-21 06:52:19 +08:00
parent 0809a079c5
commit bfbaddbd9a
129 changed files with 3024 additions and 2485 deletions
+28 -18
View File
@@ -4,13 +4,22 @@ from datetime import datetime, timezone
from app.config import get_settings
from app.core.storage import get_minio_service
from packages.adapters.sqlalchemy_impl.asset_repository import SQLAlchemyAssetRepository
from packages.adapters.sqlalchemy_impl.generated_video_repository import (
SQLAlchemyGeneratedVideoRepository,
)
from packages.adapters.sqlalchemy_impl.generation_task_repository import (
SQLAlchemyGenerationTaskRepository,
)
from packages.adapters.sqlalchemy_impl.session import (
SessionLocal,
build_session_factory,
)
from packages.domain import GeneratedVideo, GenerationTaskStatus
from .celery_app import celery_app
from .video_processing import VideoProcessor
from packages.adapters.sqlalchemy_impl.session import SessionLocal, build_session_factory
from packages.adapters.sqlalchemy_impl.generation_task_repository import SQLAlchemyGenerationTaskRepository
from packages.adapters.sqlalchemy_impl.generated_video_repository import SQLAlchemyGeneratedVideoRepository
from packages.adapters.sqlalchemy_impl.asset_repository import SQLAlchemyAssetRepository
from packages.domain import GeneratedVideo, GenerationTaskStatus
settings = get_settings()
if SessionLocal is None:
@@ -21,7 +30,7 @@ if SessionLocal is None:
def generate_video(task_id: str) -> dict:
session = SessionLocal()
temp_dir = tempfile.mkdtemp()
try:
task_repo = SQLAlchemyGenerationTaskRepository(session)
video_repo = SQLAlchemyGeneratedVideoRepository(session)
@@ -44,7 +53,7 @@ def generate_video(task_id: str) -> dict:
assets = asset_repo.list_by_library(task.asset_library_id)
if not assets:
raise RuntimeError(f"No assets found in library {task.asset_library_id}")
task.progress = 20.0
task_repo.update(task)
session.commit()
@@ -53,13 +62,13 @@ def generate_video(task_id: str) -> dict:
video_assets = [a for a in assets if a.mime_type.startswith("video/")][:3]
if not video_assets:
raise RuntimeError("No video assets found")
local_paths = []
for i, asset in enumerate(video_assets):
local_path = os.path.join(temp_dir, f"input_{i}.mp4")
storage_service.download_file(asset.storage_key, local_path)
local_paths.append(local_path)
task.progress = 20.0 + (i + 1) * 10.0
task_repo.update(task)
session.commit()
@@ -68,18 +77,18 @@ def generate_video(task_id: str) -> dict:
processor = VideoProcessor(temp_dir=temp_dir)
output_filename = f"{task.id}.mp4"
output_path = os.path.join(temp_dir, output_filename)
task.progress = 50.0
task_repo.update(task)
session.commit()
result = processor.concatenate_videos(
input_paths=local_paths,
output_path=output_path,
resolution=(1920, 1080),
fps=25,
)
task.progress = 80.0
task_repo.update(task)
session.commit()
@@ -87,13 +96,13 @@ def generate_video(task_id: str) -> dict:
# 6. 上传到 MinIO
storage_key = f"workspaces/{task.workspace_id}/projects/{task.project_id}/generated/{task.id}/{output_filename}"
thumbnail_key = f"workspaces/{task.workspace_id}/projects/{task.project_id}/generated/{task.id}/thumbnail.jpg"
storage_service.upload_file(result.output_path, storage_key)
storage_service.upload_file(result.thumbnail_path, thumbnail_key)
file_url = storage_service.get_url(storage_key)
thumbnail_url = storage_service.get_url(thumbnail_key)
task.progress = 90.0
task_repo.update(task)
session.commit()
@@ -130,7 +139,7 @@ def generate_video(task_id: str) -> dict:
"duration": result.duration,
"file_size": result.file_size,
}
except Exception as error:
try:
task_repo = SQLAlchemyGenerationTaskRepository(session)
@@ -143,14 +152,15 @@ def generate_video(task_id: str) -> dict:
session.commit()
except Exception:
pass
return {"ok": False, "task_id": task_id, "error": str(error)}
finally:
session.close()
# 清理临时文件
try:
import shutil
shutil.rmtree(temp_dir, ignore_errors=True)
except:
pass