私はMedia Foundationを勉強しており、Metroアプリケーションから使用したいと考えています。残念ながら、MFCreateMediaSessionはMetroアプリケーションではサポートされていません。何故ですか?メトロアプリは、アプリでその場で生成されたPCMオーディオを再生するために、どのようにメディアセッションを作成しますか?メトロアプリケーションでMFCreateMediaSessionがサポートされないのはなぜですか?
2
A
答えて
2
メトロアプリが独自のメディアセッションをこのように作成しないように設計されているようです。
1)WASAPIを使用して、合成されたPCMオーディオをポンプ:ここ
はあなたのための2つのオプションがあります:ジェームズ・デイリーが提供する以下の答えは、マイクロソフトの、an MSDN Forum threadに(私が追加のマークアップ)は、いくつかの洞察を提供します直接(好ましい) オーディオマネージャ
2)に期待どおりに動作するMedia Foundation Media Engine
いずれのアプローチに差し込むことができるカスタム・ソースを作成します。それぞれの方法を慎重に レビューし、ソフトウェア の要件と比較する必要があります。ほとんどの合成オーディオシナリオでは、WASAPI を使用することをお勧めします。
後に彼は明らか:
をQ. WASAPI:私は私の理解では1つの重要な部分が欠落しています - オーディオデバイスにアクセスするために必要なオブジェクトの初期活性化/インスタンス化を行う方法。 IMMDeviceがMetroスタイルのアプリケーションでサポートされていない場合、オーディオデバイスのハンドルを取得するにはどうすればよいですか?
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);
は: - 私は右のそれを持っている real-time communication sampleを研究から、それは遊びのためのアプローチを思わ/レコードには、次のようになります遠い?
- 再生:このスキームとURLがナビゲートされるたびに カスタムソースを作成し、ハンドラ:使用Windows.Media.MediaExtensionManagerは スキームを登録する(例では、それは「// STSP」です)。
- 録画:カスタムシンクを実装し、Windows.Media.Capture.MediaCapture.StartRecordToCustomSinkAsyncを使用してメディアをキャプチャします。
A.はい、これは合理的なアプローチのようです。
関連する問題
- 1. URI形式がC#ではサポートされないのはなぜですか?
- 2. MongoDBのビューでMapReduceがサポートされないのはなぜですか?
- 3. OpenCVがffmpegのサポートでコンパイルされないのはなぜですか?
- 4. XIncludeがどのブラウザでもサポートされないのはなぜですか?
- 5. 現在のプラットフォームで 'リソースプール'がサポートされないのはなぜですか?
- 6. アイコンコンポーザー2.4で1024x1024サイズのアイコンがサポートされないのはなぜですか?
- 7. SQL AzureでSQL OpenXMLがサポートされないのはなぜですか?
- 8. ブラウザでPUTとDELETEリクエストがサポートされないのはなぜですか?
- 9. std :: lockでタイムアウトがサポートされないのはなぜですか?
- 10. Dataflow-BigTableコネクタでインクリメントがサポートされないのはなぜですか?
- 11. Smart Home APIでファンがサポートされないのはなぜですか?
- 12. なぜWeb Audio APIがnodejsでサポートされていないのですか?
- 13. ハイパースレッディングは、それがないプロセッサでサポートされていると報告されるのはなぜですか?
- 14. なぜSpring MVCでhttpキャッシュ制御がサポートされないのですか?
- 15. サポートされていないgetResources()。getColor()の6.0(API23)プラットフォームでアプリがクラッシュしないのはなぜですか?
- 16. なぜ "Maybe.doOnDispose"はRxJava2ではサポートされていませんか?
- 17. OpenCLが再帰をサポートしないのはなぜですか?
- 18. Internet Explorerがincludes()をサポートしないのはなぜですか?
- 19. mxmlがコンポーネントコンストラクタをサポートしないのはなぜですか?
- 20. サポートされているアンドロイドデバイスが低すぎるのはなぜですか?
- 21. サポートされていないオペランドタイプのエラーが表示されるのはなぜですか?
- 22. spring mvc3 @ResponseBodyには415のサポートされていないメディアタイプが使用されました。なぜですか?
- 23. サポートされていないmajor.minorバージョン52.0が表示されるのはなぜですか?
- 24. javascriptの新しい組み込みメソッドが古いブラウザでサポートされないのはなぜですか?
- 25. IE9で音声はサポートされていないが、他の音声はサポートされているのはなぜですか?
- 26. Google Cloud Endpointsではモバイルアプリ認証/認証がサポートされていないのはなぜですか?
- 27. Windows 8のYUIメトロアプリケーション:YUIが認識されない
- 28. Android Google TTS:なぜlangAvailableが返されますかサポートされていないか-2ですか?
- 29. 高さが調整されないのはなぜですか?
- 30. ユーザフィルタで「サポートされていないクエリ」が発生するのはなぜですか?
愛用していたAPIの多くが欠けているWindows 8へようこそ。 –