analyze_video.py 1.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869
  1. import uvicorn
  2. from fastapi import FastAPI
  3. from pydantic import BaseModel
  4. from google_ai.generativeai_video import main
  5. app = FastAPI()
  6. class VideoRequest(BaseModel):
  7. video_path: str
  8. prompt: str
  9. mark: str
  10. @app.post("/testprocess_test_video/")
  11. async def process_video_test(request: VideoRequest):
  12. """处理视频请求"""
  13. video_path = request.video_path
  14. prompt = request.prompt
  15. mark = request.mark
  16. api_key = "AIzaSyAUvBSpjFcm7b8FsgRUTG6anzoalDp9gYg"
  17. try:
  18. print("来一个请求,使用 API key:", api_key)
  19. result, mark = await main(video_path, api_key, prompt, mark)
  20. return {
  21. "code": 0,
  22. "message": "视频处理成功",
  23. "result": result,
  24. "mark": mark
  25. }
  26. except Exception as e:
  27. print(f"视频处理失败: {str(e)}")
  28. return {
  29. "code": 1,
  30. "message": f"视频处理失败: {e}",
  31. "result": f"视频处理失败: {e}",
  32. "mark": f"视频处理失败: {e}"
  33. }
  34. @app.post("/process_video/")
  35. async def process_video(request: VideoRequest):
  36. """处理视频请求"""
  37. video_path = request.video_path
  38. prompt = request.prompt
  39. mark = request.mark
  40. api_key = "AIzaSyCor0q5w37Dy6fGxloLlCT7KqyEFU3PWP8"
  41. try:
  42. print("来一个请求,使用 API key:", api_key)
  43. result, mark = await main(video_path, api_key, prompt, mark)
  44. return {
  45. "code": 0,
  46. "message": "视频处理成功",
  47. "result": result,
  48. "mark": mark
  49. }
  50. except Exception as e:
  51. print(f"视频处理失败: {str(e)}")
  52. return {
  53. "code": 1,
  54. "message": f"视频处理失败: {e}",
  55. "result": f"视频处理失败: {e}",
  56. "mark": f"视频处理失败: {e}"
  57. }
  58. if __name__ == "__main__":
  59. uvicorn.run(app, host="0.0.0.0", port=8080)