python - 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%)
为什么我得到不同的保存格式?
解决方案
您可能无法保存它。gTTS 提供了将音频剪辑保存为 mp3 的选项。即使您将名称命名为 .wav,它也无法识别并使用默认选项进行保存。万一,如果您需要单独使用 pydub 模块更改文件格式的 wav 文件。
from pydub import AudioSegment
sound = AudioSegment.from_mp3("myfile.mp3")
sound.export("myfile.wav", format="wav")
推荐阅读
- python - 同时递归树遍历?
- r - 更改ggplot2中两条条带的颜色
- c# - 模型类中的虚拟属性如何违反持久性无知原则?
- javascript - 事件监听器中的 Socket.io
- node.js - 如何在快速车把中添加许多动态内容部分?
- python - 给定文件中的anxm矩阵,如何读取第一列中的每一行?
- android - 如何在多模块应用程序单元测试中启动应用程序模块
- python - def 函数和偏移量
- javascript - getter 和 setter 有什么区别?我的意思是,如果我可以互换使用它们是错误的吗?
- swift - 从显示用户名称的文本字段在 firebase 数据库中创建一个名为用户 uid 的节点