Я пытаюсь преобразовать объект MPMediaItem в объект NSData, чтобы воспроизвести его с помощью AVAudioPlayer. Следующий ответ был опубликован некоторое время назад на аналогичный вопрос с инструкциями о том, как это сделать:
Необработанные данные песни MPMediaItems
Конечно, вы можете получить доступ к данным MPMediaItem. Это не кристально ясно сразу, но это работает. Вот как:
Получить URL-адрес элемента мультимедиа из его свойства MPMediaItemPropertyAssetURL Инициализировать AVURLAsset с помощью этого URL-адреса Инициализировать AVAssetReader с помощью этого актива Получить AVAssetTrack, который вы хотите прочитать из AVURLAsset Создать AVAssetReaderTrackOutput с этой дорожкой Добавить этот вывод в AVAssetReader, созданный ранее, и -startReading Получить все данные с AVAssetReaderTrackOutput's -copyNextSampleBuffer ПРИБЫЛЬ!
После извлечения данных с помощью «copyNextSampleBuffer» у меня теперь есть объект CMSampleBufferRef. Как мне продолжить отсюда?
Спасибо, Гили.