中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

利用Python怎么實現音頻雙通道分離

發布時間:2020-12-28 14:38:42 來源:億速云 閱讀:395 作者:Leah 欄目:開發技術

利用Python怎么實現音頻雙通道分離?相信很多沒有經驗的人對此束手無策,為此本文總結了問題出現的原因和解決方法,通過這篇文章希望你能解決這個問題。

示例代碼如下:

#!/usr/bin/env python
# -*- coding: utf-8 -*-
"""
音頻雙通道分離
"""
import sys
import numpy as np
from scipy.io import wavfile
from converter import mp3_to_wav


def split_channel(wav_path, left_wav_path, right_wav_path):
 """
 通道分離
 :param wav_path: wav音頻的路徑
 :param left_wav_path: 左聲道的wav音頻路徑
 :param right_wav_path: 右聲道的wav音頻路徑
 :return None:
 """
 try:
  sample_rate, wav_data = wavfile.read(wav_path)
  left = []
  right = []
  for item in wav_data:
   left.append(item[0])
   right.append(item[1])
  wavfile.write(left_wav_path, sample_rate, np.array(left))
  wavfile.write(right_wav_path, sample_rate, np.array(right))
 except IOError as e:
  print('error is %s' % str(e))
 except:
  print('other error', sys.exc_info())


if __name__ == '__main__':
 mp3_to_wav('input/test.mp3', 'tmp/tmp.wav')
 split_channel('tmp/tmp.wav', 'output/left.wav', 'output/right.wav')

其中調用了一個自定義的庫,converter.py 加入了代碼:

from pydub import AudioSegment


def mp3_to_wav(source, destin):
 """
 mp3 轉 wav
 :param source:
 :param destin:
 :return None:
 """
 data = AudioSegment.from_mp3(source)
 data.export(destin, format='wav')

本代碼示例可以生成兩個通道分離后的 wav 文件。

注意:如果源文件的格式是 wav 文件,可以省掉轉換格式的過程。

看完上述內容,你們掌握利用Python怎么實現音頻雙通道分離的方法了嗎?如果還想學到更多技能或想了解更多相關內容,歡迎關注億速云行業資訊頻道,感謝各位的閱讀!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

大港区| 崇仁县| 襄垣县| 铁力市| 仁寿县| 左贡县| 柳江县| 新野县| 木里| 资中县| 永春县| 襄汾县| 萨迦县| 绍兴市| 涞源县| 丹凤县| 江都市| 紫金县| 临夏县| 黑山县| 栖霞市| 昆明市| 区。| 阿勒泰市| 调兵山市| 即墨市| 宜城市| 茶陵县| 辛集市| 石柱| 垦利县| 敦化市| 肥城市| 洪泽县| 阿图什市| 夹江县| 厦门市| 神池县| 宣汉县| 梨树县| 新津县|