Вот статья о том, как этого добиться с помощью Wowza

аюсь создать функцию потокового видео DVR в приложении, которое я разрабатываю. У меня есть HTTP Live Stream, который я успешно воспроизвел на iPad. Я хочу, чтобы пользователь мог нажать кнопку «Запись» и начать запись видео, которое в данный момент воспроизводится с этой точки. Этот видеофайл будет доступен из приложения или с камеры. В настоящее время я использую объект MPMoviePlayerController для воспроизведения видеопотока. Я не вижу никаких методов доступа к данным из объекта в документации Apple. Вот некоторые мысли о том, как это сделать.

1) Каким-то образом получить доступ к видеоданным из MPMoviePlayerController и записать их в файл. Или используйте другой тип объекта проигрывателя, который позволит мне воспроизводить видео и получать доступ к текущим воспроизводимым данным.

2) Реализовать какую-нибудь запись захвата экрана, которая получает видео захват экрана iPad. Это позволило бы мне записать видео в виде «скриншота».

3) Найдите сегменты HTTP Live Streaming, где они хранятся в MPMoviePlayerController. Предположительно они должны храниться где-то на iPad для воспроизведения. Есть ли способ доступа к этим файлам?

4) Вручную загрузите сегменты потокового видео через http во время потоковой передачи файла. Это кажется не идеальным, так как поток должен быть загружен дважды.

5) Это может сработать. Периодически загружайте видеофрагменты на iPhone. Настройте локальный http-сервер на iPhone и отправьте видео на MPMoviePlayerController. Таким образом, видео сегменты могут быть помечены для записи и собраны в видео.

6) У меня есть контроль над потоковым сервером. Я мог бы написать код на стороне сервера, чтобы записать видео на стороне сервера, а затем отправить видео на iPad по факту. Я бы предпочел не делать этого.

Кто-нибудь сделал что-нибудь из этого? В идеале iPhone должен был бы как-то получить доступ к видеоданным и легко их записать. Я бы предпочел не входить в варианты 4, 5 или 6 (выше), если бы мне не пришлось.

Заранее спасибо.

Ответы на вопрос(1)

Ваш ответ на вопрос