O ffmpeg continua travando enquanto joga com o ffserver. Alguém pode consertar isso?

O ffmpeg continua travando enquanto joga com o ffserver. Alguém pode consertar isso?

Então aqui está o acordo. Estou encontrando vários erros entre ffmpeg e ffserver. Os vídeos estão em ótimo estado, pelo que posso dizer, e são transmitidos bem, individualmente. Mas quando uso uma lista, bem, as coisas ficam estranhas.

Primeiro, o ffserver está rodando assim:

ffserver -f asfffserver.conf

asfffserver.conf se parece com:

HTTPPort 8090
# bind to all IPs aliased or not
HTTPBindAddress 0.0.0.0
# max number of simultaneous clients
MaxClients 1000
# max bandwidth per-client (kb/s)
MaxBandwidth 10000

<Feed feed1.ffm>
  File /tmp/feed1.ffm
  FileMaxSize 700M
</Feed>

# ASF output - for media player classic
<Stream test.asf>
# the source feed
  Feed feed1.ffm
# the output stream format - ASF
  Format asf
  VideoCodec mpeg4
# this must match the ffmpeg -r argument
  VideoFrameRate 30
# generally leave this is a large number
  VideoBufferSize 100000
# another quality tweak
  VideoBitRate 768
# quality ranges - 1-31 (1 = best, 31 = worst)
  VideoQMin 1
  VideoQMax 5
  VideoSize 720x480
# this sets how many seconds in past to start
  PreRoll 0
# Audio Codec
  AudioCodec libmp3lame
  AudioBitRate 56
  AudioChannels 2
  AudioSampleRate 24000
</Stream>

<Stream stat.html>
  Format status
  ACL allow 127.0.0.1
</Stream>

Então eu executo o ffmpeg assim:

ffmpeg -f concat -i dailylist.txt -c copy http://localhost:8090/feed1.ffm

O arquivo dailylist.txt contém (especificações sobre esses dois estão localizadas aqui)

file /pathtomyvideo/shorts/0019.mp4
file /pathtomyvideo/shorts/0197.mp4

Portanto, o ffmpeg funciona perfeitamente, até alguns segundos do segundo vídeo, quando o ffmpeg trava com esta mensagem:

av_interleaved_write_frame(): Connection reset by peer9.15 bitrate= 383.7kbits/s dup=5561 drop=11754 speed=10.8x
Error writing trailer of http://localhost:8090/feed1.ffm: Connection reset by peerframe= 9755 fps=182 q=2.0 Lsize=   27156kB time=00:09:42.51 bitrate= 381.9kbits/s dup=5561 drop=11847 speed=10.9x
video:22639kB audio:3962kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 2.088314%
Conversion failed!

e ffserver diz:

Assertion asf->packet_timestamp_end >= asf->packet_timestamp_start failed at /build/ffmpeg-e0CgSU/ffmpeg-2.8.4+git1~trusty/ffmpeg/libavformat/asfenc.c:777
Aborted (core dumped)

Então. Esse é meu problema. Alguma sugestão para consertar isso? Posso colar registros mais detalhados se eles ajudarem ou executar quaisquer testes que você me pedir. Se alguém puder resolver isso, ficarei eternamente grato, e se/quando este projeto for lançado, mencionarei você na tela.

Obrigado!

informação relacionada