Skip to main content
January 14, 2010
Question

Buffer Fast Start streaming Then fullfill the rest of the Buffer

  • January 14, 2010
  • 2 replies
  • 1666 views

Hello,

We are trying to implement a live streaming radio solution with FMIS.
We are having a problem concerning the Buffering. We are trying to implement a player that has a fast player connection time. For th
is we configured an initial buffer of 2s, after which the player is connected. After this, the buffer should be able load up to 15s,
while streaming is up.

We have 4 Publishers from Flash Media Live encoder 3.x with 64Kb each.

APPX\INST1\stream1 -> audio 64Kb

APPX\INST1\stream2 -> audio 64Kb

APPX\INST1\stream3 -> audio 64Kb

APPX\INST1\stream4 -> audio 64Kb

I have changed the Application.xml to this:

<Queue enabled="true">
               
                <MaxQueueSize>125830</MaxQueueSize>
                <MaxQueueDelay>15000</MaxQueueDelay>
                <FlushOnData>true</FlushOnData>
                <AggregateMessages enabled="true">
                    <MaxAggMsgSize>-1</MaxAggMsgSize>
                </AggregateMessages>
            </Queue>

0,064*1024*1024/8 * 15 = 125830

<MsgQueue>
            <Live>
                <!-- Drop live audio if audio q exceeds time specified. time in milliseconds -->
                <MaxAudioLatency>1500</MaxAudioLatency>
                <!-- Default buffer length in millisecond for live audio and video queue. -->
                <MinBufferTime>1500</MinBufferTime>
            </Live>

<BufferRatio>0.5</BufferRatio>

Are these modifications correct?

Why Player does not start after 1,5s and then fulfill the rest of the Buffer?

I need to configure Queue for one Publisher or for all 4 Publishers?

Can i configure Flash Media Live Encoder to delay 15s of emission?

Best Regards,

Sérgio Machado

    This topic has been closed for replies.

    2 replies

    January 18, 2010

    Client Side Code problem. Client is incrementing buffer lenght each time network degrades and not fullfill as wanted.

    Participating Frequently
    January 14, 2010

    I don't understand your concern with fast player connection. Client ( player ) would request to FMS for connection by using NetConnection.

    Once the connection gets succeded ( NetConnection.Connect.Success ) then you can create NetStream over this NetConnection to play video/streams.

    You can configure the buffering on the Client( Player ) by various properties avalable on NetStream class. Have a look at this doc

    http://help.adobe.com/en_US/AS3LCR/Flash_10.0/flash/net/NetStream.html#bufferTime

    Also by looking at various methods/properties, see how can you configure NetStream on the Client as per your needs.

    Regarding various configuration in the Application.xml, these configure the buffering on the Flash Media Server. If you like

    to have that FMS don't delay message at its end and send to Client ( Player ) then keep low values for queuesize. If you like to optimize

    bandwidth to have FMS sending messages in chuk or aggregrate then keep queuesize large. I would suggest better first keep the config parameters as such and verify whether you are getting the results as per your requirements. If not tweak these parameters keeping in mind your requirements.

    January 14, 2010

    Hello Sanpatel thank you for your reply.

    So at client side i can set up initial buffer at 2s and then FullFill the rest of to 15s with FMS default settings?

    Our client want to delay emission 15s it can be done at encoder? Flash Media Live Encoder 3.x?

    Best Regards,

    Sérgio Machado