podcast_tts é uma biblioteca Python para gerar podcasts e diálogos usando o texto em fala (TTS). Ele suporta vários alto-falantes, música de fundo e mistura precisa de áudio para obter resultados de qualidade profissional.
Você pode ouvir o exemplo de podcast abaixo:
voices para uso futuro. # ensure to have sox, or ffmpeg installed
brew install sox
# install the package
pip install podcast_tts import asyncio
from podcast_tts import PodcastTTS
async def main ():
tts = PodcastTTS ( speed = 5 )
await tts . generate_tts (
text = "Hello! Welcome to our podcast." ,
speaker = "male1" ,
filename = "output_audio.wav" ,
channel = "both"
)
if __name__ == "__main__" :
asyncio . run ( main ())O método Generate_podcast combina diálogo e música de fundo para uma produção perfeita de podcast.
import asyncio
from podcast_tts import PodcastTTS
async def main ():
tts = PodcastTTS ( speed = 5 )
# Define speakers and text
texts = [
{ "male1" : [ "Welcome to the podcast!" , "both" ]},
{ "female2" : [ "Today, we discuss AI advancements." , "left" ]},
{ "male2" : [ "Don't miss our exciting updates." , "right" ]},
]
# Define background music (local file or URL)
music_config = [ "https://example.com/background_music.mp3" , 10 , 3 , 0.3 ]
# Generate the podcast
output_file = await tts . generate_podcast (
texts = texts ,
music = music_config ,
filename = "podcast_with_music.mp3" ,
pause_duration = 0.5 ,
normalize = True
)
print ( f"Podcast saved to: { output_file } " )
if __name__ == "__main__" :
asyncio . run ( main ())Podcasttts inclui os seguintes perfis de alto -falante pré -fabricados:
Esses perfis estão incluídos no diretório Default_voices do pacote e podem ser usados sem configuração adicional.
Quando um perfil do alto -falante é especificado, mas não existe, a biblioteca gera automaticamente um novo perfil do alto -falante e o salvará na subpasta Voices. Isso garante papéis de voz consistentes em diferentes turnos em um diálogo. Por exemplo:
texts = [
{ "Narrator" : [ "Welcome to this exciting episode." , "left" ]},
{ "Expert" : [ "Today, we'll explore AI's impact on healthcare." , "right" ]},
]
# If "Narrator" or "Expert" profiles do not exist, they will be generated dynamically.Os perfis são salvos no diretório Voices do script e reutilizados automaticamente se o mesmo alto -falante for usado no futuro para consistência.
Você pode carregar qualquer perfil do alto -falante especificando seu nome de arquivo (sem a extensão .txt). Os perfis são armazenados na subpasta Voices, para que você não precise especificar o caminho explicitamente.
# Assuming a speaker profile "Host.txt" exists in the voices subfolder
await tts . generate_tts ( "This is a test for an existing speaker." , "Host" , "existing_speaker.wav" )As contribuições são bem -vindas! Sinta -se à vontade para enviar questões ou puxar solicitações no repositório do GitHub.
Este projeto está licenciado sob a licença do MIT. Consulte o arquivo de licença para obter detalhes.