Python实现音频格式转换

Python实现把非wav格式的音频转换成 采样率16kHZ 宽度16位 单声道的wav文件


import  os
import  datetime
from pydub import AudioSegment


def convert_audio_to_wav(audio_path):
    audio = AudioSegment.from_file(audio_path)
    audio = audio.set_frame_rate(16000)  # 设置采样率为16kHz
    audio = audio.set_channels(1)  # 设置单声道
    audio = audio.set_sample_width(2)  # 设置样本宽度为16位(2个字节)

    out_floder = extract_directory_path(audio_path)
    final_result_time = out_floder + "\\" + datetime.datetime.now().strftime("%Y%m%d_%H%M%S")
    wav_file = final_result_time + ".wav"

    audio.export(wav_file, format='wav')
    print("导出成功" + str(wav_file))


#video_floder 路径的生成
def extract_directory_path(audio_path):
    directory_path = os.path.dirname(audio_path)
    base_folder_path = os.path.join(directory_path, "videoFile")

    current_time = datetime.datetime.now()  # 获取当前时间
    current_date = current_time.strftime("%Y%m%d")  # 获取当前日期并格式化为yyyyMMdd形式
    folder_path = os.path.join(base_folder_path, current_date)  # 拼接当前文件夹路径和日期字符串
    time_folder_path = os.path.join(folder_path, current_time.strftime("%H%M%S"))  # 拼接日期文件夹路径和当前时间节点字符串
    output_folder = time_folder_path
    os.makedirs(output_folder, exist_ok=True)
    return output_folder

# 示例用法
audio_path = "G:\\PaddleSpeechModel\\1109\\output.mp3"


convert_audio_to_wav(audio_path)
输出结果:
导出成功G:\PaddleSpeechModel\1109\videoFile\20240119\165412\20240119_165412.wav
  • 9
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值