2013-10-10 5 views
0

sdl로 프로그래밍 중입니다. 그 전에 나는 아래와 같은 속성을 말하는 음악 파일을 얻었다.음악 파일 크기 결정

bit rate = 64kbps 
audio sample rate = 8bit 
channel = 1 
audio sample rate = 8khz 
audio format = pcm 

길이 26 초이며 어떻게 내가 * 26초가 206Kb까지하지 않는 8kHz의의 * 8 비트를 가지고가는 경우에 있기 때문에 206Kb로 끝날 않는 방법을 알고 싶습니다? 그런 다음 내 음악 덩어리 alen이이 크기의 3435760을 제공합니까?

답변

1

크기가 KB가 아닌지 확인하십시오 (I.E.KiloBYTES, 큰 B). 이 샘플 레이트와 긴밀 줄 것이며 비트 깊이가 사용되고 :

(8 비트/샘플) * (8000 개 샘플/초) * (26 초) * (1 바이트/8 비트) = 208 킬로바이트

업데이트 :의견에 회신하여 질문에 게시 된 단위를 수식의 단위로 번역하는 방법에 대한 자세한 정보가 있습니다.

오디오 샘플 속도 = 8khz. 이것은 오디오 초당 얼마나 많은 오디오 샘플이 있는지입니다. 이 경우 초당 8000 샘플이므로 공식의 (8000 샘플/초) 부분과 같습니다.

오디오 비트 전송률 = 8 비트 : 이것은 아마도 오타 일 것이므로이 값을 "비트 심도"로 사용하는 것이 좋습니다. 비트 심도는 단일 오디오 샘플의 크기입니다. 이것은 수식의 (8 비트/샘플) 부분과 같습니다.

비트 전송률 64kbps : 이것은 오디오 파일이 매초마다 64000 비트를 소비 함을 의미합니다. 이것은 수식에서 (8 비트 샘플/초) * (8000 샘플/초)와 동일합니다. 따라서 비트 전송률은 비트 심도 * 샘플 속도에서 계산됩니다.

또한 (1 바이트/8 비트)를 명확히하기 위해 단위를 비트에서 바이트로 변환하기 만하면됩니다. 결과는 8입니다.

+0

정확한 샘플링 속도 * 샘플 * 기간은 얼마입니까? 왜 우리는 1 바이트 시간이 필요합니까? – user2711681