w32 파일을 int32 데이터 형식으로 쓰고 샘플 속도가 11025이지만 재생시 출력 wav 파일이 소리가 나지 않습니다.왜 파이썬에서 wav 파일을 쓰지만 소리가 들리지 않는 이유는 무엇입니까?
from scipy.io.wavfile import read
rate, data0 = read('001.wav') #rate type is int
data = numpy.asarray(data0,dtype=theano.config.floatX)
for ffp in data:
print data[ffp]
이 코드를 사용하면 정상적인 wav 파일을 명확하게 볼 수 있습니다. 여기 어떤 정수 시퀀스입니다 :
-23.0 -51.0 0.0 0.0 0.0 0.0 0.0 0.0 -1.0 -17.0 39.0 253.0 -266.0 -146.0 -146.0 -56.0 0.0 0.0 -1.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 43.0 177.0 -428.0 455.0 -236.0 -325.0 113.0 237.0 121.0 82.0 352.0 139.0 0.0 0.0 2.0 0.0 0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 214.0 160.0 -733.0 -501.0 844.0 -446.0 -8.0 28.0 0.0 -1.0 -170.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 -1.0 -2.0 -1.0 0.0 0.0 0.0 -2.0 184.0 51.0 -330.0 -80.0 416.0 -121.0 -498.0 192.0 148.0 0.0 0.0 -1.0 0.0 0.0 0.0 -1.0 0.0 0.0 0.0 0.0 0.0 0.0 -1.0 0.0 0.0 0.0 112.0 -171.0 -253.0 -49.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 -2.0 -1.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 -24.0 0.0 0.0 -101.0 -142.0 -476.0 -212.0 -377.0 329.0 44.0 -38.0 246.0 0.0 0.0 7.0 315.0 189.0 67.0 28.0 97.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 120.0 54.0 0.0
이 한 사운드가 WAV 파일을 재생 :
from scipy.io.wavfile import write
wavfiles = []
for fr in range(wavfile.size/11025):
for fn in range(wavfile[fr].size):
wavfile[fr][fn] = int(wavfile[fr][fn])
wavfiles0 = numpy.asarray(wavfile[fr],dtype='int32')
wavfiles.append(wavfiles0)
wavfiles_ = numpy.vstack(wavfiles)
wavfiles2 = wavfiles_.ravel()
filename = 'test01.wav'
write(filename, 11025, wavfiles2)
for ffp in wavfiles2:
print wavfiles2[ffp]
우리는이 정수 시퀀스 볼 수 있습니다
-429 -288 -725 -1264 486 326 -639 -695 -632 -742 532 1063 671 71 -613 73 807 195 496 -422 -74 -564 884 -1196 558 -106 -667 975 -546 -178 -1253 -279 1021 -549 38 304 -278 -950 -264 -88 621 -460 78 -138 450 -191 370 123 599 -858 -860 95 -204 -285 -210 441 294 -225 -109 -26 -1267 -199 -950 -369 -232 348 -528 -13 495 -554 -542 1066 159 -176 -282 -1240 -298 -1304 -883 309 -574 519 -149 271 -562 -1107 -248 -161 100 -165 109 105 -267 -801 8 -346 -1065 -198 394 -538 32 -41 73 -209 -1095 1508 -520 37 139 450 -335 -60 -225 499 -63 991 -702 -733 702 -480 -828 -447 -803 978 -439 663 636 -513 42 -100 388 945 364 590 -142 1127 -950 -1052 1122 213 -94 -722 -63 -601 323 509 -692 -446 -393 -496 940 -761 311 -643 -144 -280 -162 383 -828 -198 -361 -61 -1035 -246 1167 -29 27 246 1063 -88 192 -1481 -524 457 -205 453 -198 499 -33 30 438 72 198 -17 -303 532 -282 738 712 -963 198 53 623 708 879 398 388 954 -177 -549 165 116 -359 147 410 -69 615 240 168 -745 -83 125 -858 847 930 142 -1127 465 1535 1054 -1229 711 295 266 38 146 -701 -345 -74 241 164 102 -684 -339 130 -883 -1442 -1196 124 -649 -15 -376 776 -559 73 940 -419 -48 617 20 -515 179 -1065 157 -497 202 282 -6 -104 -267 343 489 236 722 -320 1007 -466 -129 807 487 -674 -627 170 256 -856 -629 -166 -1390 1184 -303 179 -447 482 303 -502 -52 -137 395 109 280 1147 159 243 118 531 -70 -564 562 491 38 -74 -826 -63 -1276 329 -43 -41 -587 -193 -43 -52 949 -258 -446 -460 -258 332 -580 -514 -898 294 -883 -377 -428 48 0 411 970 146 410 -183 -161 -177 38 67 346 -447 -217 -998 580 -165 411
소리가 나지 않는 실수를하는 이유는 무엇입니까?
정수 시퀀스가 일반적인 wav 파일 데이터 시퀀스가 아닌 경우 정상보다 0이 적은 시퀀스가 있기 때문에?
내가하고있는 일은 한 곡에만 30 곡을 결합하는 것처럼 음악을 배우는 것이지만 내가 만든 한 곡을 재생할 때 소리가 들리지 않습니다. 도움을 청했습니다. 감사합니다.
내 시퀀스는 표시 할 값이 너무 커 all.cause의 바로 가기입니다. 그리고 크기가 500 * 11025 (int32) 인 500 초 파형 파일을 가지고 있고 그것을 연주 할 때 청취하지 않는 것이 있습니다. 정상적인 파형 파일을 재생하면 소리가납니다. 그래서 나는 그것을 인쇄하고 그것을 설명하는 방법을 찾으려고 노력합니다. 나는 당신이 범위를 말했고, 나는 파형에 대해 좋은 경험이 없다고 생각할 것이다. 고맙습니다. – user2858910