Comando FFMPEG para transmitir vídeo para um endereço Multicast

3

Eu preciso transmitir um vídeo para um endereço multicast. Ouvi dizer que usando o FFMPEG podemos transmitir o conteúdo. Eu usei o seguinte comando para transmitir para o endereço multicast

ffmpeg.exe -i input -vcodec copy -acodec copy -f mpegts -re "udp://239.101.101.1:1234?ttl=1&pkt_size=1316".

Mas não consigo visualizar o vídeo em vlc nem no ffmpeg de outro sistema. Eu preciso ver o conteúdo de outra máquina. Que erro estou fazendo ... Por favor, me ajude com isso.

    
por iwant2learn 06.07.2011 / 11:49

3 respostas

2

Primeiro, você deve verificar se os pacotes UDP estão chegando ao sistema do jogador.

O sistema do player é acessível diretamente pelo sistema do transmissor? Os pacotes UDP serão bloqueados pelos roteadores NAT, se não forem encaminhados especificamente para a máquina correta, adicionando a porta UDP 1234 à lista de encaminhamento.

Em seguida, você pode verificar se a máquina do jogador recebe os pacotes ouvindo a porta UDP com (supondo que sua interface física seja eth0, se não usar aquela usada pelo sistema.)

sudo tcpdump -i eth0 dst port 1234

Se os pacotes forem recebidos ok, então tente ler o log do software do player e verifique se os problemas de decodificação podem ser identificados.

    
por 11.07.2011 / 15:58
0

O intervalo total de endereços multicast é de 224.0.0.0 a 239.255.255.255 Depois de executar o comando FFmpeg, goto qualquer PC na mesma rede use isso em VLC

udp://@[IP]:[port]
    
por 26.09.2017 / 14:24
0
  • o sinalizador '-re' é aplicado à entrada e não à saída seu comando não funcionará como você o listou.

  • você tem seu ttl definido como 1, que vai te parar no primeiro roteador, Bata-se e veja o que acontece.

Esta é a maneira mais simples de fazer isso.

    ffmpeg -i Plan_9_from_Outer_Space_1959.mp4 -c copy -f mpegts  'udp://239.0.0.1:1234?ttl=13'

Jogue com o mplayer.

    mplayer udp://239.0.0.1:1234
    
por 03.09.2018 / 01:39