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

지인에게 사용중인 안드로이드 기기에서 SPDIF 출력을 시키고 싶다는 부탁을 받았습니다.

Rockchip PX3? 라는 녀석이 사용된 중국제 기기이며, DAC로는 WM8731이 사용 되었고, 오디오 프로세서로는 ROHM의 BD37033FV-M이 사용 되고, 멀티플렉싱에 74HC4052를 사용 하고 최종적으로 출력단에 이르게 되는 구조 입니다.(앰프 칩도 이 뒤에 장착이 되어 있습니다)

첫 질문은, WM8731을 제거하고 PX3에서 나오는 SPDIF 출력을 사용하려고 하는데, 문제가 없을까요? WM8731의 드라이버 모듈이 자동적으로 적재 되지 않을테고, 페이더나 밸런스 등을 컨트롤하는 BD37033FV-M쪽엔(여기 까지 오면 이미 인풋 = 아날로그) 그저 입력이 없다고 인식을 할 뿐이지 않을까 하는 생각이 드는데 이런식으로 코덱 칩을 적출 하여도 문제가 없을런지요? 어플리케이션 크래시가 일어난다거나, 심각할 경우 시스템 크래시로 이어질 가능성도 있지 않을까 하는 의문 입니다.(개인적 생각엔 BD37033FV-M를 관리하는 어플리케이션 이외엔 문제가 없지 않을까 추정중입니다.)

그리고 다음 질문으로, 안드로이드의 경우 리눅스의 Pulse Audio 등의 레이어를 한번 거쳐서 디지털 출력을 처리 하는지가 알고 싶습니다. 오디오 플레이어를 켜놓고 다른 어플리케이션을 사용 가능하다는 것은 Pulse Audio 와 동일한 역할을 하는 소프트웨어 레이어가 존재한다는 의미 이겠지요? 이러한 레이어가 없다면 아마 패스스루로 신호를 뱉을 것이고, 리시버 하는 기기에서 볼륨 조절을 하기 전엔 절대로 볼륨 조절이 불가능 할 것 같은 생각이 드네요.

마지막 질문은, USB 타입의 SPDIF 출력을 가진 DAC 장치를 꼽아서 출력 시키는 방식 등은 사용 하는 것이 불가능 할지요? 커널 빌드시 이러한 옵션들을 넣어서 빌드를 한지 안한지도 알 수 없는 상황이기에 함부로 확신 할 수가 없는데, 왠지 좀 흔한 디바이스의 경우 대응 하지 않을까 하는 생각이 드네요.  적어도 WM8731의 경우 USB 모드로의 동작도 지원하는 코덱 칩이기에 USB 로 장착 해서 빼내는 방법도 있지 않은가 라는 생각도 드네요.

읽어 주셔서 감사합니다.
A1.jpg


A2.jpg




이동희

2016.11.03 00:13:03
*.90.129.146

Rockchip PX3는 application processor로 보이고 DAC WM8731과는 I2S로 정보를 교환 할 것으로 보입니다. SPDIF 출력을 위해선 WM8731 chip에서 Digital 출력을 해야 될 것으로 예상되며, 그렇게 하기 위해서는 WM8731의 SPDIF 출력이 나와 있어야 하고 관련 Device Driver에서 해당 Digital 출력 path를 설정해 주는 기능 또한 되어 있어야 할 것 같습니다.


첫 번째 질문은 질문 자체부터 문제가 있습니다. 즉, PX3에서는 아마도 SPDIF 출력이 불가능 할 것으로 보입니다.


마지막 질문인 USB 타입의 SPDIF 출력을 가진 DAC 장치를 연결하여 출력은 가능할 것으로 보이며, 그렇게 하기 위해서는 Rockchip의 PX3가 Host를 지원해야 하는데 제가 사용해 본 chip이 아니어서 정확한 것은 Rockchip Datasheet를 보고 확인을 해야 하며, USB 오디오를 추가 해야 됩니다.


사진으로 보면 개발 제품이 아닌 완제품으로 보이며 카오디오 제품으로 보이는데 어려울 것으로 보입니다.


겟페우스

2016.11.03 01:19:01
*.153.68.246

http://rockchip.fr/RK3188%20datasheet%20V1.0.pdf

제가 본 데이터시티는 이쪽이며, 이곳에 의하면 SPDIF TX 가 AP에서 나오는 것 같이 느꼈습니다.

WM8731의 4번 핀이디지털 오디오 데이터 IN 인데 이곳으로 SPDIF TX가 연결 되고 있다고 생각 했습니다.

데이터시트의 RECOMMENDED EXTERNAL COMPONENTS(28-PIN SSOP)에 의하면 이곳에 연결 되는 데이터는 오디오 시리얼 데이터로 DACDAT 라고 되어 있는 것으로 보아 디지털 오디오 스트림 데이터 라고 생각 했습니다.

만일 이곳으로 들어가는 신호가 I2S 통신이라면 I2S 통신을 수신해서 SPDIF 로 변경 할 수 있는 외부 장치를 이용 해야 하지 않을까 생각 되네요.


그리고 PX3는 HOST로서의 동작은 지원 하는 칩으로 알고 있습니다. 당장 3G 모뎀 등의 장치를 OTG로 붙이도록 설계된 시스템에 사용 되고 있는 칩이기도 하니까요. 하지만 말씀하신데로 USB AUDIO가 동작 한다는 보장이 없어서 저도 궁금했습니다. 빌드를 하고 싶어도 이런 중국 업체들이 일일히 소스나 구성 파일을 공개할리가 없으니까요.

이동희

2016.11.03 02:23:12
*.90.129.146

데이터시트 상으로는 RK3188 chip의 audio interface가 I2S와 SPDIF를 모두 지원을 하는 것으로 나와 있네요. 보통은 DAC Chip과는 I2S가 더 많이 사용되는 것으로 알고 있습니다. 회로도를 확인해야 할 것으로 보이네요.

겟페우스

2016.11.03 04:42:08
*.153.68.246

친절한 답변 감사합니다. 어떤 모드로 동작하나 확인부터 해보겠습니다.


http://www.ti.com/lit/ds/symlink/dit4192.pdf

i2s일 경우 이 칩이 i2S(PCM)을 SPDIF 로 변환 가능한 것 같네요.


I2S 인지 SPDIF인지만 파악 하고, SW적인 방법으로 SPDIF 로 출력 모드 전환을 할 수 없다면 위의 기판을 하나 자작해서 붙여 넣으면 SPDIF를 출력 시킬 수 있지 않을까 하는 생각이 드네요. 이러한 방법으로 출력 시킬 수 있을까요?


추가 : 울프슨 WM8731의 데이터시티를 읽어보니 SPDIF가 들어갈 가능성이 매우 낮은것 같네요. I2S를 사용하고 있을 가능성이 높아 보이네요.


추가2 : 확인 결과 wm8731 의 BCLK / LRCLK / MCLK 등에 클락이 발생 하고 있고, 이는 I2S 통신 하고 있다는 증거로 봐도 좋을듯 하네요. WM8805가 저 3신호와 I2S DATA를 SPDIF로 변경 해 줄수 있는듯 하니 이를 사용해 보도록 하겠습니다. 감사합니다.

List of Articles
번호 제목 글쓴이 날짜 조회 수
6288 MIPI DSI 문제 문의 드립니다. file [3] 모리 2016-11-09 333
6287 UBIFS filesystem 관련 질문 [2] SpecialCase 2016-11-04 747
6286 압력센서 신호처리 관련하여 문의드립니다. [3] kernel_study 2016-11-03 148
» DAC 칩을 임의로 제거 하여도 문제가 없을까요? file [4] 겟페우스 2016-11-02 315
6284 wm1811 드라이버를 찾아요 [9] 김민욱 2016-11-01 18724
6283 Wifi와 셀률러 동시 사용 설정 관련 [1] 겟페우스 2016-10-26 330
6282 [apt pkg server 관련] [2] 밥줘잉 2016-10-20 150
6281 램디스크 늘린 용량을 적용하려면요 file [1] DavidKim 2016-10-18 254
6280 Build한 안드로이드의 화면 출력이 이상합니다. file [7] 겟페우스 2016-10-15 275
6279 안드로이드 소스를 빌드 하였는데, img 파일이 생성되지 않습니다. [4] 겟페우스 2016-10-15 233
6278 임베디드 보드 커널에 UDP 통신 설정이 따로 있는가요? [2] pedor11 2016-10-13 240
6277 브릿지보드 Rx에 라우터 기능추가OK! but 브릿지Tx보드 접속문제? [2] 2016-10-12 246
6276 cat sys/kernel/debug/gpio, gpio 초기화 질문입니다. [2] k40007 2016-10-01 230
6275 on cell 형 multi touch panel 사용법? [1] 문종섭 2016-09-29 204
6274 udev rules 파일에서 ifconfig 와 ifup 차이 [1] 제드 2016-09-23 336
6273 embedded Linux에서 Android adb같은 USB 화일전송 방법이 있을... [3] 박종석 2016-08-30 692
6272 Linux booting message관련해서... [3] 박종석 2016-08-30 228
6271 MPU-9250 9축 센서 테스트 방법 질문입니다. [4] 으악 2016-08-27 336
6270 yaffs2 filesystem 마운트 후 Kernel panic 관련 질문입니다. [6] SpecialCase 2016-08-22 327
6269 opencv,usb 웹캠을 이용한 windows, Ubuntu, Embedded 호환성검토 [2] pedor11 2016-07-09 878

사용자 로그인