ffmpeg - streaming de áudio com codec vorbis sobre RTP

ffmpeg - streaming de áudio com codec vorbis sobre RTP

Estou tentando configurar o streaming de áudio usando RTPprotocolo e Vorbiscodec. Começando com amostras mono geradas por exemplo mínimo com remetente e destinatário na mesma máquina (duas instâncias de ffmpeg, versão N-91266-g8c20ea8ee0):

Executando o remetente primeiro, salvando o SDP no arquivo:

ffmpeg -re -f lavfi -i aevalsrc="sin(400*2*PI*t)" -acodec libvorbis -f rtp rtp://127.0.0.1:1234 -sdp_file "g:\sinwave.sdp"

Então receptor:

ffmpeg -protocol_whitelist "file,udp,rtp" -i "g:\sinwave.sdp" -v debug "g:\1.ogg"

Os dados recebidos são salvos em um arquivo apenas por exemplo, na verdade, está planejado gravá-los em um tubo ou soquete)

Mas estou recebendo ffmpegerros no lado do receptor:

[sdp @ 0000000000573580] Bad packed header lengths (30,0,2923,3219)
[vorbis @ 0000000000587940] Extradata missing.
Error while opening decoder for input stream #0:0 : Invalid data found when processing input

Quais opções eu perdi ffmpegem algum dos lados?

Responder1

Parece que a criação do arquivo SDP usando o -sdp_fileparâmetro não está funcionando corretamente, aqui está a linha de comando funcional para o remetente, onde o arquivo SDP criado com o redirecionamento da saída do processo ( >caractere):

ffmpeg -re -f lavfi -i aevalsrc="sin(400*2*PI*t)" -acodec libvorbis
-f rtp rtp://127.0.0.1:1234 > "g:\sinwave.sdp"

O arquivo SDP resultante tem tamanho de 4.503 bytes (em vez de 4.095 bytes) com configuration=linha maior; finalmente ambos ffmpege ffplayerpodem receber stream usando esse arquivo SDP.

informação relacionada