11 Replies Latest reply on Dec 7, 2010 4:24 PM by Silviu Vergoti

    Bitrate switching issue

    nagota

      I'm trying to play a multi bitrate f4m file (not live) with Strobe media player (1.5)

       

      It always plays the lowest bitrate, and never switches to higher. I've tried using autoDynamicStreamSwitch:"true", but that isn't  working.

       

      Do I need to change something else for bitrate switching to work?

       

      I'm using apache server with orign module to serve segments.

       

      --

      Vishal

        • 1. Re: Bitrate switching issue
          Silviu Vergoti Adobe Employee

          How was the content encoded? I think the problem could be the keyframe interval - the buffer size should be set to 2x that interval.

          Besides, all the bitrates  from the MBR content should have keyframes at the same intervals for the switching to work correctly.

           

          For debugging, you can use your SMP debug page or this page:

          http://osmf.org/dev/1.5gm/debug.html?src=your_url

          • 2. Re: Bitrate switching issue
            nagota Level 1

            Thanks for the debug player link. Is there a way I can check keyframe info from this player link? I got this file from someone else, so don't know how was it encoded.

             

            Tried, flvtool2.. which isn't returning any keyframe info to me.

             

            $ flvtool2 -sP test.flv

             

            ---

            /home/ubuntu/f4fpackager/test.flv:

              duration: 1181.98

              audiodatarate: 64

              framerate: 29.9700164794922

              canSeekToEnd: true

              videocodecid: 4

              audiodelay: 0.054

              height: 360

              audiocodecid: 2

              videodatarate: 286

              width: 640

            ...

            --
            Vishal

            • 3. Re: Bitrate switching issue
              nagota Level 1

              Checked using avidemux its at every 2 secs. So buffer size should be 4sec - where do i set this?

              • 5. Re: Bitrate switching issue
                nagota Level 1

                Oh ok, checked params it was already 4, other params I checked in the demo page are -

                 

                dynamicStreamSwitching = false;

                autoDynamicStreamSwitch=false;

                 

                trying changing them the same way - &dynamicStreamBufferTime=4&autoDynamicStreamSwitch=true but it isn't changing

                 

                What is default download ratio or any other criteria for stream to switch?

                 

                --

                Vishal

                • 6. Re: Bitrate switching issue
                  Silviu Vergoti Adobe Employee

                  The initial bitrate is set after the latest bitrate in a MBR file that you played.

                   

                  There are several rules for stream switching, I will not detail them here since they're pretty complex. You should correctly set the bitrates in the f4m file in kbps, the rules rely on those values.

                   

                  You can see the switching beginning and end events in the log on the debug page.

                   

                  If you verified that each link works by itself (not in the f4m file), you can check the MBR information in the debug page and watch for switching events in the log pane.

                   

                  I assume you read how the HD indicator works http://sourceforge.net/adobe/smp/wiki/HD%20Indicator/

                  • 7. Re: Bitrate switching issue
                    nagota Level 1

                    cool, how do I enable autoDynamicStreamSwitch here?

                     

                    what does dynamicStreamSwitching=false here means?

                     

                    I can check which bitrate fragment is playing by monitoring fragment requests, so I know its always lowest bitrate playing for me right now.

                     

                    I just see this event :

                    3. Tue Dec 7 2010 11:04:22 AM [EVENT] StrobeMediaPlayback org.osmf.events::MediaPlayerCapabilityChangeEvent (enabled:true type:isDynamicStreamChange )

                    No other events related to stream switch.
                    --
                    Vishal

                    • 8. Re: Bitrate switching issue
                      Silviu Vergoti Adobe Employee

                      It is active by default (autoDynamicStreamSwitch=true). The  other property is rather unknown by the SMP .

                       

                      Do you see stream switching in the default example: http://osmf.org/dev/1.5gm/debug.html ?

                       

                      What information do you have in debug, under Dynamic Streaming Info section?

                      • 9. Re: Bitrate switching issue
                        nagota Level 1

                        For default debug player too I don't see any stream switching. Also autoDynamicStreamSwitch=false in debug log, you sure its true by default?

                         

                        6. Tue Dec 7 2010 11:33:45 AM [DEBUG] StrobeMediaPlayback 11:33:45 GMT+0530>>> NetStreamSwitchManager.autoSwitch() - setting to false

                         

                         

                        For default debug player - (http://osmf.org/dev/1.5gm/debug.html),

                         

                        PlaybackOptimizationMetrics
                        averageDownloadBytesPerSecond313848.15
                        averageDownloadKbps2451.94
                        averageDroppedFPS0
                        averagePlaybackBytesPerSecond50377.67
                        averagePlaybackKbps393.58
                        currentIndex0
                        downloadRatio6.23
                        droppedFPS0
                        duration653.85
                        maxAllowedIndex0
                        maxFPS25.40
                        updateInterval100

                         

                         

                        Dynamic Streaming Info
                        index0
                        numDynamicStreams5
                        currentBitrate408
                        previousSwitchDurationNaN
                        totalSwitchDuration0
                        dsSwitchEventCount0
                        avgSwitchDurationNaN
                        currentVerticalResolution428
                        bestVerticalResolution720
                        bestHorizontatalResolution1280
                        targetBitrateNaN
                        targetIndex0

                         

                         

                        I see this too, you sure its true by default?

                         

                        StrobeMediaPlayer
                        audioPan0
                        autoDynamicStreamSwitchfalse

                         

                         

                         

                        For the video I'm playing - here is the info -

                         

                        PlaybackOptimizationMetrics
                        averageDownloadBytesPerSecond232177.5
                        averageDownloadKbps1857.42
                        averageDroppedFPS0
                        averagePlaybackBytesPerSecond38017.74
                        averagePlaybackKbps297.01
                        currentIndex0
                        downloadRatio2.89
                        droppedFPS0
                        duration1182.01
                        maxAllowedIndex0
                        maxFPS32.79
                        updateInterval100

                         

                        Dynamic Streaming Info
                        index0
                        numDynamicStreams2
                        currentBitrate300
                        previousSwitchDurationNaN
                        totalSwitchDuration0
                        dsSwitchEventCount0
                        avgSwitchDurationNaN
                        currentVerticalResolution360
                        bestVerticalResolution0
                        bestHorizontatalResolution0
                        targetBitrateNaN
                        targetIndex0

                        • 10. Re: Bitrate switching issue
                          Silviu Vergoti Adobe Employee

                          The autoswitching should be true by default. I think this might be an injection. We're investigating it and we'll give you an answer soon.

                          • 11. Re: Bitrate switching issue
                            Silviu Vergoti Adobe Employee

                            You seem to have hit one of the bugs we deferred last sprint, you will be able to track it here: http://bugs.adobe.com/jira/browse/ST-366.

                             

                            Initially, we thought it was in another area.

                             

                            Thank you for signalling it to us. If you will find another potential issue, you could raise it directly in the bugtracker for a faster response.