future fixes
Browse files
App/Generate/database/ElevenLab.py
CHANGED
|
@@ -9,18 +9,17 @@ from pydantic import BaseModel
|
|
| 9 |
|
| 10 |
|
| 11 |
class AlignmentData(BaseModel):
|
| 12 |
-
|
| 13 |
start: float
|
| 14 |
end: float
|
| 15 |
-
hasFailedAlignment: bool
|
| 16 |
|
| 17 |
def to_dict(self) -> dict:
|
| 18 |
return {
|
| 19 |
-
"word": self.
|
| 20 |
-
"alignedWord": self.
|
| 21 |
"startTime": self.start,
|
| 22 |
"endTime": self.end,
|
| 23 |
-
"hasFailedAlignment":
|
| 24 |
}
|
| 25 |
|
| 26 |
|
|
@@ -768,11 +767,14 @@ class ElevenLab:
|
|
| 768 |
"post", "descript_transcript", json=data, external=self.descript
|
| 769 |
)
|
| 770 |
if not response_data:
|
|
|
|
|
|
|
| 771 |
response_data = await self.aligner(
|
| 772 |
"post",
|
| 773 |
"align/url",
|
| 774 |
json=data,
|
| 775 |
)
|
|
|
|
| 776 |
response_data = self.process_alignments(
|
| 777 |
data=response_data["alignment"], offset=0
|
| 778 |
)
|
|
@@ -782,14 +784,14 @@ class ElevenLab:
|
|
| 782 |
self, data: List[Dict[str, Any]], offset: float = 0
|
| 783 |
) -> List[Dict[str, Any]]:
|
| 784 |
alignments = [AlignmentData(**item) for item in data]
|
| 785 |
-
return [alignment.to_dict(
|
| 786 |
|
| 787 |
async def aligner(
|
| 788 |
self,
|
| 789 |
method,
|
| 790 |
endpoint,
|
| 791 |
json=None,
|
| 792 |
-
external="https://yakova-aligner.hf.space/",
|
| 793 |
):
|
| 794 |
async with aiohttp.ClientSession() as session:
|
| 795 |
if external:
|
|
|
|
| 9 |
|
| 10 |
|
| 11 |
class AlignmentData(BaseModel):
|
| 12 |
+
word: str
|
| 13 |
start: float
|
| 14 |
end: float
|
|
|
|
| 15 |
|
| 16 |
def to_dict(self) -> dict:
|
| 17 |
return {
|
| 18 |
+
"word": self.word,
|
| 19 |
+
"alignedWord": self.word,
|
| 20 |
"startTime": self.start,
|
| 21 |
"endTime": self.end,
|
| 22 |
+
"hasFailedAlignment": False,
|
| 23 |
}
|
| 24 |
|
| 25 |
|
|
|
|
| 767 |
"post", "descript_transcript", json=data, external=self.descript
|
| 768 |
)
|
| 769 |
if not response_data:
|
| 770 |
+
data["audio_url"] = data["audio_url"][0]
|
| 771 |
+
print(data)
|
| 772 |
response_data = await self.aligner(
|
| 773 |
"post",
|
| 774 |
"align/url",
|
| 775 |
json=data,
|
| 776 |
)
|
| 777 |
+
print(response_data)
|
| 778 |
response_data = self.process_alignments(
|
| 779 |
data=response_data["alignment"], offset=0
|
| 780 |
)
|
|
|
|
| 784 |
self, data: List[Dict[str, Any]], offset: float = 0
|
| 785 |
) -> List[Dict[str, Any]]:
|
| 786 |
alignments = [AlignmentData(**item) for item in data]
|
| 787 |
+
return [alignment.to_dict() for alignment in alignments]
|
| 788 |
|
| 789 |
async def aligner(
|
| 790 |
self,
|
| 791 |
method,
|
| 792 |
endpoint,
|
| 793 |
json=None,
|
| 794 |
+
external="https://yakova-aligner.hf.space/align/url",
|
| 795 |
):
|
| 796 |
async with aiohttp.ClientSession() as session:
|
| 797 |
if external:
|