【问题标题】:Pausing and resuming mp3 with WMPLib and C#使用 WMPLib 和 C# 暂停和恢复 mp3
【发布时间】:2011-10-02 09:52:14
【问题描述】:

我正在使用 C# 和 WMPLib 库开发一个简单的 mp3 播放器项目。这个想法是通过 PIC 组件使其可控,从我家的“任何地方”控制 PC 中播放的媒体(是的,这是一个大学项目)。

问题:我无法让 WindowsMediaPlayer.controls.play() 方法恢复暂停的播放。我该怎么做? 我已经尝试保存并设置 WindowsMediaPlayer.controls.currentPosition 属性,但它不起作用。

PS:
同样的问题:http://social.msdn.microsoft.com/Forums/en-US/windowspro-audiodevelopment/thread/770d22fc-7ef1-475e-a699-b60e2282a7c7/
不同的问题:pause and resume Windows Media Player in C#

提前致谢

编辑:WindowsMediaPlayer.controls.currentPosition 用于设置位置,但不适用于获取位置:

double time = Player.controls.currentPosition; //Returns 0 always
Player.controls.currentPosition = time; //Works fine, makes music jump to time seconds

【问题讨论】:

  • 我现在正在使用 NAudio 库,工作正常。 (但问题仍然存在,我想知道为什么它不起作用)

标签: c# visual-studio-2010 mp3 wmplib


【解决方案1】:

您可以通过将其转换为字符串来获取当前位置,例如:
label1.text = convert.tostring(Player.controls.currentPosition);

我使用了一个标签来准确地显示 currentPosition 值。

问候

【讨论】:

  • 那我把它转成字符串,转成int再设置?
【解决方案2】:
...
double time = Player.controls.currentPosition; //return always 0 for you, because you pause first and after get the value
Player.controls.pause();

Player.controls.currentPosition = time;
Player.controls.play();

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-07-19
    • 2015-07-28
    • 2014-12-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多