INNER CODE UNIT · Python

summarize_video

liyupi/free-video-downloader · backend/api_summarize.py:66

async def summarize_video(req: SummarizeRequest, user: dict | None = Depends(get_optional_user)) -> AsyncIterable[ServerSentEvent]:
    """
    AI 视频总结(SSE 流式)
    事件类型: subtitle / summary / mindmap / done / error / quota
    """
    allowed, remaining, message = _check_summary_permission(user)
    if not allowed:
        yield ServerSentEvent(
            raw_data=json.dumps({"message": message, "need_login": user is None, "need_vip": user is not None}, ensure_ascii=False),
            event="error",
        )
        return

    try:
        loop = asyncio.get_event_loop()
        extractor = _get_extractor()
        subtitle_data = await loop.run_in_executor(
            None, extractor.extract, req.url

View source record →

📰 Research Paper
Loading…
⏳ Fetching content…