main.py 2.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111
  1. from fastapi import FastAPI
  2. from fastapi import Request
  3. from fastapi import Form
  4. import urllib
  5. import sys
  6. import os
  7. import codecs
  8. import html
  9. from typing import Optional
  10. from fastapi import FastAPI
  11. from pydantic import BaseModel
  12. import rpyc
  13. import zhtest
  14. class Params(BaseModel):
  15. content: str
  16. title: str
  17. bg1: str
  18. class FName(BaseModel):
  19. fname: str
  20. class TTS(BaseModel):
  21. txt: str
  22. num: str
  23. # description: Optional[str] = None
  24. # price: float
  25. # tax: Optional[float] = None
  26. app = FastAPI()
  27. @app.post("/tts/audio_to_video")
  28. async def audio_to_video(item: FName):
  29. print(item.fname)
  30. fname=zhtest.to_video.delay(item.fname)
  31. print(fname)
  32. return {"OK": "200"}
  33. @app.post("/full_video")
  34. async def full_video(item: Params):
  35. print(item)
  36. fulldict={'content':item.content,'title':item.title,'bg1':item.bg1}
  37. fname=zhtest.full_task.delay(fulldict)
  38. return {"OK": "200"}
  39. @app.post("/tts")
  40. async def run_tts(item: TTS):
  41. print(item.txt)
  42. print(item.num)
  43. # import zhtest
  44. fname=zhtest.to_wav.delay(item.txt)
  45. print(fname)
  46. return {"OK": "200"}
  47. @app.get("/gpu")
  48. async def get_gpu():
  49. conn = rpyc.classic.connect("139.162.121.30", 12333)
  50. conn.execute('import os')
  51. ros = conn.modules.os
  52. # lst=ros.listdir('/var/wav')
  53. return {'ok':'200'}
  54. @app.get("/tts/files")
  55. async def get_tts_files():
  56. conn = rpyc.classic.connect("139.162.121.30", 12333)
  57. conn.execute('import os')
  58. ros = conn.modules.os
  59. lst=ros.listdir('/var/wav')
  60. return {'files':lst}
  61. @app.get("/tts/videos")
  62. async def get_video_files():
  63. conn = rpyc.classic.connect("139.162.121.30", 12333)
  64. conn.execute('import os')
  65. ros = conn.modules.os
  66. lst=ros.listdir('/var/video')
  67. newlst=[]
  68. for l in lst:
  69. newlst.append('http://139.162.121.30:54321/'+l)
  70. return {'files':newlst}
  71. @app.get("/tts/s1_videos")
  72. async def s1_videos():
  73. conn = rpyc.classic.connect("139.162.121.30", 12333)
  74. conn.execute('import os')
  75. ros = conn.modules.os
  76. lst=ros.listdir('/var/video/s1')
  77. newlst=[]
  78. for l in lst:
  79. newlst.append('http://139.162.121.30:54321/s1/'+l)
  80. return {'files':newlst}
  81. @app.get("/")
  82. async def root():
  83. return {"message": "Hello World"}