首页 > 解决方案 > gTTS 错误:另存为 wav 但另存为 MPEG

问题描述

尝试使用 gTTS 模块将文本转换为语音并保存为 wav 文件。

我的代码:

import gTTS
text = "This is my text in the saving folder"
tts = gTTS(text)
tts.save('sample.wav')

该文件已保存但当我检查我的文件信息时:

$ mediainfo sample.wav
General
Complete name                            : sample.wav
Format                                   : MPEG Audio
File size                                : 15.8 KiB
Duration                                 : 4 s 32 ms
Overall bit rate mode                    : Constant
Overall bit rate                         : 32.0 kb/s
FileExtension_Invalid                    : m1a mpa1 mp1 m2a mpa2 mp2 mp3

Audio
Format                                   : MPEG Audio
Format version                           : Version 2
Format profile                           : Layer 3
Duration                                 : 4 s 32 ms
Bit rate mode                            : Constant
Bit rate                                 : 32.0 kb/s
Channel(s)                               : 1 channel
Sampling rate                            : 24.0 kHz
Compression mode                         : Lossy
Stream size                              : 15.8 KiB (100%)

为什么我得到不同的保存格式?

标签: pythonpython-3.xmpeggoogle-text-to-speech

解决方案


您可能无法保存它。gTTS 提供了将音频剪辑保存为 mp3 的选项。即使您将名称命名为 .wav,它也无法识别并使用默认选项进行保存。万一,如果您需要单独使用 pydub 模块更改文件格式的 wav 文件。

from pydub import AudioSegment
sound = AudioSegment.from_mp3("myfile.mp3")
sound.export("myfile.wav", format="wav")

推荐阅读