160 likes | 322 Views
Silverlight Partner Summit Expression Encoder Media Player. December 12, 2008 Randy Oakley. Expression Encoder Media Player. Overview Released as part of Expression Encoder V2 SP1 Implemented as a Silverlight 2 skinnable custom control
E N D
Silverlight Partner SummitExpression Encoder Media Player December 12, 2008 Randy Oakley
Expression Encoder Media Player • Overview • Released as part of Expression Encoder V2 SP1 • Implemented as a Silverlight 2 skinnable custom control • Provides common user interface controls desired for a web base media player. E.g. play/pause, playback position, volume control, etc • Provides the controls and features needed by many applications without additional development work • Complete C# and XAML source provided to enable customization for your business needs • Expression Blend makes it easy to customize appearance. Four video and two audio “skins” included as starting points • Visual Studio 2008 can be used to modify and extend player behavior
Expression Encoder Media Player Overview Silverlight 2 Default player skin
Expression Encoder Media Player Overview Gallery player skin
Expression Encoder Media Player Overview Frosted Gallery player skin
Expression Encoder Media Player Overview Black Glass player skin
Expression Encoder Media PlayerPlayer Controls PreviousChapter Next Chapter Stop Frame Step Frame Step Play/Pause
Expression Encoder Media PlayerPosition Indicators Clicking on the position bar seeks to that point – instead of default “page up” / “page down” behavior of the “Slider” control Position Media seeking is controlled during thumb drag to improve user experience Position Thumb Duration Hours Seconds Frames Minutes
Expression Encoder Media PlayerAudio Controls VolumeSlider Mute Softer Louder • Controls are coordinated – e.g. hitting the “Louder” button automatically “unmutes”So does dragging the volume slider thumb
Expression Encoder Media PlayerToggle Controls ChapterList Captions Play List Full Screen
Expression Encoder Media Player FeaturesIIS Smooth Streaming • Adapted from NBC Olympics • Instant start with no downloading • Video segmented into fixed duration blocks (default two seconds) • Each segment is encoded at different bitrates • Automatic adjustment to network conditions and PC power • Bit rate of next segment is selected heuristically to avoid frame dropping • Bit rate will adjust upward as conditions allow • First segment is always played at lowest bit rate • Eliminates the need to the user to chose a bit rate (e.g. “watch in high quality”)
Expression Encoder Media Player FeaturesResizing and Full screen • Shrinks controls to accommodate small window sizes • Typically uses 1:1 pixel mapping to most efficient video playback • Will shrink video as needed to avoid clipping • Automatically switches from 1:1 pixel mapping to scaling in full screen • Provides control fade out events in both “normal” and “full screen” modes • Mouse movement restores controls
Expression Encoder Media Player vsUsing Silverlight MediaElement directly • If your application doesn’t need or want any controls • If your application requires a radically different UI e.g. a “Video Cube” • Even if your application requires only one control – it will like be less work to start with an EEMP template and delete the controls you don’t need • Download size is only a few hundred K, small compared to the video itself
Expression Encoder Media PlayerCustomizing in Blend Demonstration • For more info on custom control skinning, search on these keywords:Jesse Liberty Creating Skinnable Custom Controls
Expression Encoder Media PlayerExtending the player using Visual Studio 2008
Questions and Answers For More Information Visit www.microsoft.com/silverlight/partners Email Randy.Oakley@microsoft.com Blogs http://blogs.msdn.com/randyoakley/default.aspx http://www.clarkezone.net/