电脑知识|欧美黑人一区二区三区|软件|欧美黑人一级爽快片淫片高清|系统|欧美黑人狂野猛交老妇|数据库|服务器|编程开发|网络运营|知识问答|技术教程文章 - 好吧啦网

您的位置:首頁技術文章
文章詳情頁

基于Python 的語音重采樣函數解析

瀏覽:74日期:2022-07-18 14:52:18

因為工作中會經常遇到不同采樣率的聲音文件的問題,特意寫了一下重采樣的程序。

原理就是把采樣點轉換到時間刻度之后再進行插值,經過測試,是沒有問題的。

#!/usr/bin/env python# -*- coding: utf-8 -*-# @Time : 17-7-21 下午2:32# @Author : Lei.Jinggui# @Site : http://blog.csdn.net/lccever# @File : Resample.py# @Software: PyCharm Community Edition# @contact: lccever@126.comimport numpy as npdef Resample(input_signal,src_fs,tar_fs): ’’’ :param input_signal:輸入信號 :param src_fs:輸入信號采樣率 :param tar_fs:輸出信號采樣率 :return:輸出信號 ’’’ dtype = input_signal.dtype audio_len = len(input_signal) audio_time_max = 1.0*(audio_len-1) / src_fs src_time = 1.0 * np.linspace(0,audio_len,audio_len) / src_fs tar_time = 1.0 * np.linspace(0,np.int(audio_time_max*tar_fs),np.int(audio_time_max*tar_fs)) / tar_fs output_signal = np.interp(tar_time,src_time,input_signal).astype(dtype) return output_signalif __name__ == ’__main__’: import wave import pyaudio def playSound(audio_data_short, framerate=16000, channels=1): preply = pyaudio.PyAudio() # 播放聲音 streamreply = preply.open(format=pyaudio.paInt16, channels=channels, rate=framerate, output=True) data = audio_data_short.tostring() streamreply.write(data) streamreply.close() preply.terminate() wave_file = ’test.wav’ audio_file = wave.open(wave_file, ’rb’) audio_data = audio_file.readframes(audio_file.getnframes()) audio_data_short = np.fromstring(audio_data, np.short) src_fs = audio_file.getframerate() src_chanels = audio_file.getnchannels() if src_chanels > 1: audio_data_short = audio_data_short[::src_chanels] tar_fs = np.int(src_fs * 0.5) playSound(audio_data_short,framerate=src_fs) audio_data_short0 = Resample(audio_data_short,src_fs,tar_fs) playSound(audio_data_short0,framerate=tar_fs)

補充知識:Python 多線程的退出/停止的一種是實現思路

在使用多線程的過程中,我們知道,python的線程是沒有stop/terminate方法的,也就是說它被啟動后,你無法再主動去退出它,除非主進程退出了,注意,是主進程,不是線程的父進程.

一個比較合理的方式就是把原因需要放到threading.Thread的target中的線程函數,改寫到一個繼承類中,下面是一個實現例子

import threadingimport timeimport os # 原本需要用來啟動的無線循環的函數def print_thread(): pid = os.getpid() counts = 0 while True: print(f’threading pid: {pid} ran: {counts:04d} s’) counts += 1 time.sleep(1) # 把函數放到改寫到類的run方法中,便可以通過調用類方法,實現線程的終止class StoppableThread(threading.Thread): def __init__(self, daemon=None): super(StoppableThread, self).__init__(daemon=daemon) self.__is_running = True self.daemon = daemon def terminate(self): self.__is_running = False def run(self): pid = os.getpid() counts = 0 while self.__is_running: print(f’threading running: {pid} ran: {counts:04d} s’) counts += 1 time.sleep(1) def call_thread(): thread = StoppableThread() thread.daemon = True thread.start() pid = os.getpid() counts = 0 for i in range(5): print(f’0 call threading pid: {pid} ran: {counts:04d} s’) counts += 2 time.sleep(2) # 主動把線程退出 thread.terminate() if __name__ == ’__main__’: call_thread() print(f’==========call_thread finish===========’) counts = 0 for i in range(5): counts += 1 time.sleep(1) print(f’main thread:{counts:04d} s’)

以上這篇基于Python 的語音重采樣函數解析就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持好吧啦網。

標簽: Python 編程
相關文章:
主站蜘蛛池模板: 智能垃圾箱|垃圾房|垃圾分类亭|垃圾分类箱专业生产厂家定做-宿迁市传宇环保设备有限公司 | 彭世修脚_修脚加盟_彭世修脚加盟_彭世足疗加盟_足疗加盟连锁_彭世修脚技术培训_彭世足疗 | 铝合金脚手架厂家-专注高空作业平台-深圳腾达安全科技 | 塑料瓶罐_食品塑料瓶_保健品塑料瓶_调味品塑料瓶–东莞市富慷塑料制品有限公司 | 排烟防火阀-消防排烟风机-正压送风口-厂家-价格-哪家好-德州鑫港旺通风设备有限公司 | 金属波纹补偿器厂家_不锈钢膨胀节价格_非金属伸缩节定制-庆达补偿器 | 制样机-密封锤式破碎机-粉碎机-智能马弗炉-南昌科鑫制样 | 塑料撕碎机_编织袋撕碎机_废纸撕碎机_生活垃圾撕碎机_废铁破碎机_河南鑫世昌机械制造有限公司 | 隧道烘箱_隧道烘箱生产厂家-上海冠顶专业生产烘道设备 | 齿式联轴器-弹性联轴器-联轴器厂家-江苏诺兴传动联轴器制造有限公司 | 蔬菜清洗机_环速洗菜机_异物去除清洗机_蔬菜清洗机_商用洗菜机 - 环速科技有限公司 | 机床主轴维修|刀塔维修|C轴维修-常州翔高精密机械有限公司 | 不锈钢/气体/液体玻璃转子流量计(防腐,选型,规格)-常州天晟热工仪表有限公司【官网】 | 凝胶成像仪,化学发光凝胶成像系统,凝胶成像分析系统-上海培清科技有限公司 | 挖掘机挖斗和铲斗生产厂家选择徐州崛起机械制造有限公司 | 医疗仪器模块 健康一体机 多参数监护仪 智慧医疗仪器方案定制 血氧监护 心电监护 -朗锐慧康 | 精密钢管,冷拔精密无缝钢管,精密钢管厂,精密钢管制造厂家,精密钢管生产厂家,山东精密钢管厂家 | 驾驶人在线_专业学车门户网站 | RFID电子标签厂家-上海尼太普电子有限公司 | 合同书格式和范文_合同书样本模板_电子版合同,找范文吧 | 浙江富广阀门有限公司 | 污水提升器,污水提升泵,地下室排水,增压泵,雨水泵,智能供排水控制器-上海智流泵业有限公司 | 武汉天安盾电子设备有限公司 - 安盾安检,武汉安检门,武汉安检机,武汉金属探测器,武汉测温安检门,武汉X光行李安检机,武汉防爆罐,武汉车底安全检查,武汉液体探测仪,武汉安检防爆设备 | 车牌识别道闸_停车场收费系统_人脸识别考勤机_速通门闸机_充电桩厂家_中全清茂官网 | SOUNDWELL 编码器|电位器|旋转编码器|可调电位器|编码开关厂家-广东升威电子制品有限公司 | 安徽千住锡膏_安徽阿尔法锡膏锡条_安徽唯特偶锡膏_卡夫特胶水-芜湖荣亮电子科技有限公司 | 电池高低温试验箱-气态冲击箱-双层电池防爆箱|简户百科 | 污水提升器,污水提升泵,地下室排水,增压泵,雨水泵,智能供排水控制器-上海智流泵业有限公司 | ERP企业管理系统永久免费版_在线ERP系统_OA办公_云版软件官网 | 陕西自考报名_陕西自学考试网| 盐水蒸发器,水洗盐设备,冷凝结晶切片机,转鼓切片机,絮凝剂加药系统-无锡瑞司恩机械有限公司 | 书法培训-高考书法艺考培训班-山东艺霖书法培训凭实力挺进央美 | 全温恒温摇床-水浴气浴恒温摇床-光照恒温培养摇床-常州金坛精达仪器制造有限公司 | 「阿尔法设计官网」工业设计_产品设计_产品外观设计 深圳工业设计公司 | 宝宝药浴-产后药浴-药浴加盟-艾裕-专注母婴调养泡浴 | 网带通过式抛丸机,,网带式打砂机,吊钩式,抛丸机,中山抛丸机生产厂家,江门抛丸机,佛山吊钩式,东莞抛丸机,中山市泰达自动化设备有限公司 | 照相馆预约系统,微信公众号摄影门店系统,影楼管理软件-盟百网络 | 金属清洗剂,防锈油,切削液,磨削液-青岛朗力防锈材料有限公司 | 【电子厂招聘_普工招工网_工厂招聘信息平台】-工立方打工网 | 杭州厂房降温,车间降温设备,车间通风降温,厂房降温方案,杭州嘉友实业爽风品牌 | 深圳离婚律师咨询「在线免费」华荣深圳婚姻律师事务所专办离婚纠纷案件 |