デュアルチャネル分離オーディオPythonの使用

一部のオーディオは、独立したオーディオチャンネルを作成する必要があり、当事者間の対話です。

次のようにサンプル・コードは次のとおりです。

。1  !は/ usr / binに/ PythonのENV 
2  - * -コーディング:UTF-8 - * - 。
3。 "" " 
4。 オーディオデュアルチャンネル分離
 5。 """ 
6。 インポートSYS
 7。 インポートNP AS numpyの
 8。 から scipy.io インポートwavfile
 。9  からコンバータインポートmp3_to_wav
 10  
11  
12である DEFのsplit_channel(wav_path、left_wav_path、right_wav_path):
 13は     " "" 
14      チャンネルセパレータ
 15      PARAM wav_path:WAVオーディオパス
 16      :PARAM left_wav_path:左チャンネルオーディオパスWAV
17      :PARAM right_wav_path:右声道的WAV音频路径
 18      :戻りなし:
 19      ""」
20      試み21          sample_rate、wav_data = wavfile.read(wav_path)
 22          左= []
 23          右= []
 24          のための項目wav_data :
 25              left.append(項目[0])
 26              right.append(項目[1 ])
 27          wavfile.write(left_wav_path、sample_rate、np.array(左))
 28          wavfile.write(right_wav_path、sample_rate、np.array(右))
 29      を除きますEとして例外IOError:
 30          プリント' エラーは%sである'STR(E))
 31      を除く32          プリント' その他のエラー' 、sys.exc_info())
 33  
34  
35  なら __name__ == ' __main__ ' 36      mp3_to_wav(' 入力/ test.mp3 '' TMP / tmp.wav ' 37      split_channel(' TMP / tmp.wav '' 出力/ left.wav '' 出力/ right.wav '

カスタムライブラリを呼び出す、converter.pyはコードに参加しました:

1  から pydubのインポートAudioSegment
 2  
3  
4  デフ:mp3_to_wav(ソース、デス)
 5      "" " 
6      mp3转WAV
 7      :PARAM源:
 8      :PARAMデス:
 9      :戻りなし:
 10      """ 
11件の      データ= AudioSegment.from_mp3(ソース)
 12      data.export(デス、形式= ' WAV '

このコードは、wavファイルは、2つの別々のチャンネルを模範的な生成することができます。

注:ソース・ファイル・フォーマットである場合はWAVファイル形式の変換処理を省略することができます。

 

おすすめ

転載: www.cnblogs.com/noluye/p/11224137.html
おすすめ