Try the state-file attached to this mail.

You have to set these two switches to these values
(even within the stat-file above, without these changes you will only
record your own voice and not hear the other one):

Capture Right Mux --> "PGA"
Capture Left Mux --> "Line or RXP-RXN"

Matthias

Ed Kapitein schrieb:
> Thanks Matthias,
>
> Seems like a fine solution to me, what switches are set to what value?
> I would like to record both the incomming voice and my own voice.
> Implementing this in a script seems not to difficult too.
>
> Kind regards,
> Ed
>
> On Fri, 2009-07-10 at 15:15 +0200, Matthias Felsche wrote:
>   
>> Actually Dictator does not manipulate any state-file.
>> It provides its own. One for playing files that has been recorded, one for 
>> recording.
>> It loads the recording-state and changes two switches, depending on what 
>> you'd like to record.
>> It backups the previous state and reloads it when it is done.
>>
>> You have to change the state of alsa if you want to record a phonecall. I 
>> think there is no alternative!
>> It's easier to do with a ready state-file than by manipulating every single 
>> switch!
>>
>> At all, if you want something working automatically, you just have to listen 
>> for incoming calls (via dbus?) and when one is coming, you have to start 
>> (e.g.) a script 
>> which loads a state with which you can record a call simultaneously and 
>> start arecord and end when you hang up.
>>
>> Matthias
>>
>> -----Ursprüngliche Nachricht-----
>> Von: "The Digital Pioneer" <[email protected]>
>> Gesendet: 10.07.09 15:03:31
>> An: List for Openmoko community discussion <[email protected]>
>> Betreff: Re: Record call.
>>
>> I would think it would be easy, but given how many people have tried 
>> to do it and ended up with rather unsatisfactory solutions (sorry 
>> Dictator folks, but manipulating the statefiles just doesn't feel 
>> like a clean solution...), I think it is not as easy as it sounds. 
>> But then, what in the Freerunner is?... Apparently, no-one has 
>> figured out how to reliably do bluetooth calls yet either. :(
>>
>> Also beware, if you're in the US, it's illegal to record calls 
>> without warning the other party.
>> _______________________________________________ Openmoko community 
>> mailing list [email protected] http://lists.openmoko.org/
>>
>> mailman/listinfo/community
>>
>>
>> ________________________________________________________________
>> Neu: WEB.DE Doppel-FLAT mit Internet-Flatrate + Telefon-Flatrate
>> für nur 19,99 Euro/mtl.!* http://produkte.web.de/go/02/
>>
>>
>> _______________________________________________
>> Openmoko community mailing list
>> [email protected]
>> http://lists.openmoko.org/mailman/listinfo/community
>>
>>     
>
>
> _______________________________________________
> Openmoko community mailing list
> [email protected]
> http://lists.openmoko.org/mailman/listinfo/community
>
>   
state.neo1973gta02 {
        control.1 {
                comment.access 'read write'
                comment.type INTEGER
                comment.count 2
                comment.range '0 - 255'
                iface MIXER
                name 'PCM Volume'
                value.0 235
                value.1 235
        }
        control.2 {
                comment.access 'read write'
                comment.type INTEGER
                comment.count 2
                comment.range '0 - 255'
                iface MIXER
                name 'ADC Capture Volume'
                value.0 240
                value.1 240
        }
        control.3 {
                comment.access 'read write'
                comment.type INTEGER
                comment.count 2
                comment.range '0 - 127'
                iface MIXER
                name 'Headphone Playback Volume'
                value.0 127
                value.1 127
        }
        control.4 {
                comment.access 'read write'
                comment.type INTEGER
                comment.count 2
                comment.range '0 - 127'
                iface MIXER
                name 'Speaker Playback Volume'
                value.0 127
                value.1 127
        }
        control.5 {
                comment.access 'read write'
                comment.type INTEGER
                comment.count 1
                comment.range '0 - 127'
                iface MIXER
                name 'Mono Playback Volume'
                value 121
        }
        control.6 {
                comment.access 'read write'
                comment.type INTEGER
                comment.count 2
                comment.range '0 - 7'
                iface MIXER
                name 'Bypass Playback Volume'
                value.0 6
                value.1 6
        }
        control.7 {
                comment.access 'read write'
                comment.type INTEGER
                comment.count 2
                comment.range '0 - 7'
                iface MIXER
                name 'Sidetone Playback Volume'
                value.0 4
                value.1 4
        }
        control.8 {
                comment.access 'read write'
                comment.type INTEGER
                comment.count 2
                comment.range '0 - 7'
                iface MIXER
                name 'Voice Playback Volume'
                value.0 2
                value.1 2
        }
        control.9 {
                comment.access 'read write'
                comment.type BOOLEAN
                comment.count 2
                iface MIXER
                name 'Headphone Playback ZC Switch'
                value.0 false
                value.1 false
        }
        control.10 {
                comment.access 'read write'
                comment.type BOOLEAN
                comment.count 2
                iface MIXER
                name 'Speaker Playback ZC Switch'
                value.0 false
                value.1 false
        }
        control.11 {
                comment.access 'read write'
                comment.type INTEGER
                comment.count 1
                comment.range '0 - 7'
                iface MIXER
                name 'Mono Bypass Playback Volume'
                value 2
        }
        control.12 {
                comment.access 'read write'
                comment.type INTEGER
                comment.count 1
                comment.range '0 - 7'
                iface MIXER
                name 'Mono Sidetone Playback Volume'
                value 2
        }
        control.13 {
                comment.access 'read write'
                comment.type INTEGER
                comment.count 1
                comment.range '0 - 7'
                iface MIXER
                name 'Mono Voice Playback Volume'
                value 2
        }
        control.14 {
                comment.access 'read write'
                comment.type BOOLEAN
                comment.count 1
                iface MIXER
                name 'Mono Playback ZC Switch'
                value false
        }
        control.15 {
                comment.access 'read write'
                comment.type ENUMERATED
                comment.count 1
                comment.item.0 'Linear Control'
                comment.item.1 'Adaptive Boost'
                iface MIXER
                name 'Bass Boost'
                value 'Linear Control'
        }
        control.16 {
                comment.access 'read write'
                comment.type ENUMERATED
                comment.count 1
                comment.item.0 '130Hz @ 48kHz'
                comment.item.1 '200Hz @ 48kHz'
                comment.item.2 '100Hz @ 16kHz'
                comment.item.3 '400Hz @ 48kHz'
                comment.item.4 '100Hz @ 8kHz'
                comment.item.5 '200Hz @ 8kHz'
                iface MIXER
                name 'Bass Filter'
                value '130Hz @ 48kHz'
        }
        control.17 {
                comment.access 'read write'
                comment.type INTEGER
                comment.count 1
                comment.range '0 - 15'
                iface MIXER
                name 'Bass Volume'
                value 7
        }
        control.18 {
                comment.access 'read write'
                comment.type INTEGER
                comment.count 1
                comment.range '0 - 15'
                iface MIXER
                name 'Treble Volume'
                value 7
        }
        control.19 {
                comment.access 'read write'
                comment.type ENUMERATED
                comment.count 1
                comment.item.0 '8kHz'
                comment.item.1 '4kHz'
                iface MIXER
                name 'Treble Cut-off'
                value '8kHz'
        }
        control.20 {
                comment.access 'read write'
                comment.type INTEGER
                comment.count 2
                comment.range '0 - 7'
                iface MIXER
                name 'Sidetone Capture Volume'
                value.0 2
                value.1 2
        }
        control.21 {
                comment.access 'read write'
                comment.type INTEGER
                comment.count 1
                comment.range '0 - 7'
                iface MIXER
                name 'Voice Sidetone Capture Volume'
                value 2
        }
        control.22 {
                comment.access 'read write'
                comment.type INTEGER
                comment.count 2
                comment.range '0 - 63'
                iface MIXER
                name 'Capture Volume'
                value.0 60
                value.1 60
        }
        control.23 {
                comment.access 'read write'
                comment.type BOOLEAN
                comment.count 2
                iface MIXER
                name 'Capture ZC Switch'
                value.0 false
                value.1 false
        }
        control.24 {
                comment.access 'read write'
                comment.type BOOLEAN
                comment.count 2
                iface MIXER
                name 'Capture Switch'
                value.0 true
                value.1 true
        }
        control.25 {
                comment.access 'read write'
                comment.type ENUMERATED
                comment.count 1
                comment.item.0 '3.4Hz @ 48kHz'
                comment.item.1 '82Hz @ 16k'
                comment.item.2 '82Hz @ 8kHz'
                comment.item.3 '170Hz @ 8kHz'
                iface MIXER
                name 'Capture Filter Select'
                value '3.4Hz @ 48kHz'
        }
        control.26 {
                comment.access 'read write'
                comment.type ENUMERATED
                comment.count 1
                comment.item.0 HiFi
                comment.item.1 Voice
                iface MIXER
                name 'Capture Filter Cut-off'
                value HiFi
        }
        control.27 {
                comment.access 'read write'
                comment.type BOOLEAN
                comment.count 1
                iface MIXER
                name 'Capture Filter Switch'
                value true
        }
        control.28 {
                comment.access 'read write'
                comment.type INTEGER
                comment.count 1
                comment.range '0 - 7'
                iface MIXER
                name 'ALC Capture Target Volume'
                value 5
        }
        control.29 {
                comment.access 'read write'
                comment.type INTEGER
                comment.count 1
                comment.range '0 - 7'
                iface MIXER
                name 'ALC Capture Max Volume'
                value 7
        }
        control.30 {
                comment.access 'read write'
                comment.type ENUMERATED
                comment.count 1
                comment.item.0 Off
                comment.item.1 Right
                comment.item.2 Left
                comment.item.3 Stereo
                iface MIXER
                name 'ALC Capture Function'
                value Off
        }
        control.31 {
                comment.access 'read write'
                comment.type BOOLEAN
                comment.count 1
                iface MIXER
                name 'ALC Capture ZC Switch'
                value false
        }
        control.32 {
                comment.access 'read write'
                comment.type INTEGER
                comment.count 1
                comment.range '0 - 15'
                iface MIXER
                name 'ALC Capture Hold Time'
                value 15
        }
        control.33 {
                comment.access 'read write'
                comment.type INTEGER
                comment.count 1
                comment.range '0 - 15'
                iface MIXER
                name 'ALC Capture Decay Time'
                value 12
        }
        control.34 {
                comment.access 'read write'
                comment.type INTEGER
                comment.count 1
                comment.range '0 - 15'
                iface MIXER
                name 'ALC Capture Attack Time'
                value 2
        }
        control.35 {
                comment.access 'read write'
                comment.type INTEGER
                comment.count 1
                comment.range '0 - 31'
                iface MIXER
                name 'ALC Capture NG Threshold'
                value 0
        }
        control.36 {
                comment.access 'read write'
                comment.type ENUMERATED
                comment.count 1
                comment.item.0 'Constant PGA Gain'
                comment.item.1 'Mute ADC Output'
                iface MIXER
                name 'ALC Capture NG Type'
                value 'Constant PGA Gain'
        }
        control.37 {
                comment.access 'read write'
                comment.type BOOLEAN
                comment.count 1
                iface MIXER
                name 'ALC Capture NG Switch'
                value false
        }
        control.38 {
                comment.access 'read write'
                comment.type ENUMERATED
                comment.count 1
                comment.item.0 Capture
                comment.item.1 Playback
                iface MIXER
                name '3D Function'
                value Capture
        }
        control.39 {
                comment.access 'read write'
                comment.type ENUMERATED
                comment.count 1
                comment.item.0 '2.2kHz'
                comment.item.1 '1.5kHz'
                iface MIXER
                name '3D Upper Cut-off'
                value '2.2kHz'
        }
        control.40 {
                comment.access 'read write'
                comment.type ENUMERATED
                comment.count 1
                comment.item.0 '200Hz'
                comment.item.1 '500Hz'
                iface MIXER
                name '3D Lower Cut-off'
                value '200Hz'
        }
        control.41 {
                comment.access 'read write'
                comment.type INTEGER
                comment.count 1
                comment.range '0 - 15'
                iface MIXER
                name '3D Volume'
                value 0
        }
        control.42 {
                comment.access 'read write'
                comment.type BOOLEAN
                comment.count 1
                iface MIXER
                name '3D Switch'
                value false
        }
        control.43 {
                comment.access 'read write'
                comment.type BOOLEAN
                comment.count 1
                iface MIXER
                name 'Capture 6dB Attenuate'
                value false
        }
        control.44 {
                comment.access 'read write'
                comment.type BOOLEAN
                comment.count 1
                iface MIXER
                name 'Playback 6dB Attenuate'
                value false
        }
        control.45 {
                comment.access 'read write'
                comment.type ENUMERATED
                comment.count 1
                comment.item.0 None
                comment.item.1 '32kHz'
                comment.item.2 '44.1kHz'
                comment.item.3 '48kHz'
                iface MIXER
                name De-emphasis
                value None
        }
        control.46 {
                comment.access 'read write'
                comment.type ENUMERATED
                comment.count 1
                comment.item.0 Stereo
                comment.item.1 Left
                comment.item.2 Right
                comment.item.3 Mono
                iface MIXER
                name 'Playback Mono Mix'
                value Stereo
        }
        control.47 {
                comment.access 'read write'
                comment.type ENUMERATED
                comment.count 1
                comment.item.0 'Non Inverted'
                comment.item.1 Inverted
                iface MIXER
                name 'Playback Phase'
                value 'Non Inverted'
        }
        control.48 {
                comment.access 'read write'
                comment.type INTEGER
                comment.count 1
                comment.range '0 - 3'
                iface MIXER
                name 'Mic2 Capture Volume'
                value 3
        }
        control.49 {
                comment.access 'read write'
                comment.type INTEGER
                comment.count 1
                comment.range '0 - 3'
                iface MIXER
                name 'Mic1 Capture Volume'
                value 0
        }
        control.50 {
                comment.access 'read write'
                comment.type ENUMERATED
                comment.count 1
                comment.item.0 'DAI 0'
                comment.item.1 'DAI 1'
                comment.item.2 'DAI 2'
                comment.item.3 'DAI 3'
                iface MIXER
                name 'DAI Mode'
                value 'DAI 2'
        }
        control.51 {
                comment.access 'read write'
                comment.type ENUMERATED
                comment.count 1
                comment.item.0 Stereo
                comment.item.1 'Left ADC'
                comment.item.2 'Right ADC'
                comment.item.3 'Channel Swap'
                iface MIXER
                name 'ADC Data Select'
                value Stereo
        }
        control.52 {
                comment.access 'read write'
                comment.type ENUMERATED
                comment.count 1
                comment.item.0 'Non Inverted'
                comment.item.1 Inverted
                iface MIXER
                name 'ROUT2 Phase'
                value Inverted
        }
        control.53 {
                comment.access 'read write'
                comment.type ENUMERATED
                comment.count 1
                comment.item.0 'Mic 1'
                comment.item.1 'Mic 2'
                comment.item.2 'Mic 3'
                iface MIXER
                name 'Mic Selection Mux'
                value 'Mic 1'
        }
        control.54 {
                comment.access 'read write'
                comment.type ENUMERATED
                comment.count 1
                comment.item.0 'RXP - RXN'
                comment.item.1 'RXP + RXN'
                comment.item.2 RXP
                comment.item.3 RXN
                iface MIXER
                name 'Rx Mixer'
                value 'RXP - RXN'
        }
        control.55 {
                comment.access 'read write'
                comment.type ENUMERATED
                comment.count 1
                comment.item.0 'Line 1 + 2'
                comment.item.1 'Line 1 - 2'
                comment.item.2 'Line 1'
                comment.item.3 'Line 2'
                iface MIXER
                name 'Line Mixer'
                value 'Line 1 + 2'
        }
        control.56 {
                comment.access 'read write'
                comment.type ENUMERATED
                comment.count 1
                comment.item.0 'Line Mix'
                comment.item.1 'Rx Mix'
                iface MIXER
                name 'Line Mono Mux'
                value 'Line Mix'
        }
        control.57 {
                comment.access 'read write'
                comment.type ENUMERATED
                comment.count 1
                comment.item.0 'Line 2'
                comment.item.1 'Rx Mix'
                iface MIXER
                name 'Line Right Mux'
                value 'Rx Mix'
        }
        control.58 {
                comment.access 'read write'
                comment.type ENUMERATED
                comment.count 1
                comment.item.0 'Line 1'
                comment.item.1 'Rx Mix'
                iface MIXER
                name 'Line Left Mux'
                value 'Rx Mix'
        }
        control.59 {
                comment.access 'read write'
                comment.type BOOLEAN
                comment.count 1
                iface MIXER
                name 'ALC Mixer Line Capture Switch'
                value false
        }
        control.60 {
                comment.access 'read write'
                comment.type BOOLEAN
                comment.count 1
                iface MIXER
                name 'ALC Mixer Mic2 Capture Switch'
                value false
        }
        control.61 {
                comment.access 'read write'
                comment.type BOOLEAN
                comment.count 1
                iface MIXER
                name 'ALC Mixer Mic1 Capture Switch'
                value false
        }
        control.62 {
                comment.access 'read write'
                comment.type BOOLEAN
                comment.count 1
                iface MIXER
                name 'ALC Mixer Rx Capture Switch'
                value false
        }
        control.63 {
                comment.access 'read write'
                comment.type ENUMERATED
                comment.count 1
                comment.item.0 'Left PGA'
                comment.item.1 'Mic 1'
                comment.item.2 'Mic 2'
                comment.item.3 'Right PGA'
                iface MIXER
                name 'Mic Sidetone Mux'
                value 'Mic 2'
        }
        control.64 {
                comment.access 'read write'
                comment.type ENUMERATED
                comment.count 1
                comment.item.0 PGA
                comment.item.1 'Line or RXP-RXN'
                comment.item.2 Sidetone
                iface MIXER
                name 'Capture Right Mux'
                value 'Line or RXP-RXN'
        }
        control.65 {
                comment.access 'read write'
                comment.type ENUMERATED
                comment.count 1
                comment.item.0 PGA
                comment.item.1 'Line or RXP-RXN'
                comment.item.2 Line
                iface MIXER
                name 'Capture Left Mux'
                value PGA
        }
        control.66 {
                comment.access 'read write'
                comment.type ENUMERATED
                comment.count 1
                comment.item.0 Stereo
                comment.item.1 'Analogue Mix Left'
                comment.item.2 'Analogue Mix Right'
                comment.item.3 'Digital Mono Mix'
                iface MIXER
                name 'Capture Right Mixer'
                value 'Analogue Mix Right'
        }
        control.67 {
                comment.access 'read write'
                comment.type ENUMERATED
                comment.count 1
                comment.item.0 Stereo
                comment.item.1 'Analogue Mix Left'
                comment.item.2 'Analogue Mix Right'
                comment.item.3 'Digital Mono Mix'
                iface MIXER
                name 'Capture Left Mixer'
                value 'Analogue Mix Right'
        }
        control.68 {
                comment.access 'read write'
                comment.type BOOLEAN
                comment.count 1
                iface MIXER
                name 'Playback Mixer Voice Capture Sw'
                value false
        }
        control.69 {
                comment.access 'read write'
                comment.type BOOLEAN
                comment.count 1
                iface MIXER
                name 'Playback Mixer Left Capture Swi'
                value false
        }
        control.70 {
                comment.access 'read write'
                comment.type BOOLEAN
                comment.count 1
                iface MIXER
                name 'Playback Mixer Right Capture Sw'
                value false
        }
        control.71 {
                comment.access 'read write'
                comment.type ENUMERATED
                comment.count 1
                comment.item.0 VREF
                comment.item.1 'Capture ST'
                comment.item.2 LOUT2
                iface MIXER
                name 'Out4 Mux'
                value VREF
        }
        control.72 {
                comment.access 'read write'
                comment.type ENUMERATED
                comment.count 1
                comment.item.0 VREF
                comment.item.1 ROUT2
                comment.item.2 'Left + Right'
                iface MIXER
                name 'Out3 Mux'
                value VREF
        }
        control.73 {
                comment.access 'read write'
                comment.type ENUMERATED
                comment.count 1
                comment.item.0 'Inverted Mono 1'
                comment.item.1 Left
                comment.item.2 Right
                comment.item.3 'Left + Right'
                iface MIXER
                name 'Mono 2 Mux'
                value 'Inverted Mono 1'
        }
        control.74 {
                comment.access 'read write'
                comment.type BOOLEAN
                comment.count 1
                iface MIXER
                name 'Mono Mixer Left Playback Switch'
                value false
        }
        control.75 {
                comment.access 'read write'
                comment.type BOOLEAN
                comment.count 1
                iface MIXER
                name 'Mono Mixer Right Playback Switc'
                value false
        }
        control.76 {
                comment.access 'read write'
                comment.type BOOLEAN
                comment.count 1
                iface MIXER
                name 'Mono Mixer Voice Playback Switc'
                value false
        }
        control.77 {
                comment.access 'read write'
                comment.type BOOLEAN
                comment.count 1
                iface MIXER
                name 'Mono Mixer Sidetone Playback Sw'
                value true
        }
        control.78 {
                comment.access 'read write'
                comment.type BOOLEAN
                comment.count 1
                iface MIXER
                name 'Mono Mixer Bypass Playback Swit'
                value true
        }
        control.79 {
                comment.access 'read write'
                comment.type BOOLEAN
                comment.count 1
                iface MIXER
                name 'Right Mixer Voice Playback Swit'
                value false
        }
        control.80 {
                comment.access 'read write'
                comment.type BOOLEAN
                comment.count 1
                iface MIXER
                name 'Right Mixer Sidetone Playback S'
                value false
        }
        control.81 {
                comment.access 'read write'
                comment.type BOOLEAN
                comment.count 1
                iface MIXER
                name 'Right Mixer Right Playback Swit'
                value false
        }
        control.82 {
                comment.access 'read write'
                comment.type BOOLEAN
                comment.count 1
                iface MIXER
                name 'Right Mixer Bypass Playback Swi'
                value true
        }
        control.83 {
                comment.access 'read write'
                comment.type BOOLEAN
                comment.count 1
                iface MIXER
                name 'Left Mixer Voice Playback Switc'
                value false
        }
        control.84 {
                comment.access 'read write'
                comment.type BOOLEAN
                comment.count 1
                iface MIXER
                name 'Left Mixer Sidetone Playback Sw'
                value false
        }
        control.85 {
                comment.access 'read write'
                comment.type BOOLEAN
                comment.count 1
                iface MIXER
                name 'Left Mixer Left Playback Switch'
                value false
        }
        control.86 {
                comment.access 'read write'
                comment.type BOOLEAN
                comment.count 1
                iface MIXER
                name 'Left Mixer Bypass Playback Swit'
                value false
        }
        control.87 {
                comment.access 'read write'
                comment.type BOOLEAN
                comment.count 1
                iface MIXER
                name 'DAPM Stereo Out Switch'
                value false
        }
        control.88 {
                comment.access 'read write'
                comment.type BOOLEAN
                comment.count 1
                iface MIXER
                name 'DAPM GSM Line Out Switch'
                value true
        }
        control.89 {
                comment.access 'read write'
                comment.type BOOLEAN
                comment.count 1
                iface MIXER
                name 'DAPM GSM Line In Switch'
                value false
        }
        control.90 {
                comment.access 'read write'
                comment.type BOOLEAN
                comment.count 1
                iface MIXER
                name 'DAPM Headset Mic Switch'
                value false
        }
        control.91 {
                comment.access 'read write'
                comment.type BOOLEAN
                comment.count 1
                iface MIXER
                name 'DAPM Handset Mic Switch'
                value true
        }
        control.92 {
                comment.access 'read write'
                comment.type BOOLEAN
                comment.count 1
                iface MIXER
                name 'DAPM Handset Spk Switch'
                value true
        }
        control.93 {
                comment.access 'read write'
                comment.type BOOLEAN
                comment.count 1
                iface MIXER
                name 'Amp State Switch'
                value true
        }
        control.94 {
                comment.access 'read write'
                comment.type BOOLEAN
                comment.count 1
                iface MIXER
                name 'Amp Spk Switch'
                value true
        }
}
_______________________________________________
Openmoko community mailing list
[email protected]
http://lists.openmoko.org/mailman/listinfo/community

Reply via email to