Welcome to MSDN Blogs Sign in | Join | Help
Diagnosing and Tuning Expression Encoder 3 SmoothStreaming Performance using SmoothStreamingConfig.xml

The Expression Encoder 3 Smooth Streaming Media Stream Source allows configuration via a file “SmoothStreamingConfig.XML” when it is placed in the same folder on the webserver as the copy of ”SmoothStreaming.XAP”.    An archetypical copy of “SmoothStreamingConfig.XML” is attached to this post that documents the “Factory Default”  configuration.  By placing a copy of the file and adjusting the values within it is possible to obtain additional diagnostic information and to also tune the bitrate switching behavior of Smooth Streaming heuristics.

Contained within the  archetypical copy of “SmoothStreamingConfig.XML” are XML comments that provide some explanation of the purpose and meaning of each setting.    The “factory default” settings are intended to work in a wide variety of cases – if you decide to override the default settings it is wise to test the playback performance on a range of client machines – slow machines, fast machines, broadband connections, DSL connects – choose a range of machines that closely matches that of your target audience.

 

Also attached to this post is a special "ReleaseTrace" build of “SmoothStreaming.XAP” – this build has additional diagnostic tracing code compiled into it.  The copy supplied with Expression Encoder 3 omits the additional tracing code in the interest of having as compact a .XAP as possible.  To see the trace data -- you'll need to attach a debugger to the browser process that is running the player as described in a prior post:  http://blogs.msdn.com/randyoakley/archive/2009/10/07/how-to-debug-expression-encoder-3-templates-with-smoothstreaming-content.aspx

 

 

 

Posted: Wednesday, October 07, 2009 7:19 AM by Randy.Oakley

Attachment(s): SmoothStreamingConfigHelp.zip

Comments

sagostinho said:

Using the SmoothStreamingConfig.xml attached I get the following unhandled exception:

Unhandled Error in Silverlight Application

Code: 4004    

Category: ManagedRuntimeError      

Message: System.FormatException: Input string was not in a correct format.

  at System.Number.StringToNumber(String str, NumberStyles options, NumberBuffer& number, NumberFormatInfo info, Boolean parseDecimal)

  at System.Number.ParseInt32(String s, NumberStyles style, NumberFormatInfo info)

  at System.Int32.Parse(String s, NumberStyles style, IFormatProvider provider)

  at System.Convert.ToInt32(String value, IFormatProvider provider)

  at MS.Internal.Expression.Encoder.AdaptiveStreaming.Utilities.ConfigurationLoader.ParseConfigHeuristicsFrameRate(XmlReader configXml)

  at MS.Internal.Expression.Encoder.AdaptiveStreaming.Utilities.ConfigurationLoader.ParseConfigHeuristics(XmlReader configXml)

  at MS.Internal.Expression.Encoder.AdaptiveStreaming.Utilities.ConfigurationLoader.ParseConfig(XmlReader configXml)

  at MS.Internal.Expression.Encoder.AdaptiveStreaming.Utilities.ConfigurationLoader.ParseConfigUrl(Stream configUrlStream)

  at MS.Internal.Expression.Encoder.AdaptiveStreaming.Utilities.ConfigurationLoader.ConfigUrl_OpenReadCompleted(Object sender, OpenReadCompletedEventArgs e)

  at System.Net.WebClient.OnOpenReadCompleted(OpenReadCompletedEventArgs e)

  at System.Net.WebClient.OpenReadOperationCompleted(Object arg)  

Any ideias on what might be wrong?

# December 3, 2009 4:21 AM
Anonymous comments are disabled
Page view tracker