wav 파일의 웨이브 폼 표현을 만들고 있는데 파이썬에서 표준 라이브러리를 사용하여 효율적으로이 작업을 수행하는 가장 좋은 방법이 무엇인지 궁금합니다. 일부 오디오 파일은 몇 분이 걸릴 수 있습니다.표준 라이브러리 파이썬으로 웨이브 폼 표현 만들기
감사합니다.
wav 파일의 웨이브 폼 표현을 만들고 있는데 파이썬에서 표준 라이브러리를 사용하여 효율적으로이 작업을 수행하는 가장 좋은 방법이 무엇인지 궁금합니다. 일부 오디오 파일은 몇 분이 걸릴 수 있습니다.표준 라이브러리 파이썬으로 웨이브 폼 표현 만들기
감사합니다.
http://docs.python.org/2/library/wave.html - wav 파일을 읽기위한 stdlib. 내 머리 위로 떨어져 A simple example of using it.
이 내가 대신 예를 들어, 이미지, SVG를 쓰는 사용할 수있는 다양한 라이브러리가 있습니다
fmts = (None, "=B", "=h", None, "=l")
fmt = fmts[sampwidth]
dcs = (None, 128, 0, None, 0)
dc = dcs[sampwidth]
image_width = 600
image_height = 300
chunk_size = len(wavefile.getnframes())/image_width
def unpacker(frame):
return struct.unpack(fmt, frame)[0]
for i in range(chunk_size):
value = math.avg([unpacker(x) for x in wavefile.read_frames(chunk_size)])
# and then use value * 300 to figure out the vertical position for the pixel.
그 (의사)을 할 거라고 방법이다.
추가 : C 코드가 포함 된 모듈의 예 (대신 _Easily_ 대신 Python 코드로 변환 될 수 있음) https://github.com/superjoe30/PyWaveform – synthesizerpatel
이것은 굉장하지만 정말 필요합니다. wav 파일의 진폭 배열. 나는 내가 여기에서 일할 수 있다고 꽤 확신한다! – chribis
FWIW, numpy는 stdlib의 일부가 아닙니다. – mgilson
내 잘못입니다. 그걸 몰랐어. 나는 numpy를 제외하고 표준 라이브러리를 추측한다. – chribis
"파형 표현 생성"이란 정확히 무엇을 의미합니까? 파형의 그래픽 표현 (즉, 샘플 값 대 시간 그래프)을 의미합니까? 그렇다면 200,000x200 PNG 파일을 생성하거나 실시간으로 Tk 윈도우에 애니메이션 그래프를 그려보고 싶은가요? 아니면 ...? – abarnert