Smooth Streaming Client Readme
By Dave Nelson
June 23, 2011
Last Updated: May 31, 2012
Applies To:
Microsoft Smooth Streaming Client 2.0 RTW IIS Smooth Streaming Client 1.1 RTW IIS Smooth Streaming Client 1.5 RTW
Contents
- Introduction
- Package contents
- System Requirements
- Known issues
- For more information
- Support information
- Release history
Introduction
Smooth Streaming Client SDKs enable you to build rich on-demand and live Smooth Streaming experiences for
Smooth Streaming Client includes SDK DLLs with APIs for both desktop Silverlight client development and for Windows Phone development. For more information, see Package contents.
Smooth Streaming Client SDKs support the following high-level features:
Available in Microsoft Smooth Streaming Client 2.0
- Persistent advertisement ("linear ads")
- Ad-insertion (ScheduleLinearClip)
- Ad playback
- Live-to-VOD
- Client-controlled unlimited DVR window
- Failed chunk download details (non-text chunks)
- New ChunkDownloadFailed event arguments for for getting information about failed chunk downloads
- Key rotation
- Prefetch root licenses for authorized channels to enable instant channel changes
- Distribute license requests to avoid flooding the license server
- Updated cache plug-in properties
- Get or Set a web request that the media element downloader uses for downloading (CacheRequest2)
- Get or Set the perceived bandwidth while downloading individual media chunks (CacheResponse2)
- Get or Set the track the cache plug-in uses for downloading a media chunk (CacheResponse2)
Available in all versions
- Basic playback controls
- APIs such as Play, Pause, Stop
- Events for playback and diagnostics
- Properties to track position, and so on
- Advanced playback support
- DVR support for Live Smooth Streaming
- Support for tracking live events while in DVR
- Trickplay: slow motion/fast-forward/rewind (desktop Silverlight only, not available on Windows Phone)
- Multiple Audio Language support
- Textstream support for captions/subtitles (desktop Silverlight only, not available on Windows Phone)
- Support for offline playback scenarios
- H.264/AAC support
- Monetization
- Ad playback integration: scheduling capabilities, tracking ad progress (desktop Silverlight only, not available on Windows Phone)
- Live ad insertion with
IIS Live Smooth Streaming (desktop Silverlight only, not available on Windows Phone) - Rich analytics with
IIS Advanced Logging . - Analytics APIs
- Support for specifying markers/ad-ingestion points outside the main manifest (desktop Silverlight only, not available on Windows Phone)
- Content protection – PlayReady integration for VC-1/H.264-encoded content
- Composite manifest support for scenarios such as Microsoft Media Platform Video Editor (desktop Silverlight only, not available on Windows Phone)
- Selecting tracks for playback (for example, restrict the available bitrates, support multiple camera angles in a single stream, and so on)
- Support for progressive download ads/content (desktop Silverlight only, not available on Windows Phone)
Microsoft Smooth Streaming Client 2.0 and IIS Smooth Streaming Client 1.5 support IIS Media Services manifest compression (requires
Package contents
When the package is installed, directories are created by default under: %ProgramFiles%\Microsoft SDKs\Smooth Streaming Client\Version\
The root directory contains the following folders and files:
- Silverlight. Contains the SDK DLL with APIs for desktop Silverlight.
- Windows Phone. Contains the SDK DLL with APIs for Windows Phone.
- Smooth Streaming Client RTW.rtf. The End-User License Agreement (EULA).
- Readme.htm. A link to this document.
- REDIST.txt. This file specifies which files the redistribution rights in the EULA apply to. See the license terms that accompany the package for more information about redistribution rights.
System requirements
Smooth Streaming Client can be installed on the following operating systems: Windows Server 2008 R2, Windows Server 2008, Windows 7, Windows Vista, Windows XP
The following software must be installed to develop applications using Smooth Streaming Client:
Microsoft Visual Studio 2010 orMicrosoft Visual Web Developer 2010 Express .- Silverlight 5 Tools for Visual Studio 2010 (for application development using Microsoft Smooth Streaming Client 2.0) or
Silverlight 4 Tools for Visual Studio 2010 (for application development using IIS Smooth Streaming Client 1.5 or 1.1). - For developing Windows Phone applications, install the
Windows Phone Developer Tools and theWindows Phone Developer Tools January 2011 Update . For more information about Windows Phone development, see theWindows Phone App Hub . - For testing your applications on client computers, your Macintosh or Windows client computer must be running an Internet browser supported by Silverlight 4, such as Internet Explorer, Safari, or Firefox.
Known issues
Microsoft Smooth Streaming Client 2.0
- IIS Media Services low-latency live Smooth Streaming isn't supported.
- Playback of encrypted streams isn't supported in Picture-in-Picture (PiP) mode.
- Rewinding an encrypted stream back to the beginning will close the stream.
- Non-sparse tracks in a stream should have the same fragment duration and lookahead values as audio and video tracks in the stream to enable synchronization.
- For linear-ad insertion to work, the main content stream and ad stream must be encoded using identical codecs, resolutions, and encoding profiles.
- When a media stream transitions from a linear clip to a linear ad (or vice-versa), the LinearClipChanged event might fire twice. The extra event can be ignored.
- If a user pauses a linear ad that's inserted in front of a live stream (a linear "preroll ad"), playback might not transition to the current live playback point when the linear ad finishes. To work around this issue, you can configure your client application to not allow pausing playback of the linear ad or you can call the StartSeekToLive method after the ad finishes.
- The first Seek operation after the MediaOpened event might be ignored.
- The Stop method shouldn't be used during playback of live Smooth Streams.
- Calling the SelectTracks method or the RestrictTracks method during the ManifestReady event doesn't update the SelectedTracks property until after the ManifestReady event handler exits.
- You can call BufferingTime Set and Get anytime, but only the last Set before assignment of SmoothStreamingSource is used. If you call Set after setting SmoothStreamingSource, and then call Get, the updated value is returned even though SmoothStreamingMediaElement isn't using that value for BufferingTime. Also, re-buffering causes SmoothStreamingMediaElement to update the BufferingTime value internally, making it unavailable to a Get operation.
- Clips from one or more client manifests that are combined into a composite manifest must have identical audio tracks.
IIS Smooth Streaming Client 1.5
- Smooth Streaming Client 1.5 supports IIS Media Services low latency for live Smooth Streams. (This is supported on desktop Silverlight only. It's not supported on Windows Phone.) Low-latency live streaming scenarios require that the Smooth Streaming client connect to a publishing point on a web server that's running at least IIS Media Services 4.0. Earlier versions of IIS Media Services don't support low-latency live streaming. For more information about how to configure low-latency live Smooth Streaming, see BufferingTime.
Note Audio-only streams aren't supported in low-latency live streaming scenarios.
IIS Smooth Streaming Client 1.1
- Markers don't fire in trickplay modes. Use Microsoft Media Platform: Player Framework (MMPPF) markers if markers are required in fast-forward, rewind or slow-motion modes.
- The Client treats URIs as case-insensitive, which can cause issues on some servers. Use lowercase manifest/stream URIs to avoid any issues.
- Protected streams aren't supported in composite manifests.
- Audio, video, and textstream fragments in a live Smooth Stream must have the same duration.
- For live Smooth Streams, network requests for metadata might continue after calling the Stop method. To avoid this issue, set the Source property to Null.
- To recover from a MediaFailed event, set the Source property to Null, and then wait for a period of time before resetting the source to reconnect.
- The PlaybackRate property must be set to 1.0 before calling the ScheduleClip method. After the clip finishes, you can change the PlaybackRate property back to the desired value.
For more information
Smooth Streaming Client content for developers is available on
For more information about Windows Phone development, see the
Support information
You can obtain support for Smooth Streaming Client from fellow users by posting your questions on the IIS Media Forum.
To obtain support from Microsoft, go to Microsoft Support. Charges may apply.
Release history
- May 31, 2012. Microsoft Smooth Streaming Client SDK 2.0 for Silverlight 5
- September 2, 2011. IIS Smooth Streaming Client SDK 1.5 for Silverlight 4
- September 24, 2010. IIS Smooth Streaming Client SDK 1.1 for Silverlight 4
- June 10, 2010. IIS Smooth Streaming Client 1.0
Discuss in IIS Forums