O VLC pode usar o Chromecast, mas o Chromecast não oferece suporte a Bluetooth e gostaria de enviar áudio para alto-falantes Bluetooth. Como eu poderia fazer isso? Tentei desenhar isso:
Wifi +----------+
+---------->+Chromecast|
|Video +----------+
|
++----+
| VLC |
++----+
|
|
|Bluetooth +--------+
+---------->+Speakers|
Audio +--------+
Eu penseihttps://superuser.com/a/1029986/41259seria útil, mas não parece ser possível definir um renderizador separado para o segundo arquivo. Posso extrair o arquivo de áudio facilmente se isso ajudar. ( ffmpeg -i foo.mkv -vn -acodec copy out.eac3
)
Estou no Windows 10, estou familiarizado com a linha de comando e tenho o WSL instalado e funcionando, caso algum servidor que exija Linux seja a solução.
Responder1
Rápido e sujo (ideia)
Você afirma isso
- Cliente 1:com
vlc
(ou outro) você consegue enviar o sinal para sua televisão via Chromecast - Cliente 2:com
vlc
você é capaz de usar os alto-falantes Bluetooth
o problema é que dificilmente estarão sincronizados.
Então a solução mais rápida é usar (como feito para ter emsincronizar diferentes legendas/idiomas)
- Servidor1:outra instância de
vlc
como localflâmula.
Você pode primeiro conectar dois clientes (eventualmente outras duas instânciasvlc
) a este servidor (ao seu IP e PORTA de streaming) e depois começar a reproduzir ou pausar o streaming.
Esta é a soluçãoseguido do OP, depois de resolver alguns problemas peculiares ao seu sistema operacional, software, hardware...
Caminho por menosrecurso que requersolução (ideias)
Apenas as ideias tentam ser úteis para um público mais amplo e abrangem diferentes conjuntos de hardware.
Qualquer programa streamer terá muitas opções. Vlc
tem duas listas de opções.
Você pode perguntar ao enorme com -H
( -h
não é suficiente, o tamanho é importante quando diferencia maiúsculas de minúsculas :-)
).
Existem muitas opções interessantes neste caso, entre elas para o servidor--no-sout-display(padrão habilitado),--sout-displaypadrão desativado,--sout-vídeo... --no-sout-video para vídeo, --sout-audio--no-sout-áudio(habilitado por padrão)...
É uma boa práticaespecificar sempre as opções importantes, para evitar eventuais interferências indesejadas das opções salvas por uma execução anterior do programa. Você entende como isso pode ser"vicioso": uma vez acontece, uma vez não...>>> Aliás vlc
foi (e ainda é) usado para lembrar as últimas preferências modificadas na última execução da GUI e salvas na saída. <<<
Se você especificar uma opção, você forçará a execução com essa opção.
Aqui estão alguns caminhos para tentar economizar recursos:
Novamente, supondo que você tenha conseguido usar os alto-falantes com vlc, talvez você consigaSalve oCliente 2instânciadesabilitando no streamer (Servidor1) o redirecionamento de áudio para o stream e o uso dos alto-falantes a partir daí (comece a tentar com--no-sout-áudio).
Eu não tinha entendido completamente a parte que leva o sinal para sua TV, mas tenho a impressão de que você pode tentarSalve oCliente 1instânciatambém. Depende do hardware.
- Em algumas TVs box, como aquelas com Kodi, é possível adicionar umaplicativopara conectar diretamente a caixa a um streaming, bastando saber o IP (e porta) do stream. Você os conhece porque você dá delinha de comando/GUI. Alguns dessesaplicativosão capazes de verificar a rede local ou um intervalo de IPs locais (veja abaixo). Mesmo automaticamente.
- Sua TV pode serdlnacompatível de várias maneiras (para que você possa configurar o streamer vlc para ser compatível com os recursos específicos da TV).
- Dispositivos de hardware Chromecast, suponho que você precise apenas do streamer (Servidor1) em um IP/porta e codex corretos.
- Chromecast via Chrome (bem, o streamer (Servidor1) e o Chrome atuando comoCliente 1e streamer para a TV, provavelmente desnecessário).
Nota sobre o IP (IPv4) reservado para multicast:
O endereço IPreservado pela IANApara multitransmissãolocalmenteestão nesta faixa
239.0.0.0-239.255.255.255 Escopo local da organização [David_Meyer][RFC2365] 1997-01-01
Responder2
Esta não é minha ideia, mas de Hasturresponder. No entanto, caí em algumas armadilhas, por isso pensei em partilhar os meus problemas e as soluções que consegui encontrar. Outros podem ter ideias melhores, mas isso funciona.
O VLC parece salvar as configurações no vlc-qt-interface.ini
formato AppData\Roaming\vlc
. Se você mudar o renderizador, ele mudará ambas as instâncias. Assim, você precisa de dois usuários do Windows, adicionei um chromecast
usuário.
"C:\Program Files\VideoLAN\VLC\vlc.exe" movie.mkv --sout-all --sout="#rtp{dst=239.255.100.100,port=5004,mux=ts}"
. O endereço IP énãoseu wifi ou algo assim, é um endereço multicast. Ele precisa estar no intervalo 224.0.0.0 a 239.255.255.255 ou você não conseguirá conectar mais do que um cliente a ele. Parece que você é livre para escolher o endereço que desejar."C:\Program Files\VideoLAN\VLC\vlc.exe" rtp://239.255.100.100:5004 --no-video
. Isso reproduzirá o áudio localmente.runas /user:chromecast "C:\Program Files\VideoLAN\VLC\vlc.exe rtp://239.255.100.100:5004 --sout "#chromecast" --sout-chromecast-ip=192.168.1.152 --demux-filter=demux_chromecast"
. Acredito que tudo isso seja necessário, mesmo se você tiver apenas um Chromecast. Não tenho ideia de como obter o IP do Chromecast ou do Chrome - encontrei-o no meu roteador. A adição--no-audio
não tem efeito, pois parece que todo o áudio e vídeo é entregue no atacado ao Chromecast. Silencie sua TV.
Para criar um .bat
resultado disso,esta respostatem a solução: prefixe cada comando com start /b
.
Um problema conhecido é que, após uma pausa, o VLC do Chromecasting sempre avisa “este vídeo requer conversão”. Esta é uma grande desvantagem.
Responder3
O problema é transmitir o vídeo para a TV através do Chromecast, mas reproduzir o áudio separadamente nos alto-falantes Bluetooth.
Solução 1: dois aplicativos sincronizados
É possível reproduzir o mesmo vídeo usando dois aplicativos, um para vídeo e outro para áudio, mas isso é bastante estranho. Embora os dois possam ser facilmente sincronizados no início, eles ficarão fora de sincronia toda vez que você pausar ambos, já que você só pode clicar em um de cada vez.
O VLC é útil aqui, pois permite pular para uma posição no vídeo, o que será essencial durante a sincronização dos dois aplicativos.
Esta configuração é bastante simples. Para detalhes você pode ver o artigo
Reproduza vídeo pelo Chromecast e direcione o áudio pelo seu PC ou Mac.
Solução 2: use um divisor HDMI
Você poderia usar um extrator de áudio HDMI, que normalmente custa apenas algumas dezenas de dólares. O dispositivo atua como um divisor, dividindo o HDMI em vídeo e áudio separados para alimentar dois conjuntos diferentes de equipamentos.
A configuração é a seguinte:
- O Chromecast está conectado à porta de entrada HDMI do extrator de áudio
- A mídia é transmitida via wireless do PC para o Chromecast
- O extrator de áudio envia o áudio por meio de cabos estilo RCA para os alto-falantes ou qualquer outro método de conexão que tenha em comum com os alto-falantes
- O extrator de áudio se conecta à TV por meio de sua porta de saída HDMI ou qualquer outro método que tenha em comum com a TV.
Isso pode não funcionar com todas as configurações e com todos os tipos de TVs e equipamentos de áudio, especialmente com determinados sistemas legados. Portanto, verifique suas especificações cuidadosamente antes de escolher um desses dispositivos.
Não sabendo mais sobre seus materiais e nunca tendo usado tal extrator de áudio HDMI, não posso recomendar nenhum dispositivo específico. Você pode emitir um consulta em amazon.com e refine-o conforme necessário.
Responder4
Abra o Google Chrome, transmita a tela para a TV. Abra o VLC, reproduza vídeo, Ferramentas, Efeitos e Filtros, Sincronização, atrase o áudio em cerca de 0,61 s. Isso funciona para mim.