我正在学习Media Foundation,并希望从Metro应用中使用它。不幸的是,MetroreateMediaSession不支持Metro应用程序。这是为什么? Metro应用程序如何创建媒体会话,例如播放由应用程序即时生成的PCM音频流?为什么MetroreateMediaSession不支持Metro应用程序?
2
A
回答
2
显然,Metro应用程序并不是用这种方式创建自己的媒体会话。由詹姆斯·戴利提供以下答案,微软,对an MSDN Forum thread(由我额外的标记)提供了一些启示:
这里有两个选项:
1)使用WASAPI和泵的合成PCM音频直接向 音频管理器(优选的)
2)创建一个可以插入Media Foundation Media Engine
任一种方法如预期将工作的自定义源。您需要仔细检查每种方法并将其与您的软件 要求进行比较。对于大多数合成音频方案,建议使用WASAPI 。
他后来澄清:
问:WASAPI:我失去了我的理解一个关键部分 - 如何做需要的对象的初始活化/实例访问音频设备。 Metro风格应用程序不支持IMMDevice时,我怎样才能处理音频设备?
A.代码如下:
Platform::String^ id = Windows::Media::Devices::MediaDevice::GetDefaultAudioCaptureId(Windows::Media::Devices::AudioDeviceRole::Console);
Microsoft::WRL::ComPtr<IAudioClient> pAudioClient = NULL;
ActivateAudioInterface(id->Data(), __uuidof(IAudioClient), (void**)&pAudioClient);
Q. Media Foundation Media Engine:从研究real-time communication sample,似乎对比赛的方针/记录将是以下 - 有我得到了它的权利等等远?
- 回放:使用Windows.Media.MediaExtensionManager注册一个 方案(在本例中,它是“南科://”)处理,其产生与时此方案的网址导航到一个 自定义来源。
- 录音:执行自定义接收器并使用Windows.Media.Capture.MediaCapture.StartRecordToCustomSinkAsync来捕获媒体。
答:是的,这似乎是一种合理的方法。
相关问题
- 1. 什么webserver支持android应用程序?
- 2. 为什么当应用程序崩溃时,Firebase不支持onDisconnect?
- 3. 为什么我的Android应用程序不支持java.text.Normalizer?
- 4. 增强支持metro风格的应用程序?
- 5. 将metro风格的应用程序支持本地数据库
- 6. iTextSharp是否支持Windows Metro应用程序?
- 7. Visual Studio 2010是否支持Windows Metro风格的应用程序?
- 8. 为什么Maven 3放弃支持应用程序$ version声明?
- 9. QuickGraph Metro风格应用支持
- 10. 什么是供应商应用程序支持?
- 11. 为什么切换按钮控件的应用程序不支持Android的
- 12. 为MVC应用程序和*支持应用程序构建URL
- 13. 为什么Oracle的驱动程序不支持READ_UNCOMMITTED?
- 14. 为什么Java元程序化支持不会更好?
- 15. 为了“支持”远程桌面服务,应用程序需要做些什么?
- 16. 什么主机支持催化剂框架应用程序
- 17. 什么网站托管公司支持Sinatra应用程序?
- 18. 为什么我的应用程序设置不能持久?
- 19. 如果我的应用程序不支持iphone6会怎么样?
- 20. 什么是Windows Metro风格的应用程序
- 21. 什么保持iPhone应用程序?
- 22. 将应用程序转换为支持时需要考虑什么?
- 23. selenium webdriver支持IE10 Metro吗?
- 24. 为什么configfs不支持mmap?
- 25. 为什么D3Dcompile不支持unicode来源?
- 26. CoreBluetooth - 请求不受支持。为什么?
- 27. 为什么FileExists不支持通配符?
- 28. 为什么C#不支持多继承?
- 29. gcc为什么不支持裸函数?
- 30. 为什么java不支持多继承?
欢迎来到Windows 8,您曾经爱过的许多API都缺失,通常没有很好的理由 – 2012-04-19 23:08:36