2013-12-12 37 views
0

以下是我在对音频文件进行一些更改时所经历的代码。你能告诉一下这段代码到底做了什么,以及下面代码中的“RX”是什么。任何线索将是巨大的适用于Android的音频编解码器

SectionDevice 
Name "OutputLime" 
Comment "Rx Lime jack output" 

EnableSequence 
    'SLIM_0_RX Channels':0:Two 
    'RX3 MIX1 INP1':0:RX1 
    'RX5 MIX1 INP1':0:RX2 
    'RX4 DSM MUX':0:CIC_OUT 
    'RX6 DSM MUX':0:CIC_OUT 
      'LINEOUT1 Volume':1:66 
      'LINEOUT2 Volume':1:66 
      'LINEOUT3 Volume':1:66 
      'LINEOUT4 Volume':1:66 
EndSequence 

DisableSequence 
    'RX3 MIX1 INP1':0:ZERO 
    'RX5 MIX1 INP1':0:ZERO 
    'RX4 DSM MUX':0:DSM_INV 
    'RX6 DSM MUX':0:DSM_INV 
      'LINEOUT1 Volume':1:0 
      'LINEOUT2 Volume':1:0 
      'LINEOUT3 Volume':1:0 
      'LINEOUT4 Volume':1:0 
EndSequence 

回答

0

什么是“RX”在下面的代码指定

输出设备或路径通常会标示RX;并且相反,输入设备/路径标记为TX。您可以记住,通过将RX设备看作是将来自系统(例如扬声器)的音频数据和设备作为将某个音频数据发送到系统(例如麦克风)的东西的东西。

这个代码是什么定义一个名为“OutputLime”的音频输出设备(是,“OutputLi ñ E”顺便说一句?的错误)时,该设备被启用,以及应采取的ALSA Usecase Manager行动或禁用。

启用/禁用序列中的每一行指定一个ALSA控件(在ALSA卡上对应于您的编解码器,通常是卡0)以及写入控件的值。

SLIM_0_RX是指连接DSP和编解码器的SLIMBus上的通道。通常,您会在UCM文件中的动词中看到相应的'SLIMBUS_0_RX Audio Mixer MultiMedia1':1:1,指的是应通过编解码器进行播放的播放,该编解码器基本上表示写入MultiMedia1pcmC0D0p)的任何内容都应转至SLIM_0_RX

因此,代码将其设置为立体声输出设备。看起来很像实际的扬声器设备。
我不记得所有其他控件代表什么。有些是显而易见的,并且其他人用于指定物理立体声设备上的哪个通道应该获得左侧输出以及哪个通道应该获得正确的输出并不是一种疯狂的猜测。
也许你可以在编解码器数据表中查看它,如果你有。否则,您可以检查驱动程序源代码for your codec is available并查看线索(或者可能是in the msm-pcm-routing code,假设这是Qualcomm平台)。