Hej,
wiecie moze jak przekonwertowac tekst/slowa po angielsku razem z polskimi na audio (mp3)?
Uzylem gTTS w pythonie i przekonwertowalo mi wszystko (lacznie z polskim tekstem) na audio po angielsku.
To jest tlumaczenie, wiec format jest np. taki:
- shrink - kurczyć, kurczyć się, zmaleć
- Don't wash woollens in a washing machine, because they will shrink. (Nie pierz wełnianych rzeczy w pralce, bo się skurczą.)
Potem uzylem ponizszego kodu w celu zaznaczenia fragmentow po angielsku i po polsku:
from gtts import gTTS
from pydub import AudioSegment
# Tekst do konwersji
text = [
("shrink", "en"),
("kurczyć, kurczyć się, zmaleć", "pl"),
("Don't wash woollens in a washing machine, because they will shrink.", "en"),
("Nie pierz wełnianych rzeczy w pralce, bo się skurczą.", "pl"),
("impart", "en"),
("dodawać, udzielać", "pl"),
("Basil imparts a delicious flavour to the sauce.", "en"),
("Bazylia nadaje temu sosowi wyśmienitego zapachu.", "pl"),
("burden", "en"),
("ciężar, brzemię, obciążenie", "pl"),
("The burden is on us to think of something else now.", "en"),
("Brzemię wymyślenia czegoś innego teraz spoczywa na nas.", "pl"),
("I have to carry this burden on my own.", "en"),
("Muszę sam nosić to brzemię.", "pl"),
("underpin", "en"),
("wspierać, podpierać, wzmacniać, podtrzymywać, popierać", "pl"),
]
# Konwertuj kazdy fragment tekstu na mowe i zapisz jako plik MP3
audio_segments = []
for i, (sentence, lang) in enumerate(text):
tts = gTTS(sentence, lang=lang)
filename = f"segment_{i}.mp3"
tts.save(filename)
audio_segments.append(AudioSegment.from_mp3(filename))
# Polacz wszystkie segmenty w jeden plik audio
combined = sum(audio_segments)
combined.export("output.mp3", format="mp3")
print("Plik MP3 zostal zapisany jako 'output.mp3'")
to pojawia mi sie blad:
$ python convert_text_to_mp3.py
Traceback (most recent call last):
File "C:\Users\ZZZ\AppData\Local\Programs\Python\Python313\Lib\site-packages\pydub\utils.py", line 14, in <module>
import audioop
ModuleNotFoundError: No module named 'audioop'
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "C:\Users\ZZZ\Desktop\convert_text_to_mp3.py", line 2, in <module>
from pydub import AudioSegment
File "C:\Users\ZZZ\AppData\Local\Programs\Python\Python313\Lib\site-packages\pydub\__init__.py", line 1, in <module>
from .audio_segment import AudioSegment
File "C:\Users\ZZZ\AppData\Local\Programs\Python\Python313\Lib\site-packages\pydub\audio_segment.py", line 11, in <module>
from .utils import mediainfo_json, fsdecode
File "C:\Users\ZZZ\AppData\Local\Programs\Python\Python313\Lib\site-packages\pydub\utils.py", line 16, in <module>
import pyaudioop as audioop
ModuleNotFoundError: No module named 'pyaudioop'
Sprawdzalem biblioteki i niby wszystkie sa zainstalowane:
$ pip install pyaudio
Requirement already satisfied: pyaudio in c:\users\ZZZ\appdata\local\programs\python\python313\lib\site-packages (0.2.14)
$ pip install --upgrade pydub
Requirement already satisfied: pydub in c:\users\ZZZ\appdata\local\programs\python\python313\lib\site-packages (0.25.1)
$ python convert_text_to_mp3.py
Traceback (most recent call last):
File "C:\Users\ZZZ\AppData\Local\Programs\Python\Python313\Lib\site-packages\pydub\utils.py", line 14, in <module>
import audioop
ModuleNotFoundError: No module named 'audioop'
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "C:\Users\ZZZ\Desktop\convert_text_to_mp3.py", line 2, in <module>
from pydub import AudioSegment
File "C:\Users\ZZZ\AppData\Local\Programs\Python\Python313\Lib\site-packages\pydub\__init__.py", line 1, in <module>
from .audio_segment import AudioSegment
File "C:\Users\ZZZ\AppData\Local\Programs\Python\Python313\Lib\site-packages\pydub\audio_segment.py", line 11, in <module>
from .utils import mediainfo_json, fsdecode
File "C:\Users\ZZZ\AppData\Local\Programs\Python\Python313\Lib\site-packages\pydub\utils.py", line 16, in <module>
import pyaudioop as audioop
ModuleNotFoundError: No module named 'pyaudioop'