IWMPSettings::rate 属性

[与此页面关联的功能(Windows 媒体播放器 SDK)是旧版功能。 它已被 MediaPlayer 取代。 MediaPlayer 已针对Windows 10和Windows 11进行了优化。 如果可能,Microsoft 强烈建议新代码使用 MediaPlayer 而不是 Windows 媒体播放器 SDK。 如果可能,Microsoft 建议重写使用旧 API 的现有代码以使用新 API。]

rate 属性获取或设置视频的当前播放速率。

语法

public System.Double rate {get; set;}

Public Property rate As System.Double

属性值

一个 System.Double ,表示播放速率,默认值为 1.0。

备注

此属性检索的值充当乘数值,使你能够以更快或更慢的速度播放媒体项。 默认值 1.0 表示创作的速度。

请注意,音轨在低于 0.5 或高于 1.5 的速率下变得难以理解。 播放速率为 2 表示正常播放速度的两倍。

Windows 媒体播放器将尝试使用以下四种不同播放模式中最有效的

  • 保持音频音调的流畅视频播放
  • 流畅的视频播放,音频音调未保持
  • 无音频的流畅视频播放
  • 无音频的关键帧视频播放

Windows 媒体播放器选择的模式取决于多种因素,包括文件类型和位置、操作系统、网络和服务器。

其他注意事项也适用,具体取决于用于创建内容的数字媒体格式:

  • Windows Media 视频 (WMV) 和 ASF。 对于反向播放, rate 属性的最佳值为 1 到 10,或从 1 到 10。 从 0.5 到 1.0 或从 -0.5 到 -1.0 的值也可能适用于可以保持音频音调的情况,例如播放位于本地计算机上的文件时。 允许绝对数量级大于 10 的值,但意义不大。
  • 其他视频格式。 rate 属性的范围为 0 到 9。 不允许使用负值。 小于 1 的值表示慢动作。 允许超过 9 的值,但意义不大。

IWMPControls.fastForward 方法将 rate 的值更改为 5.0,而 IWMPControls.fastReverse 方法将 rate 的值更改为 5.0。

无法更改某些数字媒体格式的播放速率。 使用 IWMPSettings.isAvailable 属性 (在 C# 中 ,IWMPSettings.get_isAvailable 方法) 发现是否可以为特定媒体项指定此属性。

示例

以下示例使用允许用户更改当前媒体的播放速度的数字向上键控件。 当用户单击控件的向上或向下箭头时, rate 属性将设置为新值。 控件中可能的值范围为 0.5 (半速) 到 2.0 (双速) 。 AxWMPLib.AxWindowsMediaPlayer 对象由名为 player 的变量表示。

private void playbackRate_Click(object sender, System.EventArgs e)
{
    // Get the new value of the control, and cast it from decimal to double.
    double newRate = (double)((System.Windows.Forms.NumericUpDown)sender).Value;

    // Test whether playback rate can be set. 
    if( player.settings.get_isAvailable("Rate") )
    {
        // Set the playback rate to the new value.
        player.settings.rate = newRate;
    }
}

Public Sub playbackRate_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles playbackRate.Click

    '  Get the new value of the control as a double.
    Dim nUpDown As System.Windows.Forms.NumericUpDown = sender
    Dim newRate As Double = nUpDown.Value

    '  Test whether playback rate can be set. 
    If (player.settings.isAvailable("Rate")) Then

        '  Set the playback rate to the new value.
        player.settings.rate = newRate

    End If

End Sub

要求

要求
版本
Windows 媒体播放器 9 系列或更高版本
命名空间
WMPLib
程序集
Interop.WMPLib.dll (Interop.WMPLib.dll.dll)

另请参阅

IWMPControls.fastForward (VB 和 C#)

IWMPControls.fastReverse (VB 和 C#)

IWMPSettings 接口 (VB 和 C#)

IWMPSettings.isAvailable (VB 和 C#)

IWMPSettings.mute (VB 和 C#)