행복한 하루

라즈베리파이 제로 프로젝트(10) – 사운드(소리)를 들어보기 – USB Sound card 본문

RaspberryPi/Raspberry Pi Zero

라즈베리파이 제로 프로젝트(10) – 사운드(소리)를 들어보기 – USB Sound card

변화의 물결 2020. 12. 16. 16:48

 

 

안녕하세요.

 

  MusicBox 실패 후 usb sound card를 장착하여 테스트해 보았습니다. 어떻게든 소리를 듣기 위해서... ^^

 

USB SOUND CARD

1. USB SOUND CARD 연결

  - 라즈베리파이 제로 전원을 켜고 준비해둔 usb sound card를 전원 옆에 microUSB에 연결하면 됩니다. 그런데 문제가 있는 것이 microUSB 5pin이다 보니 타입을 변환해주는 케이블이 필요합니다. 라즈베리파이 W Basic Kit를 구매했다면 같이 들어 있습니다. 그렇지 않고 본체만 있는 키트를 구매했다면 별도로 구매해야 합니다.

 

USB 변환 케이블

 

  - USB Sound Card를 연결했다면 장비가 접속되었는지 메시지를 확인해봅니다.  새로운 장비로 해서 연결된 사운드카드의 정보를 확인할 수 있습니다.

 

전체 연결한 사진

 

  pi@raspberrypi:~ $ dmesg|tail -8

 

dmesgtail -8

 

  혹은 lsusb로 확인할 수 있습니다.

  pi@raspberrypi:~ $ lsusb

 

lsusb

 

  - 재생 가능한 장비로 인식되었는지 확인해봅니다.

  pi@raspberrypi:~ $ aplay -l

 

  - 그러면 위와 유사하게 USB Audio로 인식된 것을 확인할 수 있습니다. (단, card1 등 인식되는 번호는 다를 수 있습니다.)

 

aplay -l

2. 사운드 재생

  - 기본 제공해주는 wav 파일을 재생하기 위해서 실행하면

  pi@raspberrypi:~ $ aplay -c 1 -t wav /usr/share/sounds/alsa/Side_Right.wav

 

  cannot find card ‘0’으로 나타납니다.  앞에 있던 사운드 카드가 1번으로 실행되었기 때문입니다. 그래서 실행에서 옵션을 하나 더 줍니다.

 

aplay error

 

  - 위에서 aplay -l 에서 본 것처럼 card가 1번이었고, device가 0으로 나와 있었기 때문에 -D 옵션에

plughw:1,0으로 설정해주면

  pi@raspberrypi:~ $ aplay -D plughw:1,0 -c 1 -t wav /usr/share/sounds/alsa/Side_Right.wav

 

 

3. 기본 설정

  - 재생할 때마다 장비 설정해주기 귀찮다면 alsa.conf 파일로 가서 지정해 놓으면 됩니다.

  pi@raspberrypi:~ $ sudo vim /usr/share/alsa/alsa.conf

 

  - 파일내용이 많은데, 대략 62줄에 0으로 되어 있는 것을 1로 바꿔줍니다. 만약 디바이스 번호도 다르다면 변경이 필요합니다. 저장 그리고 재부팅해줍니다. (vim을 사용해도 되고 다른 editor를 사용해도 무방합니다.)

 

defaults.ctl.card 1

defaults.pcm.card 1

 

/usr/share/alsa/alsa.conf

  - 이제 다시 실행하면 사운드가 나옵니다.

  ( USB Sound Card를 제거했다가 다시 꽂으면 영어로 to install... 멘트가 나오는데, 혹시 제거하는 방법 아시는 분 댓글 부탁드립니다. ^^; )

  pi@raspberrypi:~ $ aplay -c 1 -t wav /usr/share/sounds/alsa/Side_Right.wav

 

혹은 화이트 노이즈 사운드를 좌우로 테스트해볼 수 있습니다.

  pi@raspberrypi:~ $ speaker-test -c2

4. mixer로 사운드 볼륨 조절

  - amixer 명령어로 볼륨을 조정할 수 있습니다. 그러기 위해서 장비에 나타나는 장비 이름을 확인해야 합니다. 그리고 볼륨 조절하는 장치가 Speaker임을 확인할 수 있습니다.

  pi@raspberrypi:~ $ amixer -c 1 scontrols

 

  - Speaker 이름으로 볼륨을 20%로 조정해보도록 하겠습니다.

 amixer -c  사운드카드 번호 sset(설정 명령) 컨트롤 장치 조정값

  pi@raspberrypi:~ $ amixer -c 1 sset Speaker 20%

 

볼륨설정

 

  - 매번 amixer로 입력하기 귀찮으므로 GUI와 유사하게 사용할 수 있는 alsamixer를 이용하면 편하게 볼륨 작업을 할 수 있습니다.

  pi@raspberrypi:~ $ alsamixer

alsamixer

5. GUI 상에서 사운드 설정 방법

  - apt-get install xrdp로 원격데스크톱 연결 프로그램을 설치했다는 전제로 진행하겠습니다.

  - 윈도우에서 원격데스크톱 연결해서 라즈베리파이 제로로 접속합니다. 그리고 오른쪽 상단에 스피커를 마우스 오른쪽 버튼으로 클릭하여 Audio Output 메뉴를 선택하고 USB PnP Sound Device를 선택합니다. 그러면 이제 라즈베리파이 제로 GUI 화면에서도 사용 가능합니다.  

 

Audio Outputs 설정

 

  - 테스트할 음성 혹은 영상 파일을 윈도우에서 복사해서 라즈베리파이 제로 OS로 붙여 넣기(Paste) 합니다.

그리고 더블 클릭하면 VLC를 재생되는 것을 확인할 수 있습니다.

 

mp4 재생

 

 

 

감사합니다.

 

 

<참조사이트>

1) 사운드카드 설정 및 간략한 녹음 프로그램 제작

https://m.blog.naver.com/tipsware/220868928930

 

2) sound 옵션들 확인

https://chanchan-father.tistory.com/481

 

3) 라즈베리파이 사운드카드 기본 설정

https://rguiscard.medium.com/raspberry-pi-zero-wh-with-external-usb-sound-card-28e66d7d103e

 

4) 오디오 샘플 자료

https://docs.espressif.com/projects/esp-adf/en/latest/design-guide/audio-samples.html

 

 

 

“쿠팡 파트너스 활동을 통해 일정액의 수수료를 받을 수 있음"

Comments