pyaudio는 음성 데이터를 다루는 라이브러리인 portaudio를 파이썬에서 사용할 수 있도록 한 모듈이다. 음성 데이터를 파일로 저장하거나, 파일로 부터 음성데이터를 불러올 수 있다. 파일 뿐만 아니라 실시간으로 음성데이터를 다루는 것도 가능하다. 먼저 컴퓨터로부터 음성 데이터를 입력받아 간단히 볼륨의 크기를 출력하는 프로그램을 만들어보자. 코드 : 1234567891011121314151617import pyaudioimport numpy as np CHUNK = 2**10RATE = 44100 p=pyaudio.PyAudio()stream=p.open(format=pyaudio.paInt16,channels=1,rate=RATE,input=True, frames_per_buffer=CHUNK,i..
파이썬에는 php의 iconv같은 함수가 없어서 가끔 불편할 때가 있다. 에를 들어서 다음과 같은 경우가 있다. 나는 지금 pyaudio를 이용해서 현재 시스템에 장착되어 있는 오디오 장치에 뭐가 있는지 알아보려고 했다. 그래서 다음과 같은 소스를 사용했다. 123456789import pyaudio def getaudiodevices(): p = pyaudio.PyAudio() for i in range(p.get_device_count()): name = p.get_device_info_by_index(i).get('name') print(name) getaudiodevices();Colored by Color Scriptercs 결과 : 1UnicodeEncodeError: 'cp949' codec..
++++++++++[>+++++++>++++++++++>+++>+. 이게 무엇일까? 암호문?? 이것은 브레인퍽이라는 프로그래밍 언어의 Hello World 소스이다. 저게 어떻게 Hello World를 출력한다는 건지 궁금해질 것이다. 일단 브레인퍽 인터프리터에 넣어서 진짜로 그렇게 출력하는지 보도록 하자. 브레인퍽 인터프리터 : https://kcal2845.github.io/bf_js/ 정말로 Hello World!가 출력되는 것을 볼 수 있다! 그렇다면 어떻게 Hello World!를 출력하는 것일까? 브레인퍽에 대해서 자세히 알아보도록 하자. 브레인퍽(Brain Fuck)은 비속어로 되어있는 이름에서 알 수 있다시피, 프로그램 하나 짜려면 뇌를 쥐어 짜내야 한다. (이런 난해한 프로그래밍 언어를 ..
https://kcal2845.github.io/bf_js/브레인퍽의 온라인 버전 인터프리터를 만들어보았다. 병렬처리가 힘든 자바스크립트의 특성 때문에 비동기 방식으로 만드느라 입력 부분을 만드는데 은근히 힘을 뺐다. 그리고 부한 반복을 돌렸을때 결과값이 안보이는 문제도 보인다. 이 부분을 고칠 수는 있는데, 그렇게 하면 실행 시간이 느려진다. 그렇기 때문에 되도록이면 무한 반복을 돌리는 브레인퍽 프로그램은 안돌리는 것이 좋다. 링크 : https://kcal2845.github.io/bf_js/
브레인퍽(brainfuck), 이름부터가 비범한 이 언어는 모든 명령어를 8개의 문자(+ - [ ] , .)로 모두 처리하는 난해한 프로그래밍 언어(esolang)이다. 물론 이걸 실전용으로 쓰는 사람은 없고, 재미삼아서 만든 것이다. tape라고 부르는 unsigned char형 하나와, char형 포인터 하나로 모든 메모리를 표현한다. https://gist.github.com/maxcountryman/1699708 위 링크에 있는 브레인퍽 C 인터프리터 소스를 아두이노 시리얼 통신에 맞게 고쳐보았다. 아무래도 아두이노의 성능이 딸리는지라, 테이프의 용량을 줄일 수 밖에 없었다. 소스 코드 : Hello World!! 의 코드를 업로드하면, 이렇게 성공적으로 뜨는 것을 볼 수 있다. Hello..
- Total
- Today
- Yesterday
- 컴퓨터 설계
- 아두이노
- 발전기 회로
- 크롬
- 청소년 필독서
- 프로그래밍
- 신호 수신
- 확장프로그램
- 디지털논리회로
- 인터프리터
- CPU 설계
- 발전기ㅣ
- WEBSDR
- Ham
- 로지심
- 무선 마우스
- 자바스크립트
- 브레인퍽
- 게임 제작
- 책상 배치
- logisim
- phaser
- 아마추어무선
- 게임 만들기
- 물리 필독서
- 코딩
- TG-M6600G
- SDR
- 난해언어
- 과학상자
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |