You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用Python的playsound模块设置音频1.5倍速播放?

实现音频1.5倍速播放的可行方案

你用的playsound库本身不支持调节播放速度,得换方法来实现变速播放需求。下面给你两种好用的解决方案:

方案一:用pygame实时变速播放

pygame的音频模块支持直接调整播放速度,步骤简单:

  1. 先安装pygame:pip install pygame
  2. 替换代码为:
from gtts import gTTS
import pygame
import time

kompletterText = "Thats an example"
mytext = str(kompletterText)
language = 'de'
myobj = gTTS(text=mytext, lang=language, slow=False)
# 路径前加r避免转义字符出错
audio_path = r"C:\Users\Sawa2\Desktop\example.mp3"
myobj.save(audio_path)

# 初始化pygame音频组件
pygame.mixer.init()
# 加载音频文件
pygame.mixer.music.load(audio_path)
# 原频率乘以1.5得到1.5倍速的播放频率
freq, _, _ = pygame.mixer.music.get_raw()
pygame.mixer.music.set_rate(int(freq * 1.5))
# 开始播放
pygame.mixer.music.play()
# 等待播放结束
while pygame.mixer.music.get_busy():
    time.sleep(0.1)

⚠️ 注意:这种方法靠修改播放频率实现变速,音频音调会跟着变高,介意的话选下面的方案。

方案二:用pydub处理音频后播放(保持音调不变)

pydub可以先把音频调到1.5倍速同时保留原音调,再播放处理后的音频,效果更自然:

  1. 安装依赖库:pip install pydub simpleaudio
  2. 代码示例:
from gtts import gTTS
from pydub import AudioSegment
from pydub.playback import play

kompletterText = "Thats an example"
mytext = str(kompletterText)
language = 'de'
myobj = gTTS(text=mytext, lang=language, slow=False)
audio_path = r"C:\Users\Sawa2\Desktop\example.mp3"
myobj.save(audio_path)

# 加载MP3音频
audio = AudioSegment.from_mp3(audio_path)
# 调整到1.5倍速,保持音调不变
fast_audio = audio.speedup(playback_speed=1.5, chunk_size=150, crossfade=25)
# 播放处理后的音频
play(fast_audio)

额外提醒:路径里的反斜杠前一定要加r,不然会被当成转义字符导致找不到文件。

内容的提问来源于stack exchange,提问作者Sawa

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.20 21:24:28