Usando um pipe nomeado como entrada do ffmpeg / avconv para streaming

3

Portanto, estou em uma situação na qual quero alimentar um arquivo .wav (ou outro tipo de som) para um pipe nomeado / FIFO e usar o pipe como a origem de entrada do ffmpeg (com um feed ffserver como saída ).

Isso é o máximo que eu recebi (o ffserver já está em execução e acho que não está relacionado ao meu problema):

$ mkfifo audio.wav

$ mplayer -ao pcm:file=audio.wav soundfile.wav &
[2] 30864
Symbol 'ff_codec_bmp_tags' has different size in shared object, consider re-linking
MPlayer 1.0rc4-4.5.2 (C) 2000-2010 MPlayer Team

[2]+  Stopped                 mplayer -ao pcm:file=audio.wav soundfile.wav

$ avconv -f wav -i audio.wav http://127.0.0.1:8090/feed1.ffm
avconv version 0.8, Copyright (c) 2000-2011 the Libav developers
  built on Mar 16 2012 15:30:40 with gcc 4.5.2

(Hangs here, won't output anything else)

No entanto, o ffmpeg acaba preso bem ali, com o processo aparentemente travado, e não parece que o ffmpeg esteja fazendo nada, e o feed final parece estar inativo. O aviso lá em cima relativo a ff_codec_bmp_tags parece não relacionado também.

Li alguns tópicos do fórum em que as pessoas parecem ter sucesso com algo muito próximo disso, mas suponho que há algo que estou fazendo de errado. Se alguém puder me ajudar por que isso está acontecendo, eu realmente aprecio isso. Existe alguma bandeira que eu deveria estar usando para indicar que é uma FIFO que estou usando uma fonte?

Obrigado antecipadamente.

    
por Sergio Morales 16.03.2012 / 23:03

2 respostas

1

o mplayer quer usar seu terminal, por isso ele é parado em segundo plano ( [2]+ Stopped ) e tudo bloqueia. Eu sugiro usar terminais separados para os programas. Apenas janelas de terminal normais ou via screen ou tmux . Outra opção é usar nohup mplayer .

    
por 18.03.2012 / 00:54
0
mplayer -noconsolecontrols -ao pcm:file=audio.wav soundfile.wav &
    
por 10.04.2012 / 20:06