[FFmpeg-trac] #2409(avformat:new): ffmpeg hangs while trying to play live FLV stream with Speex

FFmpeg trac at avcodec.org
Thu Mar 28 15:49:12 CET 2013

#2409: ffmpeg hangs while trying to play live FLV stream with Speex
             Reporter:  DrLex        |                     Type:  defect
               Status:  new          |                 Priority:  normal
            Component:  avformat     |                  Version:  git-
             Keywords:  Speex, RTMP  |  master
             Blocking:               |               Blocked By:
Analyzed by developer:  0            |  Reproduced by developer:  0
 Summary of the bug:
 When trying to play a live audio RTMP stream that uses the Speex codec,
 ffmpeg never starts playing until the stream is aborted at the source.

 How to reproduce:
 1. Set up a streaming server like Red5, Wowza, etc. with a simple "live"
 application that distributes streams.
 2. Create an outgoing RTMP stream that streams the microphone:
 ffmpeg -f alsa -i hw:0,0 -acodec libspeex -ab 42200 -ar 16000 -ac 1 -f flv
 'rtmp:// live=1'
 3. Try to play back this stream:
 ffmpeg -v verbose -i 'rtmp:// live=1' -ac 2 -ar 44100
 -f alsa plug:dmix
 Nothing will happen until the ffmpeg instance from step 2 is killed, then
 all buffered audio will start playing.
 When using the 'nellymoser' codec instead in step 2, the stream will start
 playing (after a while):
 ffmpeg -f alsa -i hw:0,0 -acodec nellymoser -ar 22050 -ac 1 -f flv
 'rtmp:// live=1

 Tested with current Git snapshot from git://source.ffmpeg.org/ffmpeg.git:
 ffmpeg version 1.1.git-acaee26 Copyright (c) 2000-2013 the FFmpeg
   built on Mar 28 2013 15:08:58 with gcc 4.4.5 (Debian 4.4.5-8)

 Most ironic is that one of the reasons why we currently use Speex, is that
 older versions of ffmpeg used to freeze on NellyMoser streams, and not on
 Speex. Now it is exactly the other way round.

Ticket URL: <https://ffmpeg.org/trac/ffmpeg/ticket/2409>
FFmpeg <http://ffmpeg.org>
FFmpeg issue tracker

More information about the FFmpeg-trac mailing list