Одновременно поток и сохраняет видео?

Как только я сделал, чтобы бывший клиент позвонил мне просящий любой совет, который я имел при ускорении их приложений.

Он, казалось, ожидал, что я скажу вещи как "проверка X, затем проверю Y, затем проверю Z", другими словами, для обеспечения эксперта предполагает.

я ответил, что необходимо диагностировать проблему. Мои предположения могли бы быть неправильными менее часто, чем чужой, но они все еще будут неправы, и поэтому неутешительны.

я не думаю, что он понял.

17
задан Esteban Küber 29 August 2009 в 14:15
поделиться

2 ответа

На ум приходят два решения. Оба этих решения требуют, чтобы файл был в формате, который можно воспроизводить в прогрессивном формате, например, чтобы вам не нужен был весь файл, чтобы его можно было воспроизвести (но это все равно было бы предварительным условием).

  1. используйте поток для загрузить данные и добавить их в файл, а затем воспроизвести файл из другого потока. Теперь для этого требуется, чтобы вы могли обрабатывать события EOF в MPMoviePlayerController и приостанавливать воспроизведение до тех пор, пока кеш-файл не будет добавлен, а затем возобновить его с той же точки.

До сих пор я видел, как люди делали это, это не сработало потому что MPMoviePlayerController не может обработать событие EOF. (сам еще не тестировал) [ Кэширование видео на диск после успешной предварительной загрузки с помощью MPMoviePlayerController

  1. Пропустите воспроизведение из файла и настройте локальный HTTP-сервер и поток с него (на localhost). Это тоже не проверено. Идея состоит в том, что MPMoviePlayerController будет лучше обрабатывать событие отсутствия данных из потока HTTP, чем из прямого чтения файла. Обратной стороной может быть то, что он менее эффективен, но я думаю, что это незначительное увеличение ЦП. Я не знаю, справится ли с этим сетевой интерфейс, но предполагаю, что это не проблема.

Я оставляю этот ответ как вики, потому что у меня нет рабочего решения, но я тоже хочу его.

1143887]

11
ответ дан 30 November 2019 в 14:21
поделиться

iPhone использует прогрессивную загрузку, поэтому она не будет сохраняться на устройстве. Для этого вам необходимо явно загрузить его, а затем воспроизвести видео из вашей локальной папки.

1
ответ дан 30 November 2019 в 14:21
поделиться
Другие вопросы по тегам:

Похожие вопросы: