Asyncfakeyou-это асинхронная библиотека Python для взаимодействия с API текста в речь Fakeyou. Это позволяет вам отправлять запросы TTS, отслеживать их статус и загружать полученные аудиофайлы, все это асинхронно, используя Asyncio, Aiohttp и Aiofiles.
pip install asyncfakeyou
Вы можете получить прямой URL -адрес сгенерированного аудиофайла.
from asyncfakeyou import AsyncAudioGen
import asyncio
async def text_to_speech ():
gen = AsyncAudioGen ( cookies = "your_cookie_string" )
audio_url = await gen . fetch_audio ( "model_token_here" , "sample_text" )
print ( audio_url )
asyncio . run ( text_to_speech ())Или вы можете скачать сгенерированный аудиофайл в указанный каталог.
from asyncfakeyou import AsyncAudioGen
import asyncio
async def text_to_speech ():
gen = AsyncAudioGen ( cookies = "your_cookie_string" )
audio_url = await gen . fetch_and_save_audio ( "model_token_here" , "sample_text" ,
output_path = "./audio" ,
filename = "generated_audio.wav" )
print ( audio_url )
asyncio . run ( text_to_speech ()) Параметр cookies класса AsyncAudioGen не является обязательным. Тем не менее, я рекомендую установить его, поскольку это даст вам более высокий приоритет очереди, даже без оплачиваемой подписки. Если у вас есть премиум -аккаунт, вы сможете воспользоваться всеми его преимуществами через этот API.
from asyncfakeyou import receive_cookies
import asyncio
async def get_my_cookies ():
cookies = await receive_cookies ( "your_username_or_email" , "your_password" )
print ( cookies )
asyncio . run ( get_my_cookies ()) Если вам нужно генерировать несколько аудио файлов, вы можете ускорить процесс, используя fetch_tasks и fetch_and_save_tasks . Эти методы обрабатывают фиксированное количество задач в параллельных (параметр concurrent_tasks ) и автоматически повторно повторяют неудачные запросы. Значение по умолчанию для concurrent_tasks составляет 3, но вы можете настроить этот параметр.
Вы можете выполнить прямые URL -адреса с генерируемыми аудиофайлами.
from asyncfakeyou import AsyncAudioGen
import asyncio
async def multiple_text_to_speech ():
gen = AsyncAudioGen ( cookies = "your_cookie_string" )
audio_tasks = [
( "model_token_1" , "sample_text_1" ),
( "model_token_2" , "sample_text_2" ),
( "model_token_3" , "sample_text_3" )
]
async for audio_url in gen . fetch_tasks ( audio_tasks ):
print ( audio_url )
asyncio . run ( multiple_text_to_speech ())Или вы можете скачать сгенерированные аудиофайлы в указанный каталог.
from asyncfakeyou import AsyncAudioGen
import asyncio
async def multiple_text_to_speech ():
gen = AsyncAudioGen ( cookies = "your_cookie_string" )
audio_tasks = [
( "model_token_1" , "sample_text_1" , "filename1.wav" ),
( "model_token_2" , "sample_text_2" , "filename2.wav" ),
( "model_token_3" , "sample_text_3" , "filename3.wav" )
]
await gen . fetch_and_save_tasks ( audio_tasks , output_path = "./audio" )
asyncio . run ( multiple_text_to_speech ())Взносы приветствуются! Пожалуйста, распадайте репозиторий и создайте запрос на притяжение с вашими улучшениями.