Como gravar chamadas do Skype (áudio) no Debian 6?

4

Eu faço negócios pelo Skype. Às vezes, quando falo com clientes, eles dão várias instruções rapidamente. Seria bom ter uma maneira de gravar conversas para que eu pudesse ouvi-las mais tarde, quando eu precisar delas.

Tenho notado pessoas sugerindo 'recordmydesktop', 'xvidcap' e 'ffmpeg' para gravação. No entanto, eu não quero gravar vídeo. Eu só quero gravar chamadas de voz enquanto estiver usando meus fones de ouvido . Isso significa que eu deveria ser capaz de gravar o som inline , não gravá-lo externamente tirando meus fones de ouvido e colocando meus clientes no viva-voz (eu sei que eles podem ouvir isso, e eles não gostam disso ).

Se há maneiras que você sabe que podem resolver o meu problema em um sistema Debian 6, por favor me avise.

    
por learnerX 29.07.2014 / 17:04

1 resposta

3

Via emulação de ALSA

Eu não tenho uma caixa Debian 6.0.x para testar, mas acho que desta forma provavelmente funcionará. Cortesia de um exemplo no wiki do Arch .

Primeiro, use pacmd list-sources para encontrar o nome do fluxo do monitor da sua placa de som. Grep para .monitor funciona muito bem:

$ pacmd list-sources | grep '\.monitor'
        name: <alsa_output.pci-0000_00_1b.0.analog-stereo.monitor>
        name: <alsa_output.usb-stereo-link_stereo-link_1200_USB_DAC-00-DAC.analog-stereo.monitor>

Eu tenho dois cartões, daí dois monitores. Em seguida, edite seu ~/.asoundrc para configurar um dispositivo ALSA para ele, adicionando linhas como (mas, é claro, use o nome do dispositivo do monitor, não o meu):

pcm.pulse_monitor {
    type pulse
    device alsa_output.usb-stereo-link_stereo-link_1200_USB_DAC-00-DAC.analog-stereo.monitor
}

ctl.pulse_monitor {
    type pulse
    device alsa_output.usb-stereo-link_stereo-link_1200_USB_DAC-00-DAC.analog-stereo.monitor
}

Em seguida, use arecord -f s16_le -t wav -r 44100 -D pulse_monitor /tmp/outfile.wav para gravar.

Utilitários PulseAudio mais antigos

Em vez de usar a emulação de ALSA, você pode usar parecord no monitor que você encontrou acima. Faça assim: parecord -d alsa_output.usb-stereo-link_stereo-link_1200_USB_DAC-00-DAC.analog-stereo.monitor outfile.wav . Isso deve funcionar com parec também (no exemplo LAME abaixo)

Novos Utilitários PulseAudio

O PulseAudio é fornecido com um utilitário de linha de comando parecord que pode gravar o som passando por ele.

Para usá-lo, primeiro encontre o índice do fluxo que você deseja capturar. O caminho fácil a partir da linha de comando é pacmd list-sink-inputs , o que deve dar algo assim:

1 sink input(s) available.
    index: 10720
        driver: <protocol-native.c>
        ⋮
        client: 87 <Chromium>
        ⋮

Eu omiti um monte de linhas; mas você pode ver que é o Chromium (onde eu tenho um music player rodando). O index: 10720 bit é importante.

Para gravar, é tão simples quanto parecord --monitor-stream 10720 outfile.wav . Você também pode gravar a saída no stdout e usá-la como parte de um pipe com parec ; por exemplo, se você está com pouco espaço em disco você poderia codificar diretamente para MP3:

parec --monitor-stream 10720 --format s16le --channels 2 --rate 44100 \
    | lame -r -s 44.1 -b 16 --signed --little-endian --preset medium /dev/stdin outfile.mp3
    
por 29.07.2014 / 18:00