Как воспроизвести несколько аудио файлов? - PullRequest
1 голос
/ 29 сентября 2011

Хотя вопрос звучит простой и очень простой для ответа - но я не нашел полного ответа ни в одной книге / форуме / сайте.

Быстрый фон моего приложения:

У меня есть зависимый / множественный UI Picker (2 UI Pickers - давайте назовем их P1 и P2), UITEXTVIEW и полоса внизу экрана. в панели у меня есть такие кнопки, как «Воспроизвести», «Пауза», «Перемотка назад» и «Вперед», каждый раз, когда я прокручиваю UIpicker P1, значение Picker p2 изменяется и, соответственно, текст в UITextView.

Мне нужно встроить 700 файлов mp3 в мое приложение (не удивляйтесь идее помещения в приложение такого количества файлов - общий размер всех mp3 составляет 49 мегапикселей, каждый из них - 20-секундный файл и с очень низким битрейтом) , Я хочу воспроизвести каждый mp3-файл в соответствии со значением в Pickers.

вот поток -> я прокручиваю P1 -> значение в P1 Changes -> значение изменений P2 -> текст в TextView изменяется.

Это похоже на "Главы" в P1 и номер абзаца в P2 и фактический текст абзаца в TextView.

после этого я хочу встроить mp3-файлы, чтобы с соответствующими полями в селекторах (P1 и P2) mp3 в «play», «pause», «Rewind» и «Forward» также менялись.

Мои требования следующие:

при изменении значения средства выбора файл mp3, указанный в кнопке «воспроизведение», должен измениться соответствующим образом.

Моя идея в отношении моего требования:

  1. Для воспроизведения mp3-файлов я должен поместить их в папку ресурсов и отослать их с помощью NSBundle
  2. Возможно, мне придется создать массив NSDictionary для ссылки на имена файлов mp3
  3. Возможно, мне придется создать метод (проверка mp3-файлов на основе значений средств выбора), который будет помещен в секцию rowdidselect в UIPicker.

Ребята - Пожалуйста, помогите мне в этом. Ваши идеи, комментарии, ответы и предложения будут полезны.

Пожалуйста, внесите: -)

Заранее спасибо: -)

1 Ответ

0 голосов
/ 29 сентября 2011

Я бы сказал, что у вас есть разумный подход, который в значительной степени определен.Существует несколько способов достижения этой цели, но ваш разумный.Почему бы не попробовать?

Я бы просто предложил один AVPlayer и загружал один клип за раз.Не сохраняйте загруженные клипы после загрузки нового клипа.Поскольку вам, по-видимому, нужно проигрывать только один файл за раз, это сделает один игрок и освободит память, когда вы дадите ей новый клип для воспроизведения.Поскольку вы ссылаетесь на iOS и ваши файлы невелики, их загрузка должна быть достаточно эффективной.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...