analyze_video.py 1.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041
  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. print(f"视频处理失败: {str(e)}")
  25. return {
  26. "code": 0,
  27. "message": f"视频处理失败:{e}",
  28. "result": f"视频处理失败:{e}",
  29. "mark": f"视频处理失败:{e}"
  30. }
  31. if __name__ == "__main__":
  32. # proxy_url = 'http://127.0.0.1:1081'
  33. # os.environ["http_proxy"] = proxy_url
  34. # os.environ["https_proxy"] = proxy_url
  35. uvicorn.run(app, host="0.0.0.0", port=8080)