赞
踩
1 pip install Baidu-Aip
2 在百度开放平台上注册账号,并在控制台中创建应用,选择短语音转文本应用,有几万次的免费配额,超过次数需要付费(价格贵),如图是我自己的
注意事项:
1,音频文件不能是mp3文件,需要将mp3文件转为无损音乐格式:如flac,wav,pcm等等
2,音频文件需要控制在60s以内,如果大于60s,则会报文本超过限制的错误
- import os
- from aip import AipSpeech
- import time
-
- APP_ID = 'id'
- API_KEY = 'key'
- SECRET_KEY = 'scret'
-
- client = AipSpeech(APP_ID, API_KEY, SECRET_KEY)
-
-
- # 定义函数
- def get_file_content(file_path):
- with open(file_path, 'rb') as fp:
- return fp.read()
-
- def audio_to_text(file_path):
- print('converting: ' + file_path)
- start_time = time.time()
- res = client.asr(get_file_content(file_path), 'pcm', 16000, {
- 'dev_pid': 1737,
- })
- print(res)
- print("used time: {}s".format(round(time.time() - start_time, 2)))
- if res['result']:
- return res['result'][0]
- else:
- print(res)
-
- audio_to_text(r"path\example.pcm")
如果是批量转化,如下列子
首先安装第三方工具库:pip install generalkit,开源项目地址:https://github.com/jiawade/generalkit,该库包含了很多实用工具,如流式处理,文件处理,音频、视频的裁剪、合并、格式转化等等,请大家帮忙多多点赞支持哈
- from kit.stream import Stream
- from kit.file_utils import Files
-
-
- def convert_one_song(song_dir):
- files = Files.list_files(song_dir, 'pcm')#列出文件夹中符合pcm高保真的音频文件
- text = Stream(files).map(lambda x: audio_to_text(x)).join(', ')
-
- #将文件写入指定位置的文件夹中
- Files.write_string_to_file(os.path.join(r'C:\Users\{you_name}\Desktop','{}.txt'.format(Files.get_file_name(song_dir))), text, True)
-
-
- convert_one_song(r"/path/directory")
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。