ALSA 프로그래밍 질문드립니다.

0
points

안녕하세요

ALSA 프로그래밍을 공부하면서 궁금한 점이 있어 문의드리려 합니다.
여기저기 ALSA로 구현한 소스를 보면 아래와 같은 함수를 사용하는데요..

snd_pcm_open()
snd_pcm_hw_params_malloc()
snd_pcm_hw_params_any()
snd_pcm_hw_params_set_access()
snd_pcm_hw_params_set_format()
snd_pcm_hw_params_set_rate_near()
snd_pcm_hw_params_set_channels()
snd_pcm_hw_params()
snd_pcm_hw_parmas_free()
snd_pcm_hw_prepare()
snd_pcm_hw_writei()
snd_pcm_close()

이 함수들은 어디에 있는건가요? 컴파일할때 "undefined reference" 에러를 잡을 수가 없습니다.

커널에는 sound/core/pcm_native.c에 있기는 한데 static으로 선언되어 있습니다. 설마 이걸 참조하는건 아니겠죠?

혹시 몰라 alsa-driver-1.0.14rc4도 깔았는데 그래도 안되더군요.
현재 제가 쓰는 리눅스 커널이 2.6.19이니까 별도의 ALSA 드라이버는 안깔아도 되는거지요?

OSS는 ioctl()을 직접 사용해서 문제가 없이 됐는데, ALSA는 좀처럼 감이 오질 않습니다.

peremen의 이미지
7349
points

제 우분투에는

1
point

제 우분투에는 /usr/include/alsa 밑에 사이좋게 ALSA 관련 함수가 있습니다.
---- 절취선 ----
http://blog.peremen.name

예 제가 쓰는

0
points

예 제가 쓰는 리눅스에도 /usr/include/alsa/pcm.h에 위에서 언급한 함수들이 선언은 되어 있는데요.
선언만 되어있을뿐 실제 코드는 커널에 없거든요. 별도의 라이브러리가 필요한건가요?

bushi의 이미지
6263
points

alsa-lib [bushi@rose ciel]$

0
points

alsa-lib

[bushi@rose ciel]$ pkg-config --cflags --libs alsa
-I/usr/include/alsa  -lasound
[bushi@rose ciel]$

댓글 보기 옵션

원하시는 댓글 전시 방법을 선택한 다음 "설정 저장"을 누르셔서 적용하십시오.