analyze_video.py 987 B

12345678910111213141516171819202122232425262728293031323334
  1. from fastapi import FastAPI, HTTPException
  2. from pydantic import BaseModel
  3. import uvicorn
  4. from google_ai.generativeai_video import main
  5. app = FastAPI()
  6. class VideoRequest(BaseModel):
  7. video_path: str
  8. @app.post("/process_video/")
  9. async def process_video(request: VideoRequest):
  10. """处理视频请求"""
  11. video_path = request.video_path
  12. # 调用 main 函数进行视频处理
  13. try:
  14. print("来一个请求")
  15. # 确保 main 函数是异步的
  16. result, mark = await main(video_path)
  17. return {
  18. "code": 0,
  19. "message": "视频处理成功",
  20. "result": result,
  21. "mark": mark
  22. }
  23. except Exception as e:
  24. raise HTTPException(status_code=500, detail=f"视频处理失败: {str(e)}")
  25. if __name__ == "__main__":
  26. # proxy_url = 'http://127.0.0.1:1081'
  27. # os.environ["http_proxy"] = proxy_url
  28. # os.environ["https_proxy"] = proxy_url
  29. uvicorn.run(app, host="0.0.0.0", port=8080)