linux dev controlC0,关于Linux的alsa音频问题解决
到今日,在android平臺(tái)上調(diào)試聲音的方面終于有了進(jìn)展,原來(lái)是需要改一個(gè)配置文件,目前只是解決了問(wèn)題,具體原因以后再分析。硬件平臺(tái)是6410+WM9714,軟件平臺(tái)是ANDROID。現(xiàn)在由于android系統(tǒng)啟動(dòng)時(shí),加載音頻服務(wù)不成功,處于一個(gè)死循環(huán)中,老停在登陸界面。此時(shí)打印的Logcat信息如下:
.........
AudioFlinger not published, waiting...
Waiting for sevice media.audio_flinger...
.........。
一開始我以為是WM9714的內(nèi)核音頻驅(qū)動(dòng)有問(wèn)題,所以先驗(yàn)證音頻驅(qū)動(dòng)是否OK。
(1)用cat xxx.wav > /dev/snd/audio時(shí)耳機(jī)全是播出滋滋的噪聲,沒(méi)有一點(diǎn)音樂(lè)聲;
(2)用aplay xxx.wav時(shí)沒(méi)有聲音,會(huì)提示Unable to install hw params。由此分析是alsa配置存在問(wèn)題,但具體是什么參數(shù)不得而知;
(3)在實(shí)驗(yàn)方法(1)播放出噪聲時(shí),直接用語(yǔ)句讀出WM9714的全部寄存器值。讀出的ID號(hào)正確,說(shuō)明AC97與codec的通訊無(wú)誤;后來(lái)將全部的寄存器值發(fā)給wofson原廠工程師燒到他們自己的平臺(tái)上,播放音頻文件正常。進(jìn)一步證明寄存器設(shè)置是無(wú)誤的,AC-LINK通訊無(wú)誤,驅(qū)動(dòng)無(wú)誤。
由此原因集中在配置上。后來(lái)同事分析和試了一把,改動(dòng)/vendor/sec/smdk6410/init.smdk6410.rc中的
setprop ro.radio.noril? yes改成setprop ro.radio.noril?? no。雖然我們做的是MID產(chǎn)品,沒(méi)有RIL電話功能硬件,但還是要將這部分服務(wù)加載上去。(但最后試驗(yàn)過(guò),no值也OK)
另一個(gè)需要補(bǔ)充的地方在于:同目錄下的init.rc中的:
service media /system/bin/mediaserver
user media
group system audio camera graphics inet net_bt net_bt_admin
要打開,不能屏蔽。
*******************************************************************************
另2010-02-04補(bǔ)充:在網(wǎng)上看到了類似的錯(cuò)誤記錄,出現(xiàn)最上述的Logcat服務(wù)信息時(shí),敘述如下:有三種可能原因:一是上面所講的init.rc中的一定要啟動(dòng)mediaserve服務(wù)。二是確保ALSA驅(qū)動(dòng)已經(jīng)加載到系統(tǒng)中。三是在init.rc中要添加alsa相關(guān)信息:
symlink /dev/snd/pcmC0D0c /dev/pcmC0D0c
symlink /dev/snd/pcmC0D0p /dev/pcmC0D0p
symlink /dev/snd/controlC0 /dev/controlC0
symlink /dev/snd/timer /dev/timer
chmod 0777 /dev/pcmC0D0c
chmod 0777 /dev/pcmC0D0p
chmod 0777 /dev/controlC0
chmod 0777 /dev/timer
chown root audio /dev/snd/controlC0
chown root audio /dev/snd/pcmC0D0c
chown root audio /dev/snd/pcmC0D0p
chown root audio /dev/snd/timer
setprop alsa.mixer.playback.master Front
setprop alsa.mixer.capture.master Capture
setprop alsa.mixer.playback.earpiece Master
setprop alsa.mixer.capture.earpiece Capture
setprop alsa.mixer.playback.headset Master
setprop alsa.mixer.playback.speaker Master
總結(jié)
以上是生活随笔為你收集整理的linux dev controlC0,关于Linux的alsa音频问题解决的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 老鼠娶亲年画是谁画的啊?
- 下一篇: linux web高级编程,寒假学习 第