2
我試圖寫最小的代碼塊來縮小問題。現在只是幾行,它不起作用,這很明顯,我對如何使用AudioFileReadPackets有一個基本的誤解。我在網上閱讀了文檔和其他示例,顯然我沒有收到。你能解釋給我嗎?我只是沒有得到AudioFileReadPackets
以下是該塊應該做的事情:我以前打開過一個文件。我只想讀取一個數據包 - 文件的第一個數據包 - 然後打印出來。但它崩潰的AudioFileReadPackets行:
AudioFileID mAudioFile2;
AudioFileOpenURL (audioFileURL, 0x01, 0, &mAudioFile2);
UInt32 *audioData2 = (UInt32 *)malloc(sizeof(UInt32) * 1);
AudioFileReadPackets(mAudioFile2, false, NULL, NULL, 0, (UInt32*)1, audioData2);
NSLog(@"first packet:%i",audioData2[0]);
(爲了清楚起見,我已經去掉了所有的錯誤處理。)
這是AFRP行崩潰了。我知道第三個和第四個參數是有用的,在我的「真實」代碼中,我使用它們,但它們不是必需的,對吧?因此,在這種情況下NULL應該工作,對嗎?)這是怎麼回事?
任何指導將不勝感激。
謝謝。