Search code examples
ffmpegh.264rtmp

ffplay/ffmpeg on RTMP with H264-encoding


I'm trying to play an RTMP encoded with h264 using the Flash Player 11 h264 encoder - with ffplay.

It works. But only if the stream is set with a bitrate of 64KB and the keyframe interval is 4.
Otherwise it cant find any frames.

Any ideas why?


Solution

  • Yay, it's finally working!

    you need to set some options in the application.xml for the app that streams the video in the FMS,
    basically cancel-out things related to buffering:

    [under StreamManager/Live:]
    
    <AccumulatedIFrames>
       <MaxTime>0</MaxTime>
       <MaxSize>0</MaxSize>
    </AccumulatedIFrames>
    <Queue enabled="false">
       <stuff that doesn't matter when you set enabled above to 'false' />
    </Queue>
    

    Also, I think this helps too:

    <Client>
       <MsgQueue>
          <Live>
             <MinBufferTime>0</MinBufferTime>
          </Live>
          <Server>
             <BufferRatio>0</BufferRatio>
          </Server>
        </MsgQueue> 
    </Client>
    

    Also, set bufferTime to 0 in the netstream object of the client that broadcasts the stream.