Fix video generation
This commit is contained in:
@@ -4,5 +4,5 @@ from abc import ABC, abstractmethod
|
|||||||
class IVideoGeneratorService(ABC):
|
class IVideoGeneratorService(ABC):
|
||||||
|
|
||||||
@abstractmethod
|
@abstractmethod
|
||||||
async def create_video(self, text: str, avatar: str):
|
async def create_video(self, text: str, avatar: str, title: str):
|
||||||
pass
|
pass
|
||||||
|
|||||||
@@ -1,17 +1,17 @@
|
|||||||
import logging
|
import logging
|
||||||
import os
|
import os
|
||||||
|
import random
|
||||||
import re
|
import re
|
||||||
import uuid
|
import uuid
|
||||||
import random
|
|
||||||
from typing import Dict, List, Optional
|
from typing import Dict, List, Optional
|
||||||
|
|
||||||
from app.repositories.abc import IFileStorage, IDocumentStore
|
|
||||||
from app.services.abc import ISpeakingService, ILLMService, IVideoGeneratorService, ISpeechToTextService
|
|
||||||
from app.configs.constants import (
|
from app.configs.constants import (
|
||||||
FieldsAndExercises, GPTModels, TemperatureSettings,
|
FieldsAndExercises, GPTModels, TemperatureSettings,
|
||||||
ELAIAvatars, FilePaths
|
ELAIAvatars, FilePaths
|
||||||
)
|
)
|
||||||
from app.helpers import TextHelper
|
from app.helpers import TextHelper
|
||||||
|
from app.repositories.abc import IFileStorage, IDocumentStore
|
||||||
|
from app.services.abc import ISpeakingService, ILLMService, IVideoGeneratorService, ISpeechToTextService
|
||||||
|
|
||||||
|
|
||||||
class SpeakingService(ISpeakingService):
|
class SpeakingService(ISpeakingService):
|
||||||
@@ -462,7 +462,8 @@ class SpeakingService(ISpeakingService):
|
|||||||
result = await self._create_video(
|
result = await self._create_video(
|
||||||
exercise["question"],
|
exercise["question"],
|
||||||
avatar,
|
avatar,
|
||||||
f'Failed to create video for part {part} question: {str(exercise["question"])}'
|
f'Failed to create video for part {part} question: {str(exercise["question"])}',
|
||||||
|
req_id
|
||||||
)
|
)
|
||||||
if result is not None:
|
if result is not None:
|
||||||
template["exercises"][template_index]["prompts"] = exercise["prompts"]
|
template["exercises"][template_index]["prompts"] = exercise["prompts"]
|
||||||
@@ -503,7 +504,8 @@ class SpeakingService(ISpeakingService):
|
|||||||
avatar,
|
avatar,
|
||||||
'POST - generate_video_{p} - {r} - Failed to create video for part {p} question: {q}'.format(
|
'POST - generate_video_{p} - {r} - Failed to create video for part {p} question: {q}'.format(
|
||||||
p=part, r=request_id, q=question
|
p=part, r=request_id, q=question
|
||||||
)
|
),
|
||||||
|
request_id
|
||||||
)
|
)
|
||||||
if result is not None:
|
if result is not None:
|
||||||
self._logger.info(f'POST - generate_video_{part} - {request_id} - Video created')
|
self._logger.info(f'POST - generate_video_{part} - {request_id} - Video created')
|
||||||
|
|||||||
@@ -14,19 +14,18 @@ class Heygen(IVideoGeneratorService):
|
|||||||
|
|
||||||
def __init__(self, client: AsyncClient, token: str):
|
def __init__(self, client: AsyncClient, token: str):
|
||||||
pass
|
pass
|
||||||
"""
|
|
||||||
self._get_header = {
|
self._get_header = {
|
||||||
'X-Api-Key': heygen_token
|
'X-Api-Key': token
|
||||||
}
|
}
|
||||||
self._post_header = {
|
self._post_header = {
|
||||||
'X-Api-Key': heygen_token,
|
'X-Api-Key': token,
|
||||||
'Content-Type': 'application/json'
|
'Content-Type': 'application/json'
|
||||||
}
|
}
|
||||||
self._http_client = client
|
self._http_client = client
|
||||||
self._logger = logging.getLogger(__name__)
|
self._logger = logging.getLogger(__name__)
|
||||||
"""
|
|
||||||
|
|
||||||
async def create_video(self, text: str, avatar: str, title="video_title": str):
|
|
||||||
|
async def create_video(self, text: str, avatar: str, title="video_title"):
|
||||||
pass
|
pass
|
||||||
# POST TO CREATE VIDEO
|
# POST TO CREATE VIDEO
|
||||||
create_video_url = 'https://api.heygen.com/v2/template/' + avatar + '/generate'
|
create_video_url = 'https://api.heygen.com/v2/template/' + avatar + '/generate'
|
||||||
|
|||||||
Reference in New Issue
Block a user