2
我想使用Windows Media Foundation獲取AAC編碼文件的音頻數據。我發現正確的方法是聲明一個IMFSample *,其中將保留單個音頻樣本。在VS2015中,我看到這個類有一個方法getDouble(),但在MSDN documentation中沒有任何關於它的內容。Windows Media Foundation:獲取AAC解碼數據
下面是例子,我試圖做的部分:
IMFSample *pSample(NULL);
hr = m_pReader->ReadSample(
MF_SOURCE_READER_FIRST_AUDIO_STREAM, // [in] DWORD dwStreamIndex,
0, // [in] DWORD dwControlFlags,
NULL, // [out] DWORD *pdwActualStreamIndex,
&dwFlags, // [out] DWORD *pdwStreamFlags,
×tamp, // [out] LONGLONG *pllTimestamp,
&pSample); // [out] IMFSample **ppSample
最後一個參數pSample就是我想要的。
現在,我想獲得雙倍,浮點或字節指針,當前的已解碼的示例數據。
這怎麼辦?
在此先感謝。
感謝您的答覆邁克。我有另一個問題。我們將從這裏得到的數據是未解碼的權利? – mbaros
@mbaros這將是解碼數據 - 表示原始樣本的浮點數[範圍爲0到1.0]。 –