기존 이솝 임베디드 포럼의 지식인 서비스가 게시판 형태로 변경되었습니다.

안녕하세요.

Android Volume 관련 문의 입니다.

 

Andorid 환경설정(Setting)에 보면 Volume 조절이 있습니다.

여기서 조절하면 App(Music)을 실행 혹은 실행 중에 Volume을 조절을 하면 SPK의 음량이 조절이 됩니다.

그렇다는 것은 Codec의 Volume 관련 Register를 Set하게 될 텐데, Codec의 Interface(I2C)로 CLK/SDA에 Signal이

발생되지 않습니다.

Android에서 조절 되는 Volume이 Codec의 Volume의 Register와 연관이 없나요?

 

 


데카

2011.11.15 18:27:52
*.69.27.14

제가 알기로는 S/W 볼륨으로 제어되고 있는 걸로 압니다.

부팅 중에 로그를 보시면 프로요의 경우에는 Codec의 볼륨을 최대 볼륨으로 셋팅을 한 뒤에

S/W 볼륨으로 최대값을 1, 최소값 0 으로 셋팅이 되는 걸로 압니다.

수고하세요.

오재선

2011.11.15 19:45:39
*.111.135.254

audiopolicymanegerbase.cpp 의 computeVolume에서 값을 셋팅하고 audioFlinger.cpp 에서 setStreamVolume으로 사용됩니다.

즉,안드로이드 볼륨은 H/W와 무관하게 input volume에만 관여 합니다. 출력 볼륨(스피커등)은 UI로 제공되지 않고 개발자 메뉴등에 숨김으로 되어 있음으로 어플 개발자는 손댈수가 없는게 대부분입니다. API를 공개하지 않음..

신현호

2011.11.16 18:41:37
*.66.95.30

안드로이드는 여러 sound stream을 동시에 처리하기 위해 볼륨 조정은 S/W로 하게 되어 있습니다.

 

codec 볼륨은 조정하지 않죠.(물론 audioflinger쪽을 수정하여 codec 볼륨을 조정하게 할수는 있습니다)

 

Android default상태에서는 볼륨 조정은 codec의 volume과 연관이 없습니다.

고도리

2011.11.16 19:58:33
*.127.19.87

윗분들 말씀처림 기본은 H/W volume은 단 한번만 세팅합니다.

 

물론, 그 후에 다른 방법을 이용해서 바꿀 수는 있지만, 원본 그대로 놔두는 것이 더 나을 듯 합니다.

새희망

2011.11.21 19:07:27
*.21.189.193

답변 주신 분들께 감사 드립니다.

한 가지 더 궁금한게 있습니다.

 

"Music App 실행 > Volume 조절 "을 하여 Speaker 출력에 조절이 되는데,

어떻게 음량이 조절이 될 수 있는가 하는 것입니다!

 

고도리님께서, 말씀하신 것처럼 Debug MSG로 확인해 보면 Codec에 Seting 되는 것은 한번으로 끝나는 것으로 보입니다.

실제 음량이 조절이 되는 것은 Codec의 Volume Register를 제어 하지 않는 것인가요? 하는 의문점이 생깁니다.

 

그렇다면, Audio Data에 음량이 조절할 수 있는 Packet을 App에서 제공을 해 주는 것인가요?

CPU-----I2S-----Codec의 구조에서 Codec의 특정 Register를 제어 할수 있는 데이터가 I2S로도 가능 한 것인가?

 

그런데, 저희 구조에서는 I2S를 사용하지 않고 단지 I2C 제어용 인터페이스만 사용됩니다. 

이는 Volume의 조절을 위해 쓰이는 것이구요.

I2S를 제거 하고 볼륨을 조절하게 되면 SPK음량이 조절이 되지 않습니다.

List of Articles
번호 제목 글쓴이 날짜 조회 수sort
5428 home intenet 용 MB 구함 [1] Hongtae Park 2007-10-25 1549
5427 7인치 LCD (800x480)에서 안드로이드 일본어 IME [1] minong 2010-05-26 1549
5426 로비/인터폰 구현시 적절한 레퍼런스류 및 구조 조언 부탁합니다 [2] 마은빈 2011-07-05 1549
» Android Volume Control 문의 [5] 새희망 2011-11-15 1549
5424 native 서비스 layer에서 자바 layer로 noti? [5] wizard14 2013-05-30 1549
5423 sleep mode진입후 wakeup시 간혹 app가 안살아나는경우가 있는데요 [2] 문철민 2014-07-15 1549
5422 6450 비디오 성능이 궁금합니다. [5] 김장균 2011-11-30 1548
5421 크로스컴파일러 arm-xxx-gcc 서로 어떤 차이가 있는가요? [1] pedor11 2014-05-14 1548
5420 V310 uboot build error [2] 훌러덩 2011-08-05 1547
5419 회사의 다른컴에서 aesop-embedded.org 접속이 안됩니다. [5] 조준동 2007-11-28 1546
5418 전자부품 불용자재 및 잉여자재 고가에 매입합니다. 반도체센터 2012-07-10 1546
5417 dm900b vs LAN9220 차이에 대해서 [2] gudrl 2013-05-02 1546
5416 터치 캘리브레이션 화면 안나오게하기 [1] 하하호호하하 2014-03-19 1546
5415 ioctl 콜 관련 질문입니다. [2] 문철민 2007-11-03 1545
5414 Aesop 툴체인은 어디서 받아야 하나요 ? [1] 이성윤 2010-05-04 1542
5413 s3c6410 tvp5150 관련질문 [3] 한태창 2011-02-14 1542
5412 안드로이드 파일 시스템 특정 폴더 빌드 않되게 하는 명령 [1] 김민욱 2012-08-26 1542
5411 애플리케이션에서 GPIO 컨트롤하기 에 대해 문의드립니다. [6] 미누유희 2013-02-05 1542
5410 리눅스 커널 2.6.27.에 안드로이드 2.1 올리기 [2] 그린맨 2010-03-29 1541
5409 이더넷포트와 스위칭허브IC간의 MII연결 질문 [1] Happycpu 2011-08-09 1541

사용자 로그인