젠투에서 사운드 설정하기.
이 문서는 젠투 오피셜 사이트의 HOWTO ALSA Complete (includes_dmix)에 기초하고 있습니다. 거의 번역 수준이라고 생각하시면 됩니다.
1. 사운드 카드 알아보기
lspci | grep -i audio
결과로 보여지는 사운드카드명을 잘 적어둔다. 필자는 Digital XG 라는 국산 사운트카드 (2000년도에 구입했다) 이고 메인칩은 Yamaha 의 YMF-744B 이다.(솔직히 사운드카드 제품명보다 메인칩이 더 중요하다)
2. 지원여부 및 드라이버명 알아보기
http://www.alsa-project.org/alsa-doc/ 사이트에 가서 메인칩의 제조사를 선택하고 (필자는 Yamaha) 해당 메인칩의 드라이버명을 확인한다. YMF-744B 이므로 표에 의하면 ymfpci 가 드라이버 명이다.
3. 드라이버 설치하기
설치 방법은 두가지가 있다. 한가지는 커널에 직접 설정하는 방법, 또 한가지는 alsa 드라이버 패키지를 이용하는 방법이다. 각 방법은 나름의 장단점이 있는데 첫 번째 방법은 커널에 한번만 설정해 넣으면 그 다음은 딱히 신경 쓸 것이 없다는 것과 안정적이라는 점이다. 단, 드라이버의 버전이 좀 이전 버전일 수 있다. 두 번째 방법은 커널 방법과 반대이다. 드라이버가 최신버전이 설치가 되므로 좀 더 최신의 드라이버를 쓸 수 있지만, 불안정 할 수 있고 패키지를 새로 설치하면 커널을 새로 컴파일 해야 한다.
* Known Issues : 2.6.16 에서는 (바닐라, 전투, ck 모두) 패지키를 이용한
* 사운드 설정이 문제가 있다고 함. 2.6.16 사용자는 커널에 직접 설정하는
* (첫번째 방법)을 사용할 것을 권고하고 있음. 드라이버 패키지를 이용할
* 사람은 2.6.15의 사용을 추천함.
필자는 두번째 방법(드라이버 패키지를 이용) 을 사용할 것이다.
(1) 커널 설정. (커널 2.6.15 기준)
이 방법은 커널에 사운드 지원을 설정은 하지만, 특정 사운드 드라이버를 지정하지는 않는다. 사운드 드라이버는 드라이버 패키지를 설치함으로써 지정이 되고, 이는 alsa 와 alsa 드라이버의 버전업을 용이하게 해준다.
Loadable module support --->
[*] Enable loadable module support
Device Drivers --->
Sound --->
Sound card Support
Advanced Linux Sound Architecture --->
< > Advanced Linux Sound Architecture
Open Sound System --->
< > Open Sound System (DEPRECATED)
위와 같이 설정을 하고 커널을 컴파일, 설치 한 후 재기동 한다.
(2) alsa-driver 설치
/etc/make.conf 파일에 다음의 내용을 추가한다.
ALSA_CARDS="ymfpci"
물론 "" 안에 들어갈 내용은 앞서 alsa 홈페이지에서 찾은 자신의 사운드카드 칩에 맞는 드라이버 명이다.
echo 'media-sound/alsa-driver oss' >> /etc/portage/package.use
의 명령으로 alsa-drvier 가 oss USE 플래그를 사용한다고 명시하거나 make.conf 의 USE 플래그 값에 추가해준다. 다 되었으면 alsa 및 드라이버 패키지를 설치한다. (위의 플래그는 /dev/dspX 와 OSS 에뮬레이션이 생성되도록 해준다)
emerge alsa-lib alsa-driver alsa-oss alsa-utils
etc-update
(3) 각종 설정
/etc/modules.d/alsa 파일을 수정한다. 필자의 것은 다음과 같다.
alias char-major-116 snd
alias char-major-14 soundcore
alias sound-service-0-0 snd-mixer-oss
alias sound-service-0-1 snd-seq-oss
alias sound-service-0-3 snd-pcm-oss
alias sound-service-0-8 snd-seq-oss
alias sound-service-0-12 snd-pcm-oss
alias snd-card-0 snd-ymfpci
alias sound-slot-0 snd-slot-0
alias /dev/dsp snd-pcm-oss
options snd cards_limit=1
대부분의 경우 alias snd-card-0 snd-ymfpci 부분에서 ymfpci 만 자신의 사운드 카드 칩에 맞는 것으로 바꿔주면 될 것이다.
/etc/modules.autoload.d/kernel-2.6 파일에 다음의 행을 추가해 준다.
snd-ymfpci
다음의 명령들을 실행시켜 준다.
modules-update -f
rc-update add alsasound default
/etc/init.d/alsasound start
처음 설치되면 사운드카드는 mute 상태이다.(이걸 몰라서 한참 헤맨적도 있었다. 소리가 안나온다고.. 가이드가 엉터리라고.. 바보.. -_-) 풀어주자.
alsamixer -c 0
그래픽 형태의 컨트롤 창이 나오는데 M 키를 누르면 mute 와 unmute 를 변경할 수 있다. 커서 좌우는 항목 선택, 상하는 볼륨 조절이다. 적당히 설정해 주지.상태를 변경했으면 저장도 잊지 말아야 한다.
/etc/init.d/alsasound save
or
alsactl store
* 일반 사용자도 사운드 기능을 사용할 수 있게 하기 위해서는 audio 그룹에 추가시켜 줘야 한다.
gpasswd -a [username] audio
(4) 기본적인 테스트
emerge media-sound/alsaplayer
아무 mp3 나 준비한 다음
alsaplayer -o alsa -d plug:dmix some.mp3 &
해보자. 잘나온다면 일단 OK, 그렇지 않다면 mixer 설정을 다시해본다. 만약 plug:dmix 관련 에러가 난다면 plug:dmixer 를 시도해본다.
이 문서는 젠투 오피셜 사이트의 HOWTO ALSA Complete (includes_dmix)에 기초하고 있습니다. 거의 번역 수준이라고 생각하시면 됩니다.
1. 사운드 카드 알아보기
lspci | grep -i audio
결과로 보여지는 사운드카드명을 잘 적어둔다. 필자는 Digital XG 라는 국산 사운트카드 (2000년도에 구입했다) 이고 메인칩은 Yamaha 의 YMF-744B 이다.(솔직히 사운드카드 제품명보다 메인칩이 더 중요하다)
2. 지원여부 및 드라이버명 알아보기
http://www.alsa-project.org/alsa-doc/ 사이트에 가서 메인칩의 제조사를 선택하고 (필자는 Yamaha) 해당 메인칩의 드라이버명을 확인한다. YMF-744B 이므로 표에 의하면 ymfpci 가 드라이버 명이다.
3. 드라이버 설치하기
설치 방법은 두가지가 있다. 한가지는 커널에 직접 설정하는 방법, 또 한가지는 alsa 드라이버 패키지를 이용하는 방법이다. 각 방법은 나름의 장단점이 있는데 첫 번째 방법은 커널에 한번만 설정해 넣으면 그 다음은 딱히 신경 쓸 것이 없다는 것과 안정적이라는 점이다. 단, 드라이버의 버전이 좀 이전 버전일 수 있다. 두 번째 방법은 커널 방법과 반대이다. 드라이버가 최신버전이 설치가 되므로 좀 더 최신의 드라이버를 쓸 수 있지만, 불안정 할 수 있고 패키지를 새로 설치하면 커널을 새로 컴파일 해야 한다.
* Known Issues : 2.6.16 에서는 (바닐라, 전투, ck 모두) 패지키를 이용한
* 사운드 설정이 문제가 있다고 함. 2.6.16 사용자는 커널에 직접 설정하는
* (첫번째 방법)을 사용할 것을 권고하고 있음. 드라이버 패키지를 이용할
* 사람은 2.6.15의 사용을 추천함.
필자는 두번째 방법(드라이버 패키지를 이용) 을 사용할 것이다.
(1) 커널 설정. (커널 2.6.15 기준)
이 방법은 커널에 사운드 지원을 설정은 하지만, 특정 사운드 드라이버를 지정하지는 않는다. 사운드 드라이버는 드라이버 패키지를 설치함으로써 지정이 되고, 이는 alsa 와 alsa 드라이버의 버전업을 용이하게 해준다.
Loadable module support --->
[*] Enable loadable module support
Device Drivers --->
Sound --->
Advanced Linux Sound Architecture --->
< > Advanced Linux Sound Architecture
Open Sound System --->
< > Open Sound System (DEPRECATED)
위와 같이 설정을 하고 커널을 컴파일, 설치 한 후 재기동 한다.
(2) alsa-driver 설치
/etc/make.conf 파일에 다음의 내용을 추가한다.
ALSA_CARDS="ymfpci"
물론 "" 안에 들어갈 내용은 앞서 alsa 홈페이지에서 찾은 자신의 사운드카드 칩에 맞는 드라이버 명이다.
echo 'media-sound/alsa-driver oss' >> /etc/portage/package.use
의 명령으로 alsa-drvier 가 oss USE 플래그를 사용한다고 명시하거나 make.conf 의 USE 플래그 값에 추가해준다. 다 되었으면 alsa 및 드라이버 패키지를 설치한다. (위의 플래그는 /dev/dspX 와 OSS 에뮬레이션이 생성되도록 해준다)
emerge alsa-lib alsa-driver alsa-oss alsa-utils
etc-update
(3) 각종 설정
/etc/modules.d/alsa 파일을 수정한다. 필자의 것은 다음과 같다.
alias char-major-116 snd
alias char-major-14 soundcore
alias sound-service-0-0 snd-mixer-oss
alias sound-service-0-1 snd-seq-oss
alias sound-service-0-3 snd-pcm-oss
alias sound-service-0-8 snd-seq-oss
alias sound-service-0-12 snd-pcm-oss
alias snd-card-0 snd-ymfpci
alias sound-slot-0 snd-slot-0
alias /dev/dsp snd-pcm-oss
options snd cards_limit=1
대부분의 경우 alias snd-card-0 snd-ymfpci 부분에서 ymfpci 만 자신의 사운드 카드 칩에 맞는 것으로 바꿔주면 될 것이다.
/etc/modules.autoload.d/kernel-2.6 파일에 다음의 행을 추가해 준다.
snd-ymfpci
다음의 명령들을 실행시켜 준다.
modules-update -f
rc-update add alsasound default
/etc/init.d/alsasound start
처음 설치되면 사운드카드는 mute 상태이다.(이걸 몰라서 한참 헤맨적도 있었다. 소리가 안나온다고.. 가이드가 엉터리라고.. 바보.. -_-) 풀어주자.
alsamixer -c 0
그래픽 형태의 컨트롤 창이 나오는데 M 키를 누르면 mute 와 unmute 를 변경할 수 있다. 커서 좌우는 항목 선택, 상하는 볼륨 조절이다. 적당히 설정해 주지.상태를 변경했으면 저장도 잊지 말아야 한다.
/etc/init.d/alsasound save
or
alsactl store
* 일반 사용자도 사운드 기능을 사용할 수 있게 하기 위해서는 audio 그룹에 추가시켜 줘야 한다.
gpasswd -a [username] audio
(4) 기본적인 테스트
emerge media-sound/alsaplayer
아무 mp3 나 준비한 다음
alsaplayer -o alsa -d plug:dmix some.mp3 &
해보자. 잘나온다면 일단 OK, 그렇지 않다면 mixer 설정을 다시해본다. 만약 plug:dmix 관련 에러가 난다면 plug:dmixer 를 시도해본다.



덧글