давний читатель, впервые спрашивающий ...
Я делаю музыкальное приложение, которое использует AVAssetReader для чтения mp3-данных из библиотеки itunes. Мне нужна точная синхронизация, поэтому, когда я создаю AVURLAsset, я использую «AVURLAssetPreferPreciseDurationAndTimingKey» для извлечения данных синхронизации. Это накладные расходы (и у меня нет проблем, когда я им не пользуюсь, но он мне нужен!)
Все отлично работает на iphone (4) и ipad (1). Я бы хотел, чтобы он работал на моем iPod Touch (2-го поколения). Но это не так: если звуковой файл слишком длинный (> ~ 7 минут), AVAssetReader не может начать чтение и выдает ошибку (ошибка AVFoundationErrorDomain -11800.)
Похоже, я упираюсь в стену с точки зрения ресурсов сканера iPod Touch. Есть идеи, что происходит, или как управлять накладными расходами на создание AVURLAsset, чтобы он мог обрабатывать длинные файлы? (Я пробовал запускать это с помощью инструментов повышения производительности, и я не вижу значительного всплеска памяти).
Спасибо, Дэн