[Python] PCM 파일 길이 측정

Koowater·2023년 1월 1일
0

Python에서 PCM 파일의 길이를 측정하고 wav 파일로 저장하는 코드를 알아보겠습니다.

import soundfile as sf
import numpy as np
import os
from os.path import join

# --- pcm file duration ---
sample_pcm_path = join('sample_data', 'sample.pcm')
pcm_size = os.path.getsize(sample_pcm_path) # byte 단위로 파일 크기를 알 수 있다.

# 이 pcm 파일은 하나의 sample은 2byte, sample rate는 8000로 저장되어 있습니다.
sample_size = 2
sample_rate = 8000
duration = pcm_size / sample_rate / sample_size

# --- pcm to wav --- 
with open(sample_pcm_path, 'rb') as f:
    binary = f.read()
    waveform = np.frombuffer(binary, dtype=np.int16)
    sf.write(join('sample_data', 'sample_from_pcm.wav'), 
   	         waveform, sample_rate, 'PCM_16')
profile
Speech to Text를 공부하고 있습니다.

0개의 댓글

Powered by GraphCDN, the GraphQL CDN