Barrier: [solicitação de recurso] Compartilhar dispositivo de áudio

Criado em 5 abr. 2019  ·  4Comentários  ·  Fonte: debauchee/barrier

Ouvi dizer que é possível compartilhar áudio e microfone. Eu quero usar meu microfone e meus fones de ouvido

Gostaria de usar meu microfone e meus fones de ouvido (como mouse e teclado) em um computador e quando troco o outro funciona no outro.

Me desculpe se isso é estúpido, não quero perder seu tempo :)

Comentários muito úteis

Pelo menos para linux, isso já existe (pelo menos, para saídas que eu saiba) através de um módulo pulseaudio.

Eu sinto que isso seria mais adequado, pois é seu próprio aplicativo.

Todos 4 comentários

Pelo menos para linux, isso já existe (pelo menos, para saídas que eu saiba) através de um módulo pulseaudio.

Eu sinto que isso seria mais adequado, pois é seu próprio aplicativo.

Alguns links para aqueles que se perguntam como isso pode ser feito, especialmente entre windows e linux (note, eu _ainda_ não tentei nenhum destes):

primeiro, algumas questões relevantes de troca de pilha: superusuário 1 superusuário 2 sound.stackexchange

... e algumas soluções (não testadas por mim, conforme mencionado acima):

  • win7 aparentemente tem um recurso Play To que pode transmitir para coisas que suportam DLNA
  • O pulseaudio aparentemente pode ser construído para windows, ou pelo menos poderia na era XP. Não está claro para mim se isso funciona com algo mais recente.
  • edcast / altacast + icecast (embora edcast / altacast pareça estar desatualizado - capturas de tela do winxp, na melhor das hipóteses)

Eu sinto que isso seria mais adequado, pois é seu próprio aplicativo.

@AdrianKoshka com certeza, embora a barreira possa tornar isso menos doloroso documentando o que é necessário e / ou ajudando o usuário a configurá-lo. :)

Após reflexão, ainda sinto que isso está incrivelmente fora do alcance da barreira e apenas adicionaria uma complexidade desnecessária.

Só queria adicionar um método que funcionasse para mim com barreira usando ffmpeg . Isso compartilhará apenas o áudio da área de trabalho (não a entrada do microfone).

Neste exemplo, o cliente é Ubuntu e o servidor é Windows. O ffmpeg precisará ser instalado em ambos. Outros cenários precisarão de um comando e compreensão diferentes do ffmpeg.

No "cliente", execute o comando ffmpeg:

ffmpeg -re -f alsa -ac 2 -i default -f rtp rtp://server:1234

Onde server é o endereço IP do seu servidor de barreira. Isso irá transmitir o áudio da área de trabalho para o endereço especificado

(Se você usar pulse em vez de alsa, substitua -f alsa por -f pulse )

O resultado será algo como:

SDP:
v=0
o=- 0 0 IN IP4 127.0.0.1
s=No Name
c=IN IP4 192.168.1.82
t=0 0
a=tool:libavformat 58.21.100
m=audio 1234 RTP/AVP 97
b=AS:768
a=rtpmap:97 PCMU/48000/2

No meu exemplo, o servidor é 192.168.1.82

Na máquina do servidor ( 192.168.1.82 ), copie o texto SDP acima em um arquivo sdp_file e execute o comando ffplay:

./ffplay -protocol_whitelist 'rtp,file,udp' .\sdp_file

Desfrute de streaming de áudio de baixa latência.

Eu poderia ver essa barreira potencialmente funcionando dentro do futuro, então aqui está um pouco de inspiração e direção, caso alguém tenha tempo para um garfo.

Esta página foi útil?
0 / 5 - 0 avaliações