我使用Windows Media Foundation C++播放音頻和視頻文件。 我的應用程序基本上是基於媒體基礎指南 - http://msdn.microsoft.com/en-us/library/ms697062%28v=VS.85%29.aspx。Windows Media Foundation - 右揚聲器不工作
我的問題是,當我播放媒體文件時,音頻僅從左揚聲器呈現。
一些更多的信息:
的問題發生的音頻和視頻文件兩者。
我的拓撲結構是一個經典的輸入節點 - >傳輸節點 - >輸出節點。 音頻流在輸出節點的輸出中看起來沒問題(這是一個float32流,它沒有右揚聲器的交錯零)。
拓撲中的Transfer-Node用於未來的均衡器,但目前它什麼也不做。即使我從拓撲中刪除它,問題仍然會發生。
我想這個問題可能發生是因爲Media Foundation的某些配置錯誤,但我還沒有發現任何關於Media Foundation Guide的順序。
任何想法可能是什麼問題? 我很樂意分享相關代碼示例或給出有關我的實現的任何其他相關信息。
謝謝。
您好托馬斯, 謝謝您的答覆。 – Noam
能不能介紹一下如何制定檢索媒體類型我嘗試使用GetInputPrefType(),但到目前爲止我無法使它工作,我不確定這是什麼意思。 – Noam
要獲得節點的實際媒體類型,您必須獲取節點的因爲這個問題很可能與源代碼有關,我可能會首先在那裏檢查,爲了得到源的媒體類型,使用來自IMFMediaSource的流描述符,Source-> CreatePresentationDescriptor-> GetStreamDescriptorByIndex-> GetMediaTypeHandler-> GetCurrentMediaType如何做到這一點的流程。關於如何建立的代碼d如果沒有幫助,您的拓撲結構將對提供確切的詳細信息非常有用。 – ThomasP