开发 Microsoft Media Foundation MP3 自定义会话应用
1. 异步 MFT 特性及同步 MFT 会话设计
异步 MFT 有一些未详细列出的特性。例如,异步 MFT 在设置特定属性 MF_TRANSFORM_ASYNC_UNLOCK 之前不会工作,详细信息可查看 MSDN 文档 。
这里设计的自定义会话专为同步 MFT 设计,原因有二:一是当前 Windows 中大多数 MFT 是同步的;二是 MP3 播放场景中使用的 MFT 均为同步的。
2. 同步 Media Foundation 管道事件
2.1 初始化 CMP3Session 类
以下是 CMP3Session::Init() 函数的代码,它初始化了同步 MFT 管道所需的几个关键结构:
//
// Initialize the CMP3Session class
//
HRESULT CMP3Session::Init(void)
{
HRESULT hr = S_OK;
do
{
// allocate a special worker thread for the blocking synchronous MFT operations
hr
超级会员免费看
订阅专栏 解锁全文
71

被折叠的 条评论
为什么被折叠?



