MFP_EVENT_TYPE枚举 (mfplay.h)

重要 废弃。 此 API 可能会从 Windows 的未来版本中删除。 应用程序应使用 媒体会话 进行播放。
 

定义 IMFPMediaPlayerCallback 接口的事件类型。

语法

typedef enum MFP_EVENT_TYPE {
  MFP_EVENT_TYPE_PLAY = 0,
  MFP_EVENT_TYPE_PAUSE = 1,
  MFP_EVENT_TYPE_STOP = 2,
  MFP_EVENT_TYPE_POSITION_SET = 3,
  MFP_EVENT_TYPE_RATE_SET = 4,
  MFP_EVENT_TYPE_MEDIAITEM_CREATED = 5,
  MFP_EVENT_TYPE_MEDIAITEM_SET = 6,
  MFP_EVENT_TYPE_FRAME_STEP = 7,
  MFP_EVENT_TYPE_MEDIAITEM_CLEARED = 8,
  MFP_EVENT_TYPE_MF = 9,
  MFP_EVENT_TYPE_ERROR = 10,
  MFP_EVENT_TYPE_PLAYBACK_ENDED = 11,
  MFP_EVENT_TYPE_ACQUIRE_USER_CREDENTIAL = 12
} ;

常量

 
MFP_EVENT_TYPE_PLAY
值: 0
播放已开始。 当 IMFPMediaPlayer::P lay 方法完成时发送此事件。
MFP_EVENT_TYPE_PAUSE
值:1
播放已暂停。 当 IMFPMediaPlayer::P ause 方法完成时发送此事件。
MFP_EVENT_TYPE_STOP
值: 2
播放已停止。 当 IMFPMediaPlayer::Stop 方法完成时发送此事件。
MFP_EVENT_TYPE_POSITION_SET
值: 3
MFPlay 播放器对象已寻求新的播放位置。 当 IMFPMediaPlayer::SetPosition 方法完成时发送此事件。
MFP_EVENT_TYPE_RATE_SET
值: 4
播放速率已更改。 当 IMFPMediaPlayer::SetRate 方法完成时发送此事件。
MFP_EVENT_TYPE_MEDIAITEM_CREATED
值: 5
已创建新的媒体项。 当 IMFPMediaPlayer::CreateMediaItemFromURLCreateMediaItemFromObject 方法完成时发送此事件。
MFP_EVENT_TYPE_MEDIAITEM_SET
值: 6
媒体项已准备好播放。 当 IMFPMediaPlayer::SetMediaItem 方法完成时发送此事件。
MFP_EVENT_TYPE_FRAME_STEP
值: 7
帧步骤操作已完成。 当 IMFPMediaPlayer::FrameStep 方法完成时发送此事件。
MFP_EVENT_TYPE_MEDIAITEM_CLEARED
值: 8
清除了当前媒体项。 当 IMFPMediaPlayer::ClearMediaItem 方法完成时发送此事件。
MFP_EVENT_TYPE_MF
值: 9
管道对象发送了事件。 播放器对象将某些管道事件转发到应用程序。 有关详细信息,请参阅 MFP_MF_EVENT
MFP_EVENT_TYPE_ERROR
值: 10
出现播放错误。
MFP_EVENT_TYPE_PLAYBACK_ENDED
值: 11
播放已结束。 播放器对象在播放到达媒体文件的末尾时发送此事件。
MFP_EVENT_TYPE_ACQUIRE_USER_CREDENTIAL
值: 12
媒体源需要身份验证才能播放文件。

注解

对于每个事件类型, IMFPMediaPlayerCallback::OnMediaPlayerEvent 回调接收指向数据结构的指针。 数据结构的第一部分始终是 MFP_EVENT_HEADER 结构。 下表列出了每个事件类型的数据结构。

OnMediaPlayerEvent 的实现中,必须将 pEventHeader 参数强制转换为正确的结构类型。 为此定义了一组宏。 这些宏检查事件类型的值,如果不匹配,则返回 NULL;否则返回指向正确结构类型的指针。

事件类型 事件结构

指针强制转换宏

MFP_EVENT_TYPE_PLAY

MFP_PLAY_EVENT

MFP_GET_PLAY_EVENT

MFP_EVENT_TYPE_PAUSE

MFP_PAUSE_EVENT

MFP_GET_PAUSE_EVENT

MFP_EVENT_TYPE_STOP

MFP_STOP_EVENT

MFP_GET_STOP_EVENT

MFP_EVENT_TYPE_POSITION_SET

MFP_POSITION_SET_EVENT

MFP_GET_POSITION_SET_EVENT

MFP_EVENT_TYPE_RATE_SET

MFP_RATE_SET_EVENT

MFP_GET_RATE_SET_EVENT

MFP_EVENT_TYPE_MEDIAITEM_CREATED

MFP_MEDIAITEM_CREATED_EVENT

MFP_GET_MEDIAITEM_CREATED_EVENT

MFP_EVENT_TYPE_MEDIAITEM_SET

MFP_MEDIAITEM_SET_EVENT

MFP_GET_MEDIAITEM_SET_EVENT

MFP_EVENT_TYPE_FRAME_STEP

MFP_FRAME_STEP_EVENT

MFP_GET_FRAME_STEP_EVENT

MFP_EVENT_TYPE_MEDIAITEM_CLEARED

MFP_MEDIAITEM_CLEARED_EVENT

MFP_GET_MEDIAITEM_CLEARED_EVENT

MFP_EVENT_TYPE_MF

MFP_MF_EVENT

MFP_GET_MF_EVENT

MFP_EVENT_TYPE_ERROR

MFP_ERROR_EVENT

MFP_GET_ERROR_EVENT

MFP_EVENT_TYPE_PLAYBACK_ENDED

MFP_PLAYBACK_ENDED_EVENT

MFP_GET_PLAYBACK_ENDED_EVENT

MFP_EVENT_TYPE_ACQUIRE_USER_CREDENTIAL

MFP_ACQUIRE_USER_CREDENTIAL_EVENT

MFP_GET_ACQUIRE_USER_CREDENTIAL_EVENT

要求

要求
最低受支持的客户端 Windows 7 [仅限桌面应用]
最低受支持的服务器 Windows Server 2008 R2 [仅限桌面应用]
标头 mfplay.h

另请参阅

IMFPMediaPlayerCallback

媒体基础枚举