• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

TTS Google Cloud

Aruba Cloud - Virtual Private Server VPS
0 głosów
95 wizyt
pytanie zadane 22 grudnia 2024 w Hostingi, domeny, usługi przez Adam93 Nowicjusz (180 p.)

Hej tworze na własny użytek skrypt w pythonie który przez Google TTS tworzy mp3 2 dwóch różnych językach.Plik działa już lokalnie ale nie umiem go wrzucić do google Cloud.Chciałbym aby przez "POST" Postmanie udostępniał mi plik mp3 kiedy korzystam z telefonu.Oto kod :  Próowałem z chat gpt (ale cały czas są jakieś błedy i kręce się w kółko.Proszę o pomoc.


from flask import Flask, request, jsonify
from google.cloud import texttospeech
import os

# Wprowadź tutaj swój klucz API
API_KEY = "API"

app = Flask(__name__)

# Utwórz obiekt Text-to-Speech Client z opcjami zawierającymi klucz API
client = texttospeech.TextToSpeechClient(
    client_options={"api_key": API_KEY}
)


@app.route('/', methods=['POST'])
def generate_tts():
    # Pobierz dane z zapytania POST
    data = request.get_json()

    # Pobierz język i tekst
    lang = data.get('lang')
    text = data.get('text')

    if not lang or not text:
        return jsonify({'error': 'Lang and text are required'}), 400

    # Ustawienia dla języka
    if lang == 'PL':
        language_code = 'pl-PL'
    elif lang == 'SV':
        language_code = 'sv-SE'
    else:
        return jsonify({'error': 'Unsupported language'}), 400

    # Inicjalizacja żądania tekstu na mowę
    synthesis_input = texttospeech.SynthesisInput(text=text)
    voice = texttospeech.VoiceSelectionParams(
        language_code=language_code,
        ssml_gender=texttospeech.SsmlVoiceGender.NEUTRAL
    )
    audio_config = texttospeech.AudioConfig(
        audio_encoding=texttospeech.AudioEncoding.MP3
    )

    try:
        # Generowanie mowy
        response = client.synthesize_speech(
            input=synthesis_input, voice=voice, audio_config=audio_config
        )

        # Zapisz dźwięk do pliku
        audio_path = "output.mp3"  # Zmieniamy na lokalną ścieżkę w katalogu roboczym
        with open(audio_path, 'wb') as out:
            out.write(response.audio_content)

        return jsonify({'message': 'Audio generated', 'audio_path': audio_path}), 200

    except Exception as e:
        return jsonify({'error': str(e)}), 500


# Uruchomienie aplikacji Flask, jeśli uruchamiana lokalnie
if __name__ == "__main__":
    app.run(host="0.0.0.0", port=8080)

 

komentarz 22 grudnia 2024 przez Distracted_bez_hasła Początkujący (330 p.)
edycja 22 grudnia 2024 przez Distracted_bez_hasła

 # Wprowadź tutaj swój klucz API

API_KEY = "API"

To pierwsze, co się rzuca w oczy.

 

Kategorie zmień na programowanie, podkategoria Python.

1 odpowiedź

0 głosów
odpowiedź 22 grudnia 2024 przez Adam93 Nowicjusz (180 p.)
Mam API ale nie chiałem publikować na form ze względu bezpieczństwa.
komentarz 22 grudnia 2024 przez Distracted_bez_hasła Początkujący (330 p.)
Ok.

Podobne pytania

+1 głos
1 odpowiedź 491 wizyt
pytanie zadane 18 października 2022 w Offtop przez jankustosz1 Nałogowiec (36,800 p.)
+1 głos
2 odpowiedzi 942 wizyt
pytanie zadane 25 grudnia 2020 w Sieci komputerowe, internet przez EdeX Mądrala (5,130 p.)
0 głosów
1 odpowiedź 380 wizyt
pytanie zadane 6 lipca 2021 w Hostingi, domeny, usługi przez Jakusss Początkujący (410 p.)

93,329 zapytań

142,323 odpowiedzi

322,400 komentarzy

62,662 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj

Wprowadzenie do ITsec, tom 1 Wprowadzenie do ITsec, tom 2

Można już zamawiać dwa tomy książek o ITsec pt. "Wprowadzenie do bezpieczeństwa IT" - mamy dla Was kod: pasja (użyjcie go w koszyku), dzięki któremu uzyskamy aż 15% zniżki! Dziękujemy ekipie Sekuraka za fajny rabat dla naszej Społeczności!

...