PCM 转 WAV

PCM 数据无法直接通过播放器打开,因为少了 44 字节的文件头,这里面最主要的信息是描述该 PCM 的采样频率,通道数,以及位数。

双击 pcmToWav.exe,拖入待转换的 PCM 数据,输入通道数和采样频率,默认使用 16-bit 表示一个采样点。等待程序运行结束,就会生成一个同名的 .wav 文件。

这里写图片描述

python 源码

# -*- coding: utf-8 -*-
# @Author: cyang
# @Date:   2018-06-07 11:30:01
# @Last Modified by:   cyang
# @Last Modified time: 2018-06-07 14:43:23

import os
import wave

def pcmToWav(in_file, out_file):

    in_file = open(in_file, 'rb')
    out_file = wave.open(out_file, 'wb')

    out_file.setnchannels(int(input("plese input channels [1/2]: ")))
    out_file.setframerate(int(input("plese input samplerate [32000]: ")))
    out_file.setsampwidth(2) #16-bit
    out_file.writeframesraw(in_file.read())

    in_file.close()
    out_file.close()
    print('complete')

if __name__ == '__main__':
    IN_FILE = input(r'input the file name: ')
    OUT_FILE = IN_FILE.split('.')[0]+'.wav'

    pcmToWav(IN_FILE, OUT_FILE)
    os.system('pause')
  • 2
    点赞
  • 2
    收藏
  • 打赏
    打赏
  • 2
    评论

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

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
©️2022 CSDN 皮肤主题:大白 设计师:CSDN官方博客 返回首页
评论 2

打赏作者

cyang812

你的鼓励将是我创作的最大动力

¥2 ¥4 ¥6 ¥10 ¥20
输入1-500的整数
余额支付 (余额:-- )
扫码支付
扫码支付:¥2
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值