Como gravar saída para alto-falantes?

99

Existe um programa para o Ubuntu que possa gravar sons apenas da saída do alto-falante e não de nenhuma voz de fora do PC?

AmirRazoR
fonte
1
Por que você deseja gravar som de dentro do computador?
jPlatte
1
existe um site de piano virtual e quero tocar piano e gravá-lo enquanto estou ouvindo com meus fones de ouvido e não em voz alta.
AmirRazoR
4
Então você só quer gravar o som de saída de um site? Acho que quase todo mundo aqui pensou que você estava falando sobre os sons dos componentes do seu computador: D
jPlatte
Minha resposta sobre esta questão semelhante pode ser útil: askubuntu.com/questions/167061
2
Veja também Como gravar qualquer som interno dentro e fora usando o Ubuntu e o Audacity . Lá, essa resposta funcionou para mim, diferente de todas as respostas dadas aqui.
Ruslan

Respostas:

125

Se não estou errado, acho que você está falando sobre a gravação de "Stereo Mix" ou saída de loopback.

Para os leigos, a gravação de mixagem estéreo significa gravar o som da saída do alto-falante.

Veja como fazê-lo:

  1. Instale a pavucontrolpartir do Ubuntu Software Center.
  2. Instale a audacitypartir do Ubuntu Software Center.
  3. Selecione pulse*como dispositivo de gravação no Audacity.
  4. Clique no botão Gravar.
  5. Abra o Controle de volume PulseAudio (pesquise Controle de volume PulseAudio no Dash).
  6. Selecione a guia Gravação.
  7. Agora você deve ver o plug-in da ALSA [audácia]. Se você não vir o plug-in ALSA [audacity], verifique se clicou no botão Record no audacity. Você deve executar a gravação com audácia enquanto executa a próxima etapa.
  8. Selecione "Monitorar de *". Veja a captura de tela. Captura de tela do controle de volume PulseAudio
  9. Agora você deve poder gravar o som que ouve do alto-falante ou dos fones de ouvido.

Nota: Testado no Ubuntu 12.10
Referência PulseAudio - Ubuntu Wiki

465544
fonte
3
eu encontrei "pulse", mas não consegui encontrar "pulse: Mix: 0" ou qualquer coisa como mix 0. eu apenas fui às preferências e dispositivos e cliquei na gravação e era apenas o pulso lá, onde posso encontrar o pulso : mix: 0?
AmirRazoR
Atualização do @AmirRazoR para refletir a versão atual do Ubuntu.
465544
1
Cada etapa acontece como você descreve, mas, em última análise, nenhum áudio é gravado no Audacity (Ubuntu 14.04). O que significa o *depois pulse*?
de Drew Noakes
1
Não tentei em 14.04. pulso * aqui significa qualquer coisa que comece com pulso em seu nome.
465544
1
Funciona no Linux Mint.
possumkeys
57

Um software muito pequeno e básico que faz exatamente o que você precisa é chamado (obviamente) de "Gravador de áudio", instalado assim:

sudo add-apt-repository ppa:audio-recorder/ppa
sudo apt-get update && sudo apt-get install audio-recorder

Os arquivos são salvos automaticamente no ~/Audiodiretório.

Gravador de áudio Ubuntu

user78915
fonte
2
Também funciona como um encanto! :)
conualfy 10/10
2
Isso é adorável, obrigado! Muito elegante e, embora a instalação do Audacity funcione, se você precisar apenas gravar áudio (para ogg, wav, mp3 etc.), esta é a solução.
karni
1
Ferramenta muito simples e elegante!
SunLiWei
3
Por que você passaria por toda a "agitação" com o Audacity quando este faz o trabalho que você precisa com um único clique ... me bate.
poelinca
1
@poelinca porque audácia e áudio de pulso são dois softwares muito poderosos e úteis, e se vou instalá-los de qualquer maneira porque os utilizo para outras coisas, por que instalar uma terceira ferramenta que faz algo que meus programas atuais já podem alcançar? Além disso, a audácia é melhor para isso, porque você pode cortar qualquer áudio extra antes e depois da parte desejada da gravação. E btw, é aborrecimento. Hustle significa empurrar ou roubar.
Abraham Murciano Benzadon
31

Linha de comando

  1. Instalar sudo apt-get install pulseaudio-utils lame mpg123
  2. Procure seus alto-falantes e toque no fluxo do monitor do alto-falante pacmd list-sinks | grep -e 'name:' -e 'index' -e 'Speakers'insira a descrição da imagem aqui

  3. Reproduza o que quiser gravar e digite parec -d alsa_output.pci-0000_00_1f.3.analog-stereo.monitor | lame -r -V0 - out.mp3

  4. Pressione ctrl+cpara interromper a gravação e reproduzir o arquivo gravadompg123 out.mp3

GUI minimalista

Uma interface gráfica muito simples para fazer isso, retire todos os arquivos daqui e execute install.sh Goto Dash e procure porRecord Speakers

b-ak
fonte
5
Melhor solução ... <3
Peque
1
Claro que é para reprodução. Também é útil para testar o software de gravação de loopback que o software pode interceptar o que é reproduzido. E parecnão foi possível interceptar aplaya reprodução no meu teste no Ubuntu 14.04.
Ruslan
5
Considere remover o | lame [...]tubo e usar --file-format=wav output.wav(por exemplo). Você pode listar os formatos suportados com parec --list-file-formats. Além disso, considere deixar um pouco mais claro o fato de que você precisa especificar o dispositivo com o .monitorno final. ^^
Peque
1
Bom, pois isso pode fazer a gravação em reprodução estéreo. Parece que a audácia não pode fazer isso.
Peter Thomassen
1
você não precisa necessariamente do nome da fonte ... também pode escolher o índice da fonte:parec -d 0 | lame -r -V0 - out.mp3
e-bri
4

Acabei de criar um pequeno alias para gravar a saída de áudio do PC com um único comando e armazenada no formato opus em vez de mp3.

  1. Instale os pacotes necessários:

    sudo apt-get install pulseaudio-utils opus-tools
    
  2. Edite seu .bashrcarquivo:

    nano ~/.bashrc
    

    Copie a linha abaixo e anexe-a ao final do seu ~.bashrc:

    alias recaudio="parec --monitor-stream="$(pacmd list-sink-inputs | awk '$1 == "index:" {print $2}')" | opusenc --raw - $(xdg-user-dir MUSIC)/recording-$(date +"%F_%H-%M-%S").opus"
    

    Salve o arquivo pressionando Ctrl+ X(para fechar nano), depois Y(para "Sim") e Enter(para confirmar o nome do arquivo).

  3. Agora carregue o novo ~/.bashrc(ou simplesmente abra um novo terminal):

    source $HOME/.bashrc
    

Então tente, apenas digite

recaudio

Ele criará um arquivo na sua pasta pessoal do Music chamada recording-[DATE].opus.

Desfrutar.

user2758162
fonte
1
O que a --monitor-stream=...parte faz / significa? Minhas entradas de pia de lista são zero, a menos que algo esteja realmente tocando som, então ele retornaria um número. Então isso teria que ser iniciado depois que o som já estiver tocando?
Xen2050 28/11