smf v2 simpleplayer does not play IIS smooth streaming

Jun 8, 2010 at 8:00 PM

hello,

i have downloaded smf v2 and tried to play iis smooth streaming files

it compiles without any error but it does not play

i have got iis smooth streaming files working with smf v1

so i believe my iis smooth streaming files are ok.

i see the files are in the play list, but it just doesn't play.

any idea?

 

Jun 9, 2010 at 2:46 AM

Hi Vivile, 

How are you getting it to build? As discussed in the previous post the Smooth Streaming Player Development Kit (PDK), bits that are required aren't actually available yet.

So in theory, your solution shouldn't build, which might have something to do with it not working.

This is of course unless you have early access to the new PDK, and if that's the case please ignore this post :)

Jun 9, 2010 at 6:09 AM

:) hi OlaKarlsson, thanks for your reply,

i think only plugins, core, and utilities need new PDK to compile

Sample player only needs dlls that comes with SMF-BIN-2.2010.0604.1 which contains all the necessary binary files

i was able to compile it without new PDK and able to run and add media files to the playlists :)

but it just doesn't play.

even i set AutoPlay="true" and hit the play button, nothing happens :(

Jun 9, 2010 at 10:16 AM
Have you tried to turn logging and console on? You can do that with this code: player.LoggingConsoleVisibility = Microsoft.SilverlightMediaFramework.Core.FeatureVisibility.Visible; player.LogLevel = LogLevel.All; When I did that it turned out that there were errors with attaching parts with MEF as I describet here: http://smf.codeplex.com/Thread/View.aspx?ThreadId=215295 These errors occur only with smooth streaming media and I belive that they are caused by the version of Microsoft.Web.Media.SmoothStreaming.dll library that is older then the one required by SMV v2. Unfortunatelly I couldn't find the proper version of Microsoft.Web.Media.SmoothStreaming.dll. I'm still waiting for the final release.
Jun 9, 2010 at 12:53 PM

Yep I agree with panjanek, I still think the old Microsoft.Web.Media.SmoothStreaming.dll is the problem.

Even though it compiles, the fact that it then doesn't work, shows that something is wrong, and as we know that SMF ver 2 is dependent on a new version of the PDK dll, I think that most likely to be the cause.

Coordinator
Jun 9, 2010 at 4:36 PM

Hey guys, first thanks for latching onto the Release Candidate so quickly!  You will not be able to play Smooth Streaming using SMF v2 until the latest Microsoft.Web.Media.SmoothStreaming.dll is released, sorry about that.  It should be released very soon and once it is I'll post something on here.  That said, when building your SMF v2 solution, everything should compile except Microsoft.SilverlightMediaFramework.Plugins.SmoothStreaming.  Furthermore, you should be able to play ProgressiveDownload videos no problem.

Jun 11, 2010 at 5:39 PM

krohling:  The new Microsoft.Web.Media.SmoothStreaming.dll is now available:

http://www.iis.net/download/SmoothClient

However, where are examples showing how to implement it?

Coordinator
Jun 11, 2010 at 5:52 PM

leavelbw, if you're looking for examples, try taking a look at Microsoft.SilverlightMediaFramework.Samples within the SMF source.  If there's something specific that's missing please let me know.

Jun 11, 2010 at 9:40 PM

krohling:  This is BLEAVELLB from twitter.  I followed the getting started guide (http://smf.codeplex.com/wikipage?title=SMF%20v2%20Getting%20Started%20Guide) to the T in trying to create a smooth streaming player.  However, I am getting the following error when trying to compile (i referenced the new MicrosoftWeb.Media.SmoothStreaming.dll):

Error 1 The "ValidateXaml" task failed unexpectedly.
System.TypeLoadException: Could not load type 'System.Runtime.Versioning.TargetFrameworkAttribute' from assembly 'mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089'.
   at System.ModuleHandle.ResolveType(Int32 typeToken, RuntimeTypeHandle* typeInstArgs, Int32 typeInstCount, RuntimeTypeHandle* methodInstArgs, Int32 methodInstCount)
   at System.ModuleHandle.ResolveTypeHandle(Int32 typeToken, RuntimeTypeHandle[] typeInstantiationContext, RuntimeTypeHandle[] methodInstantiationContext)
   at System.Reflection.Module.ResolveType(Int32 metadataToken, Type[] genericTypeArguments, Type[] genericMethodArguments)
   at System.Reflection.CustomAttribute.FilterCustomAttributeRecord(CustomAttributeRecord caRecord, MetadataImport scope, Assembly& lastAptcaOkAssembly, Module decoratedModule, MetadataToken decoratedToken, RuntimeType attributeFilterType, Boolean mustBeInheritable, Object[] attributes, IList derivedAttributes, RuntimeType& attributeType, RuntimeMethodHandle& ctor, Boolean& ctorHasParameters, Boolean& isVarArg)
   at System.Reflection.CustomAttribute.GetCustomAttributes(Module decoratedModule, Int32 decoratedMetadataToken, Int32 pcaCount, RuntimeType attributeFilterType, Boolean mustBeInheritable, IList derivedAttributes)
   at System.Reflection.CustomAttribute.GetCustomAttributes(Assembly assembly, RuntimeType caType)
   at System.Reflection.Assembly.GetCustomAttributes(Type attributeType, Boolean inherit)
   at System.Attribute.GetCustomAttributes(Assembly element, Type attributeType, Boolean inherit)
   at MS.Internal.Xaml.MS.Impl.XamlSystemBinding.AddPairsFromAssembly(XamlSchemaContext schemaContext, Assembly asm, String uri, List`1 pairs)
   at MS.Internal.Xaml.MS.Impl.XamlSystemBinding.SearchForXamlNamespace(XamlSchemaContext schemaContext, String uriString, IEnumerable`1 referenceAssemblies)
   at MS.Internal.Xaml.XamlSchemaContext.GetXamlNamespace(String xmlns, Assembly localAssembly)
   at MS.Internal.Xaml.XamlSchemaContext.GetXamlNamespace(String xmlns)
   at MS.MarkupCompiler.ValidationPass.ValidateXaml(String fileName, Assembly[] assemblies, Assembly callingAssembly, TaskLoggingHelper log, Boolean shouldThrow)
   at Microsoft.Silverlight.Build.Tasks.ValidateXaml.XamlValidator.Execute()
   at Microsoft.Silverlight.Build.Tasks.ValidateXaml.XamlValidator.Execute()
   at Microsoft.Silverlight.Build.Tasks.ValidateXaml.Execute()
   at Microsoft.Build.BuildEngine.TaskEngine.ExecuteInstantiatedTask(EngineProxy engineProxy, ItemBucket bucket, TaskExecutionMode howToExecuteTask, ITask task, Boolean& taskResult) SMF2

I am getting this error with a new project that I've created to test out SMF2.

Bob 

Jun 12, 2010 at 2:28 AM

Apparently SMF2 does not work with Visual Studio 2008.  You have to upgrade to Visual Studio 2010.

Jun 12, 2010 at 2:38 PM

Yep that would be true since it is a Silverlight 4 project.