[Nook Color Android Development] fattire:
misc additional info

This is awesome... will look at it closer tomorrow. Way to go.

root@android:/ # alsa_aplay --list-devices
[hide]**** List of PLAYBACK Hardware Devices ****
card 0: EDP [OMAP3 EDP], device 0: AIC31xx Audio tlv320aic31xx-dai-0 []
Subdevices: 1/1
Subdevice #0: subdevice #0
root@android:/ # alsa_aplay --list-pcms
null
Discard all samples (playback) or generate zero samples (capture)
default:CARD=EDP
OMAP3 EDP,
Default Audio Device[/hide]

Output of alsa_amixer:

1|root@android:/ # alsa_amixer
[hide]Simple mixer control 'Mic Bias Voltage',0
Capabilities: enum
Items: 'off' '2 V' '2.5 V' 'AVDD'
Item0: 'off'
Simple mixer control 'Beep Cos(x) LSB',0
Capabilities: volume volume-joined penum
Playback channels: Mono
Capture channels: Mono
Limits: 0 - 255
Mono: 227 [89%]
Simple mixer control 'Beep Cos(x) MSB',0
Capabilities: volume volume-joined penum
Playback channels: Mono
Capture channels: Mono
Limits: 0 - 255
Mono: 126 [49%]
Simple mixer control 'Beep Length LSB',0
Capabilities: volume volume-joined penum
Playback channels: Mono
Capture channels: Mono
Limits: 0 - 255
Mono: 238 [93%]
Simple mixer control 'Beep Length MID',0
Capabilities: volume volume-joined penum
Playback channels: Mono
Capture channels: Mono
Limits: 0 - 255
Mono: 0 [0%]
Simple mixer control 'Beep Length MSB',0
Capabilities: volume volume-joined penum
Playback channels: Mono
Capture channels: Mono
Limits: 0 - 255
Mono: 0 [0%]
Simple mixer control 'Beep Sin(x) LSB',0
Capabilities: volume volume-joined penum
Playback channels: Mono
Capture channels: Mono
Limits: 0 - 255
Mono: 216 [85%]
Simple mixer control 'Beep Sin(x) MSB',0
Capabilities: volume volume-joined penum
Playback channels: Mono
Capture channels: Mono
Limits: 0 - 255
Mono: 16 [6%]
Simple mixer control 'Beep Volume Control(0 = -61 db, 63 = 2 dB)',0
Capabilities: volume penum
Playback channels: Front Left - Front Right
Capture channels: Front Left - Front Right
Limits: 0 - 63
Front Left: 63 [100%]
Front Right: 63 [100%]
Simple mixer control 'Beep generator Enable / Disable',0
Capabilities: enum
Items: 'Disabled' 'Enabled'
Item0: 'Disabled'
Simple mixer control 'ADC COARSE GAIN',0
Capabilities: volume penum
Playback channels: Front Left - Front Right
Capture channels: Front Left - Front Right
Limits: 0 - 144
Front Left: 104 [72%]
Front Right: 104 [72%]
Simple mixer control 'ADC FINE GAIN',0
Capabilities: volume volume-joined penum
Playback channels: Mono
Capture channels: Mono
Limits: 0 - 4
Mono: 4 [100%]
Simple mixer control 'ADC MIC_PGA GAIN',0
Capabilities: volume volume-joined penum
Playback channels: Mono
Capture channels: Mono
Limits: 0 - 119
Mono: 0 [0%]
Simple mixer control 'ADC Mute',0
Capabilities: enum
Items: 'Unmute' 'Mute'
Item0: 'Mute'
Simple mixer control 'ADC Processing Block Selection(0 <->25)',0
Capabilities: volume volume-joined penum
Playback channels: Mono
Capture channels: Mono
Limits: 0 - 18
Mono: 4 [22%]
Simple mixer control 'AGC Attack Time control',0
Capabilities: volume volume-joined penum
Playback channels: Mono
Capture channels: Mono
Limits: 0 - 31
Mono: 0 [0%]
Simple mixer control 'AGC Decay Time control',0
Capabilities: volume volume-joined penum
Playback channels: Mono
Capture channels: Mono
Limits: 0 - 31
Mono: 0 [0%]
Simple mixer control 'AGC Maximum PGA Control',0
Capabilities: volume volume-joined penum
Playback channels: Mono
Capture channels: Mono
Limits: 0 - 119
Mono: 127 [107%]
Simple mixer control 'AGC Noice bounce control',0
Capabilities: volume volume-joined penum
Playback channels: Mono
Capture channels: Mono
Limits: 0 - 31
Mono: 0 [0%]
Simple mixer control 'AGC Signal bounce control',0
Capabilities: volume volume-joined penum
Playback channels: Mono
Capture channels: Mono
Limits: 0 - 15
Mono: 0 [0%]
Simple mixer control 'AGC Target Level Control',0
Capabilities: volume volume-joined penum
Playback channels: Mono
Capture channels: Mono
Limits: 0 - 7
Mono: 7 [100%]
Simple mixer control 'AGC_ATC_TIME_MULTIPLIER',0
Capabilities: volume volume-joined penum
Playback channels: Mono
Capture channels: Mono
Limits: 0 - 8
Mono: 0 [0%]
Simple mixer control 'AGC_DECAY_TIME_MULTIPLIER',0
Capabilities: volume volume-joined penum
Playback channels: Mono
Capture channels: Mono
Limits: 0 - 8
Mono: 0 [0%]
Simple mixer control 'AGC_HYSTERISIS',0
Capabilities: volume volume-joined penum
Playback channels: Mono
Capture channels: Mono
Limits: 0 - 3
Mono: 0 [0%]
Simple mixer control 'AGC_NOISE_THRESHOLD',0
Capabilities: volume volume-joined penum
Playback channels: Mono
Capture channels: Mono
Limits: 0 - 32
Mono: 32 [100%]
Simple mixer control 'Audio Gain Control(AGC)',0
Capabilities: pswitch pswitch-joined penum
Playback channels: Mono
Mono: Playback [off]
Simple mixer control 'CM selection for ADC IP M - terminal',0
Capabilities: enum
Items: 'off' '10 k' '20 k' '40 k'
Item0: 'off'
Simple mixer control 'Class - D driver',0
Capabilities: volume volume-joined penum
Playback channels: Mono
Capture channels: Mono
Limits: 0 - 4
Mono: 0 [0%] [6.00dB]
Simple mixer control 'DAC',0
Capabilities: pvolume penum
Playback channels: Front Left - Front Right
Limits: Playback 0 - 175
Mono:
Front Left: Playback 127 [73%] [0.00dB]
Front Right: Playback 127 [73%] [0.00dB]
Simple mixer control 'DAC Processing Block Selection(0 <->25)',0
Capabilities: volume volume-joined penum
Playback channels: Mono
Capture channels: Mono
Limits: 0 - 25
Mono: 1 [4%]
Simple mixer control 'DAC Volume soft stepping',0
Capabilities: enum
Items: '1 step / sample' '1 step / 2 sample' 'disabled'
Item0: '1 step / sample'
Simple mixer control 'DAC volume Control register/pin',0
Capabilities: enum
Items: 'control register' 'pin'
Item0: 'control register'
Simple mixer control 'DAC volume Extra control',0
Capabilities: enum
Items: 'L & R Ind Vol' 'LVol = RVol' 'RVol = LVol'
Item0: 'L & R Ind Vol'
Simple mixer control 'DRC Enable / Disable',0
Capabilities: enum
Items: 'Disabled' 'Enabled'
Item0: 'Disabled'
Item1: 'Disabled'
Simple mixer control 'DRC Hysteresis value(0 = 0 db, 3 = 3 db)',0
Capabilities: volume volume-joined penum
Playback channels: Mono
Capture channels: Mono
Limits: 0 - 3
Mono: 2 [67%]
Simple mixer control 'DRC Threshold value(0 = -3 db, 7 = -24 db)',0
Capabilities: volume volume-joined penum
Playback channels: Mono
Capture channels: Mono
Limits: 0 - 7
Mono: 6 [86%]
Simple mixer control 'DRC attack rate',0
Capabilities: volume volume-joined penum
Playback channels: Mono
Capture channels: Mono
Limits: 0 - 15
Mono: 11 [73%]
Simple mixer control 'DRC decay rate',0
Capabilities: volume volume-joined penum
Playback channels: Mono
Capture channels: Mono
Limits: 0 - 15
Mono: 6 [40%]
Simple mixer control 'DRC hold time',0
Capabilities: volume volume-joined penum
Playback channels: Mono
Capture channels: Mono
Limits: 0 - 15
Mono: 0 [0%]
Simple mixer control 'HP Analog Gain',0
Capabilities: volume penum
Playback channels: Front Left - Front Right
Capture channels: Front Left - Front Right
Limits: 0 - 127
Front Left: 0 [0%]
Front Right: 0 [0%]
Simple mixer control 'HP Output common - mode voltage control',0
Capabilities: enum
Items: '1.35 V' '5 V ' '1.65 V' '1.8 V'
Item0: '1.35 V'
Simple mixer control 'HP driver',0
Capabilities: volume penum
Playback channels: Front Left - Front Right
Capture channels: Front Left - Front Right
Limits: 0 - 9
Front Left: 0 [0%] [0.00dB]
Front Right: 0 [0%] [0.00dB]
Simple mixer control 'HP driver mute',0
Capabilities: volume penum
Playback channels: Front Left - Front Right
Capture channels: Front Left - Front Right
Limits: 0 - 2
Front Left: 0 [0%]
Front Right: 0 [0%]
Simple mixer control 'HPL_PWR_CTL',0
Capabilities: enum
Items: 'Mute' 'Unmute'
Item0: 'Mute'
Simple mixer control 'HPR_PWR_CTL',0
Capabilities: enum
Items: 'Mute' 'Unmute'
Item0: 'Mute'
Simple mixer control 'HP_BUTTON_DEBOUNCE_TIME',0
Capabilities: volume volume-joined penum
Playback channels: Mono
Capture channels: Mono
Limits: 0 - 3
Mono: 3 [100%]
Simple mixer control 'HP_DETECT_DEBOUNCE_TIME',0
Capabilities: volume volume-joined penum
Playback channels: Mono
Capture channels: Mono
Limits: 0 - 5
Mono: 1 [20%]
Simple mixer control 'Headset detection Enable / Disable',0
Capabilities: enum
Items: 'Disabled' 'Enabled'
Item0: 'Enabled'
Simple mixer control 'LDAC_PWR_CTL',0
Capabilities: enum
Items: 'Mute' 'Unmute'
Item0: 'Mute'
Simple mixer control 'Left DAC Mute',0
Capabilities: enum
Items: 'Unmute' 'Mute'
Item0: 'Mute'
Simple mixer control 'Left DAC input selection',0
Capabilities: enum
Items: 'off' 'left data' 'right data' '(left + right) / 2'
Item0: 'left data'
Simple mixer control 'Left Output Mixer From DAC_L',0
Capabilities: pswitch pswitch-joined penum
Playback channels: Mono
Mono: Playback [off]
Simple mixer control 'Left Output Mixer From MIC1LP',0
Capabilities: pswitch pswitch-joined penum
Playback channels: Mono
Mono: Playback [off]
Simple mixer control 'Left Output Mixer From MIC1RP',0
Capabilities: pswitch pswitch-joined penum
Playback channels: Mono
Mono: Playback [off]
Simple mixer control 'LoopBack_Control',0
Capabilities: volume volume-joined penum
Playback channels: Mono
Capture channels: Mono
Limits: 0 - 4
Mono: 0 [0%]
Simple mixer control 'MIC PGA Setting',0
Capabilities: enum
Items: 'Gain controlled by D0 - D6' '0 db Gain'
Item0: '0 db Gain'
Simple mixer control 'MIC1LM CM Setting',0
Capabilities: enum
Items: 'floating' 'connected to CM internally'
Item0: 'floating'
Simple mixer control 'MIC1LM selection for ADC I/P M - terminal',0
Capabilities: enum
Items: 'off' '10 k' '20 k' '40 k'
Item0: 'off'
Simple mixer control 'MIC1LM selection for ADC I/P P - terminal',0
Capabilities: enum
Items: 'off' '10 k' '20 k' '40 k'
Item0: 'off'
Simple mixer control 'MIC1LP CM Setting',0
Capabilities: enum
Items: 'floating' 'connected to CM internally'
Item0: 'floating'
Simple mixer control 'MIC1LP selection for ADC I/P P - terminal',0
Capabilities: enum
Items: 'off' '10 k' '20 k' '40 k'
Item0: 'off'
Simple mixer control 'MIC1RP CM Setting',0
Capabilities: enum
Items: 'floating' 'connected to CM internally'
Item0: 'floating'
Simple mixer control 'MIC1RP selection for ADC I/P P - terminal',0
Capabilities: enum
Items: 'off' '10 k' '20 k' '40 k'
Item0: 'off'
Simple mixer control 'MIC_PGA_EN_CTL',0
Capabilities: volume volume-joined penum
Playback channels: Mono
Capture channels: Mono
Limits: 0 - 2
Mono: 1 [50%]
Simple mixer control 'M_Input_Mixer CM_PGA_CNTL',0
Capabilities: volume volume-joined penum
Playback channels: Mono
Capture channels: Mono
Limits: 0 - 3
Mono: 0 [0%]
Simple mixer control 'M_Input_Mixer MIC1LM_PGA_CNTL',0
Capabilities: volume volume-joined penum
Playback channels: Mono
Capture channels: Mono
Limits: 0 - 3
Mono: 0 [0%]
Simple mixer control 'P_Input_Mixer MIC1LM_PGA_CNTL',0
Capabilities: volume volume-joined penum
Playback channels: Mono
Capture channels: Mono
Limits: 0 - 3
Mono: 0 [0%]
Simple mixer control 'P_Input_Mixer MIC1LP_PGA_CNTL',0
Capabilities: volume volume-joined penum
Playback channels: Mono
Capture channels: Mono
Limits: 0 - 3
Mono: 0 [0%]
Simple mixer control 'P_Input_Mixer MIC1RP_PGA_CNTL',0
Capabilities: volume volume-joined penum
Playback channels: Mono
Capture channels: Mono
Limits: 0 - 3
Mono: 0 [0%]
Simple mixer control 'Program Registers',0
Capabilities: volume volume-joined penum
Playback channels: Mono
Capture channels: Mono
Limits: 0 - 65535
Mono: 0 [0%]
Simple mixer control 'RDAC_PWR_CTL',0
Capabilities: enum
Items: 'Mute' 'Unmute'
Item0: 'Mute'
Simple mixer control 'Right DAC Mute',0
Capabilities: enum
Items: 'Unmute' 'Mute'
Item0: 'Mute'
Simple mixer control 'Right DAC input selection',0
Capabilities: enum
Items: 'off' 'right data' 'left data' '(left+right)/2'
Item0: 'right data'
Simple mixer control 'Right Output Mixer From DAC_R',0
Capabilities: pswitch pswitch-joined penum
Playback channels: Mono
Mono: Playback [off]
Simple mixer control 'Right Output Mixer From MIC1RP',0
Capabilities: pswitch pswitch-joined penum
Playback channels: Mono
Mono: Playback [off]
Simple mixer control 'SP Analog Gain(0 = 0 dB, 127 = -78.3 dB)',0
Capabilities: volume volume-joined penum
Playback channels: Mono
Capture channels: Mono
Limits: 0 - 127
Mono: 0 [0%]
Simple mixer control 'SP driver mute',0
Capabilities: volume volume-joined penum
Playback channels: Mono
Capture channels: Mono
Limits: 0 - 2
Mono: 0 [0%]
Simple mixer control 'Throughput of 7 - bit vol ADC for pin',0
Capabilities: volume volume-joined penum
Playback channels: Mono
Capture channels: Mono
Limits: 0 - 7
Mono: 0 [0%][/hide]

# alsa_amixer scontrols [hide]
Simple mixer control 'Mic Bias Voltage',0
Simple mixer control 'Beep Cos(x) LSB',0
Simple mixer control 'Beep Cos(x) MSB',0
Simple mixer control 'Beep Length LSB',0
Simple mixer control 'Beep Length MID',0
Simple mixer control 'Beep Length MSB',0
Simple mixer control 'Beep Sin(x) LSB',0
Simple mixer control 'Beep Sin(x) MSB',0
Simple mixer control 'Beep Volume Control(0 = -61 db, 63 = 2 dB)',0
Simple mixer control 'Beep generator Enable / Disable',0
Simple mixer control 'ADC COARSE GAIN',0
Simple mixer control 'ADC FINE GAIN',0
Simple mixer control 'ADC MIC_PGA GAIN',0
Simple mixer control 'ADC Mute',0
Simple mixer control 'ADC Processing Block Selection(0 <->25)',0
Simple mixer control 'AGC Attack Time control',0
Simple mixer control 'AGC Decay Time control',0
Simple mixer control 'AGC Maximum PGA Control',0
Simple mixer control 'AGC Noice bounce control',0
Simple mixer control 'AGC Signal bounce control',0
Simple mixer control 'AGC Target Level Control',0
Simple mixer control 'AGC_ATC_TIME_MULTIPLIER',0
Simple mixer control 'AGC_DECAY_TIME_MULTIPLIER',0
Simple mixer control 'AGC_HYSTERISIS',0
Simple mixer control 'AGC_NOISE_THRESHOLD',0
Simple mixer control 'Audio Gain Control(AGC)',0
Simple mixer control 'CM selection for ADC IP M - terminal',0
Simple mixer control 'Class - D driver',0
Simple mixer control 'DAC',0
Simple mixer control 'DAC Processing Block Selection(0 <->25)',0
Simple mixer control 'DAC Volume soft stepping',0
Simple mixer control 'DAC volume Control register/pin',0
Simple mixer control 'DAC volume Extra control',0
Simple mixer control 'DRC Enable / Disable',0
Simple mixer control 'DRC Hysteresis value(0 = 0 db, 3 = 3 db)',0
Simple mixer control 'DRC Threshold value(0 = -3 db, 7 = -24 db)',0
Simple mixer control 'DRC attack rate',0
Simple mixer control 'DRC decay rate',0
Simple mixer control 'DRC hold time',0
Simple mixer control 'HP Analog Gain',0
Simple mixer control 'HP Output common - mode voltage control',0
Simple mixer control 'HP driver',0
Simple mixer control 'HP driver mute',0
Simple mixer control 'HPL_PWR_CTL',0
Simple mixer control 'HPR_PWR_CTL',0
Simple mixer control 'HP_BUTTON_DEBOUNCE_TIME',0
Simple mixer control 'HP_DETECT_DEBOUNCE_TIME',0
Simple mixer control 'Headset detection Enable / Disable',0
Simple mixer control 'LDAC_PWR_CTL',0
Simple mixer control 'Left DAC Mute',0
Simple mixer control 'Left DAC input selection',0
Simple mixer control 'Left Output Mixer From DAC_L',0
Simple mixer control 'Left Output Mixer From MIC1LP',0
Simple mixer control 'Left Output Mixer From MIC1RP',0
Simple mixer control 'LoopBack_Control',0
Simple mixer control 'MIC PGA Setting',0
Simple mixer control 'MIC1LM CM Setting',0
Simple mixer control 'MIC1LM selection for ADC I/P M - terminal',0
Simple mixer control 'MIC1LM selection for ADC I/P P - terminal',0
Simple mixer control 'MIC1LP CM Setting',0
Simple mixer control 'MIC1LP selection for ADC I/P P - terminal',0
Simple mixer control 'MIC1RP CM Setting',0
Simple mixer control 'MIC1RP selection for ADC I/P P - terminal',0
Simple mixer control 'MIC_PGA_EN_CTL',0
Simple mixer control 'M_Input_Mixer CM_PGA_CNTL',0
Simple mixer control 'M_Input_Mixer MIC1LM_PGA_CNTL',0
Simple mixer control 'P_Input_Mixer MIC1LM_PGA_CNTL',0
Simple mixer control 'P_Input_Mixer MIC1LP_PGA_CNTL',0
Simple mixer control 'P_Input_Mixer MIC1RP_PGA_CNTL',0
Simple mixer control 'Program Registers',0
Simple mixer control 'RDAC_PWR_CTL',0
Simple mixer control 'Right DAC Mute',0
Simple mixer control 'Right DAC input selection',0
Simple mixer control 'Right Output Mixer From DAC_R',0[CODE]

Simple mixer control 'Right Output Mixer From MIC1RP',0

Simple mixer control 'SP Analog Gain(0 = 0 dB, 127 = -78.3 dB)',0

Simple mixer control 'SP driver mute',0

Simple mixer control 'Throughput of 7 - bit vol ADC for pin',0

[/hide][/code]

# alsa_ucm listcards
[hide]
ALSA lib external/alsa-lib/src/ucm/parser.c:1142:(uc_mgr_scan_master_configs) error: could not scan directory /system/usr/share/alsa/ucm: No such file or directory
alsa_ucm: unable to obtain card list: No such file or directory
1|root@android:/ # [/hide]

trying to play a sound...

1|root@android:/ # alsa_aplay /sdcard/sound.wav
[hide]Playing WAVE '/sdcard/sound.wav' : Signed 16 bit Little Endian, Rate 44100 Hz, Mono
aplay: set_params:1124: Unable to install hw params:
ACCESS: RW_INTERLEAVED
FORMAT: S16_LE
SUBFORMAT: STD
SAMPLE_BITS: 16
FRAME_BITS: 16
CHANNELS: 1
RATE: 44100
PERIOD_TIME: (124988 124989)
PERIOD_SIZE: 5512
PERIOD_BYTES: 11024
PERIODS: 4
BUFFER_TIME: (499954 499955)
BUFFER_SIZE: 22048
BUFFER_BYTES: 44096
TICK_TIME: 0[/hide]

(don't hear anything)

# alsa_aplay -D plughw:1,0 -vvv /sdcard/sound.wav
[hide]ALSA lib external/alsa-lib/src/pcm/pcm_hw.c:1400:(_snd_pcm_hw_open) Invalid value for card
aplay: main:661: audio open error: No such file or directory[/hide]
1|root@android:/ # alsa_aplay -l
[hide]**** List of PLAYBACK Hardware Devices ****
card 0: EDP [OMAP3 EDP], device 0: AIC31xx Audio tlv320aic31xx-dai-0 []
Subdevices: 1/1
Subdevice #0: subdevice #0
root@android:/ # aplay -L
/system/bin/sh: aplay: not found[/hide]
127|root@android:/ # alsa_aplay -L
[hide]null
Discard all samples (playback) or generate zero samples (capture)
default:CARD=EDP
OMAP3 EDP,
Default Audio Device[/hide]

Note that you can adjust the volume with

alsa_amixer sset 'HP Analog Gain' 100

for example.

I think this is pretty close (fingers crossed) but it's 4:30 am so it'll have to wait till tomorrow...