MediaPlayer Class
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
Provides media playback for drawings.
public ref class MediaPlayer : System::Windows::Media::Animation::Animatable
public class MediaPlayer : System.Windows.Media.Animation.Animatable
type MediaPlayer = class
inherit Animatable
interface DUCE.IResource
type MediaPlayer = class
inherit Animatable
Public Class MediaPlayer
Inherits Animatable
- Inheritance
Examples
How to: Play Media using a VideoDrawing
Remarks
Although you can declare an instance of this class in Extensible Application Markup Language (XAML), you cannot load and play its media without using code. To play media in XAML only, use a MediaElement. Also, if you declare an instance in XAML, the only practical use is to fill property element syntax for the Player property.
When distributing media with your application, you cannot use a media file as a project resource. In your project file, you must instead set the media type to Content
and set CopyToOutputDirectory
to PreserveNewest
or Always
.
MediaPlayer can be used in two different modes, depending on what is driving the player: independent mode or clock mode. In independent mode, the MediaPlayer is analogous to an image and the media opened through the Open method drives playback. In Clock mode, the MediaPlayer can be thought of as a target for an animation, and thus it will have corresponding Timeline and Clock entries in the Timing tree which controls playback. For more information on media modes, see the Multimedia Overview.
MediaPlayer is different from a MediaElement in that it is not a control that can be added directly to the user interface (UI) of an application. To display media loaded using MediaPlayer, a VideoDrawing or DrawingContext must be used.
Constructors
MediaPlayer() |
Initializes a new instance of the MediaPlayer class. |
Properties
Balance |
Gets or sets the balance between the left and right speaker volumes. |
BufferingProgress |
Gets the percentage of buffering completed for streaming content. |
CanFreeze |
Gets a value that indicates whether the object can be made unmodifiable. (Inherited from Freezable) |
CanPause |
Gets a value indicating whether the media can be paused. |
Clock |
Gets or sets the MediaClock associated with the MediaTimeline to be played. |
DependencyObjectType |
Gets the DependencyObjectType that wraps the CLR type of this instance. (Inherited from DependencyObject) |
Dispatcher |
Gets the Dispatcher this DispatcherObject is associated with. (Inherited from DispatcherObject) |
DownloadProgress |
Gets the percentage of download progress for content located at a remote server. |
HasAnimatedProperties |
Gets a value that indicates whether one or more AnimationClock objects is associated with any of this object's dependency properties. (Inherited from Animatable) |
HasAudio |
Gets a value that indicating whether the media has audio output. |
HasVideo |
Gets a value that indicates whether the media has video output. |
IsBuffering |
Gets a value that indicates whether the media is buffering. |
IsFrozen |
Gets a value that indicates whether the object is currently modifiable. (Inherited from Freezable) |
IsMuted |
Gets a value that indicates whether the media is muted. |
IsSealed |
Gets a value that indicates whether this instance is currently sealed (read-only). (Inherited from DependencyObject) |
NaturalDuration |
Gets the natural duration of the media. |
NaturalVideoHeight |
Gets the pixel height of the video. |
NaturalVideoWidth |
Gets the pixel width of the video. |
Position |
Gets or sets the current position of the media. |
ScrubbingEnabled |
Gets or sets a value that indicates whether scrubbing is enabled. |
Source |
Gets the media Uri. |
SpeedRatio |
Gets or sets the ratio of speed that media is played at. |
Volume |
Gets or sets the media's volume. |
Methods
ApplyAnimationClock(DependencyProperty, AnimationClock, HandoffBehavior) |
Applies an AnimationClock to the specified DependencyProperty. If the property is already animated, the specified HandoffBehavior is used. (Inherited from Animatable) |
ApplyAnimationClock(DependencyProperty, AnimationClock) |
Applies an AnimationClock to the specified DependencyProperty. If the property is already animated, the SnapshotAndReplace handoff behavior is used. (Inherited from Animatable) |
BeginAnimation(DependencyProperty, AnimationTimeline, HandoffBehavior) |
Applies an animation to the specified DependencyProperty. The animation is started when the next frame is rendered. If the specified property is already animated, the specified HandoffBehavior is used. (Inherited from Animatable) |
BeginAnimation(DependencyProperty, AnimationTimeline) |
Applies an animation to the specified DependencyProperty. The animation is started when the next frame is rendered. If the specified property is already animated, the SnapshotAndReplace handoff behavior is used. (Inherited from Animatable) |
CheckAccess() |
Determines whether the calling thread has access to this DispatcherObject. (Inherited from DispatcherObject) |
ClearValue(DependencyProperty) |
Clears the local value of a property. The property to be cleared is specified by a DependencyProperty identifier. (Inherited from DependencyObject) |
ClearValue(DependencyPropertyKey) |
Clears the local value of a read-only property. The property to be cleared is specified by a DependencyPropertyKey. (Inherited from DependencyObject) |
Clone() |
Creates a modifiable clone of this Animatable, making deep copies of this object's values. When copying this object's dependency properties, this method copies resource references and data bindings (but they might no longer resolve) but not animations or their current values. (Inherited from Animatable) |
CloneCore(Freezable) |
Makes this instance a deep copy of the specified MediaPlayer. When copying dependency properties, this method copies resource references and data bindings (but they might no longer resolve) but not animations or their current values. |
CloneCurrentValue() |
Creates a modifiable clone (deep copy) of the Freezable using its current values. (Inherited from Freezable) |
CloneCurrentValueCore(Freezable) |
Makes this instance a modifiable deep copy of the specified MediaPlayer using current property values. Resource references, data bindings, and animations are not copied, but their current values are. |
Close() |
Closes the underlying media. |
CoerceValue(DependencyProperty) |
Coerces the value of the specified dependency property. This is accomplished by invoking any CoerceValueCallback function specified in property metadata for the dependency property as it exists on the calling DependencyObject. (Inherited from DependencyObject) |
CreateInstance() |
Initializes a new instance of the Freezable class. (Inherited from Freezable) |
CreateInstanceCore() |
Creates a new MediaPlayer instance. |
Equals(Object) |
Determines whether a provided DependencyObject is equivalent to the current DependencyObject. (Inherited from DependencyObject) |
Freeze() |
Makes the current object unmodifiable and sets its IsFrozen property to |
FreezeCore(Boolean) |
Makes this Animatable object unmodifiable or determines whether it can be made unmodifiable. (Inherited from Animatable) |
GetAnimationBaseValue(DependencyProperty) |
Returns the non-animated value of the specified DependencyProperty. (Inherited from Animatable) |
GetAsFrozen() |
Creates a frozen copy of the Freezable, using base (non-animated) property values. Because the copy is frozen, any frozen sub-objects are copied by reference. (Inherited from Freezable) |
GetAsFrozenCore(Freezable) |
Makes this instance a clone of the specified MediaPlayer object. |
GetCurrentValueAsFrozen() |
Creates a frozen copy of the Freezable using current property values. Because the copy is frozen, any frozen sub-objects are copied by reference. (Inherited from Freezable) |
GetCurrentValueAsFrozenCore(Freezable) |
Makes the current instance a frozen clone of the specified Freezable. If the object has animated dependency properties, their current animated values are copied. (Inherited from Freezable) |
GetHashCode() |
Gets a hash code for this DependencyObject. (Inherited from DependencyObject) |
GetLocalValueEnumerator() |
Creates a specialized enumerator for determining which dependency properties have locally set values on this DependencyObject. (Inherited from DependencyObject) |
GetType() |
Gets the Type of the current instance. (Inherited from Object) |
GetValue(DependencyProperty) |
Returns the current effective value of a dependency property on this instance of a DependencyObject. (Inherited from DependencyObject) |
InvalidateProperty(DependencyProperty) |
Re-evaluates the effective value for the specified dependency property. (Inherited from DependencyObject) |
MemberwiseClone() |
Creates a shallow copy of the current Object. (Inherited from Object) |
OnChanged() |
Called when the current Freezable object is modified. (Inherited from Freezable) |
OnFreezablePropertyChanged(DependencyObject, DependencyObject, DependencyProperty) |
This member supports the Windows Presentation Foundation (WPF) infrastructure and is not intended to be used directly from your code. (Inherited from Freezable) |
OnFreezablePropertyChanged(DependencyObject, DependencyObject) |
Ensures that appropriate context pointers are established for a DependencyObjectType data member that has just been set. (Inherited from Freezable) |
OnPropertyChanged(DependencyPropertyChangedEventArgs) |
Overrides the DependencyObject implementation of OnPropertyChanged(DependencyPropertyChangedEventArgs) to also invoke any Changed handlers in response to a changing dependency property of type Freezable. (Inherited from Freezable) |
Open(Uri) |
Opens the given Uri for media playback. |
Pause() |
Pauses media playback. |
Play() |
Plays media from the current Position. |
ReadLocalValue(DependencyProperty) |
Returns the local value of a dependency property, if it exists. (Inherited from DependencyObject) |
ReadPreamble() |
Ensures that the MediaPlayer is being accessed from a valid thread. |
SetCurrentValue(DependencyProperty, Object) |
Sets the value of a dependency property without changing its value source. (Inherited from DependencyObject) |
SetValue(DependencyProperty, Object) |
Sets the local value of a dependency property, specified by its dependency property identifier. (Inherited from DependencyObject) |
SetValue(DependencyPropertyKey, Object) |
Sets the local value of a read-only dependency property, specified by the DependencyPropertyKey identifier of the dependency property. (Inherited from DependencyObject) |
ShouldSerializeProperty(DependencyProperty) |
Returns a value that indicates whether serialization processes should serialize the value for the provided dependency property. (Inherited from DependencyObject) |
Stop() |
Stops media playback. |
ToString() |
Returns a string that represents the current object. (Inherited from Object) |
VerifyAccess() |
Enforces that the calling thread has access to this DispatcherObject. (Inherited from DispatcherObject) |
WritePostscript() |
Raises the Changed event for the Freezable and invokes its OnChanged() method. Classes that derive from Freezable should call this method at the end of any API that modifies class members that are not stored as dependency properties. (Inherited from Freezable) |
WritePreamble() |
Verifies that the MediaPlayer is not frozen and that it is being accessed from a valid threading context. |
Events
BufferingEnded |
Occurs when buffering has finished. |
BufferingStarted |
Occurs when buffering has started. |
Changed |
Occurs when the Freezable or an object it contains is modified. (Inherited from Freezable) |
MediaEnded |
Occurs when the media has finished playback. |
MediaFailed |
Occurs when an error is encountered. |
MediaOpened |
Occurs when the media is opened. |
ScriptCommand |
Occurs when a script command has been encountered within the media. |