일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- 기초 100제
- 진수
- 아스키코드
- 선택실행구조
- 8진수
- 출력
- 종합
- 산술연산
- 불 자료형
- 비교연산
- 기초100제
- 코드업
- 2진수
- 불 연산
- 파이썬
- bitwise
- 논리연산
- 10진수
- 비트단위논리연산
- input()
- 2차원배열
- 문자열
- 딥러닝
- face recognition
- OpenCV
- 반복실행구조
- 입출력
- Docker
- codeup
- 16진수
- Today
- Total
DeepFlowest
[CodeUp]기초100제(python)_1085번 : [종합] 소리 파일 저장용량 계산하기 본문
문제 :
소리가 컴퓨터에 저장될 때에는 디지털 데이터화 되어 저장된다.
마이크를 통해 1초에 적게는 수십 번, 많게는 수만 번 소리의 강약을 체크해
그 값을 정수값으로 바꾸고, 그 값을 저장해 소리를 파일로 저장할 수 있다.
값을 저장할 때에는 비트를 사용하는 정도에 따라 세세한 녹음 정도를 결정할 수 있고,
좌우(스테레오) 채널로 저장하면 2배… 5.1채널이면 6배의 저장공간이 필요하고,
녹음 시간이 길면 그 만큼 더 많은 저장공간이 필요하다.
1초 동안 마이크로 소리강약을 체크하는 수를 h
(헤르쯔, Hz 는 1초에 몇 번? 체크하는가를 의미한다.)
한 번 체크한 결과를 저장하는 비트 b
(2비트를 사용하면 0 또는 1 두 가지, 16비트를 사용하면 65536가지..)
좌우 등 소리를 저장할 트랙 개수인 채널 c
(모노는 1개, 스테레오는 2개의 트랙으로 저장함을 의미한다.)
녹음할 시간 s가 주어질 때,
필요한 저장 용량을 계산하는 프로그램을 작성해보자.
실제로 일반적인 CD 음질(44.1KHz, 16bit, 스테레오)로 1초 동안 저장하려면
44100 * 16 * 2 * 1 bit의 저장공간이 필요하다.
이렇게 녹음하는 방식을 PCM(Pulse Code Modulation) 방법이라고 하는데,
압축하지 않은 순수한(raw) 소리 데이터 파일은 대표적으로 *.wav 가 있다.
**
8 bit(비트) = 1byte(바이트) // 8bit=1Byte
1024 Byte(210 byte) = 1KB(킬로 바이트) // 1024bit=1KB
1024 KB(210 KB) = 1MB(메가 바이트)
1024 MB(210 MB) = 1GB(기가 바이트)
1024 GB(210 GB) = 1TB(테라 바이트)
답 :
코드 : https://github.com/Yearang-Lee/Algorithm/tree/master/CodeUp
'알고리즘 > 코드업' 카테고리의 다른 글
[CodeUp]기초100제(python)_1087번 : [종합] 여기까지! 이제 그만~ (0) | 2020.04.01 |
---|---|
[CodeUp]기초100제(python)_1086번 : [종합] 그림 파일 저장용량 계산하기 (0) | 2020.04.01 |
[CodeUp]기초100제(python)_1084번 : [종합] 빛 섞어 색 만들기 (0) | 2020.03.31 |
[CodeUp]기초100제(python)_1083번 : [종합] 3 6 9 게임의 왕이 되자! (0) | 2020.03.31 |
[CodeUp]기초100제(python)_1082번 : [종합] 16진수 구구단? (0) | 2020.03.31 |