Giới thiệu về PyDub

Xử lý Ngôn ngữ Nói bằng Python

Daniel Bourke

Machine Learning Engineer/YouTube Creator

Cài đặt PyDub

$ pip install pydub
  • Nếu dùng định dạng khác .wav, cài ffmpeg tại ffmpeg.org
Xử lý Ngôn ngữ Nói bằng Python

Lớp chính của PyDub: AudioSegment

# Import lớp chính của PyDub
from pydub import AudioSegment
# Nạp tệp audio
wav_file = AudioSegment.from_file(file="wav_file.wav", format="wav")
# Tham số format chỉ để dễ đọc
wav_file = AudioSegment.from_file(file="wav_file.wav")
type(wav_file)
pydub.audio_segment.AudioSegment
Xử lý Ngôn ngữ Nói bằng Python

Phát tệp audio

# Cài simpleaudio để phát wav
$pip install simpleaudio
# Import hàm play
from pydub.playback import play
# Nạp tệp audio
wav_file = AudioSegment.from_file(file="wav_file.wav")

# Phát tệp audio
play(wav_file)
Xử lý Ngôn ngữ Nói bằng Python

Tham số âm thanh

# Nạp các tệp audio
wav_file = AudioSegment.from_file(file="wav_file.wav")
two_speakers = AudioSegment.from_file(file="two_speakers.wav")

# Kiểm tra số kênh wav_file.channels, two_speakers.channels
1, 2
wav_file.frame_rate
480000
Xử lý Ngôn ngữ Nói bằng Python

Tham số âm thanh

# Số byte mỗi mẫu
wav_file.sample_width
2
# Biên độ tối đa
wav_file.max
8488
Xử lý Ngôn ngữ Nói bằng Python

Tham số âm thanh

# Thời lượng tệp audio (ms)
len(wav_file)
3284
Xử lý Ngôn ngữ Nói bằng Python

Thay đổi tham số âm thanh

# Đổi ATTRIBUTENAME của AudioSegment thành x
changeed_audio_segment = audio_segment.set_ATTRIBUTENAME(x)
# Đổi độ rộng mẫu (sample width) thành 1
wav_file_width_1 = wav_file.sample_width(1)
wav_file_width_1.sample_width
1
Xử lý Ngôn ngữ Nói bằng Python

Thay đổi tham số âm thanh

# Đổi sample rate
wav_file_16k = wav_file.frame_rate(16000)
wav_file_16k.frame_rate
16000
# Đổi số kênh
wav_file_1_channel = wav_file.set_channels(1)
wav_file_1_channel.channels
1
Xử lý Ngôn ngữ Nói bằng Python

Ayo berlatih!

Xử lý Ngôn ngữ Nói bằng Python

Preparing Video For Download...