iPhone: потоковая передача HTTP без какой-либо обработки на стороне сервера - PullRequest
2 голосов
/ 03 ноября 2010

Я хочу иметь возможность (в прямом эфире) передавать кадры / видео с камеры iPhone в Интернет. В потоке ( потоковое видео с iPhone ) я видел, что это возможно с помощью beginConfiguration и commitConfiguration в AVCaptureSession. Но я не знаю, как начать разработку этой задачи. Уже есть много уроков о том, как транслировать видео на iPhone, и это не то, что я ищу.

Не могли бы вы, ребята, дать мне какие-нибудь идеи, которые могли бы помочь мне в дальнейшем?

1 Ответ

3 голосов
/ 19 февраля 2011

Это сложно.Вы должны быть в состоянии сделать это, но это будет нелегко.

Один из способов, которым нельзя было бы жить (не отвечая вашим потребностям, но заслуживая упоминания), - это сделать снимок с камеры и сохранить его в видеофайл.см. AV Foundation Guide о том, как это сделать.После сохранения вы можете использовать сегментатор HTTP Live Streaming для генерации правильных сегментов.У Apple есть приложения для Mac OSX, но есть и версия с открытым исходным кодом, которую можно адаптировать для iOS.Кроме того, вам также потребуется запустить http-сервер для обслуживания этих сегментов.Существует множество http-серверов, которые вы можете адаптировать.

Но для того, чтобы сделать это вживую, сначала, как вы уже обнаружили, вам нужно собрать кадры с камеры.Если у вас есть те, которые вы хотите конвертировать в h.264.Для этого вы хотите ffmpeg.По сути, вы отправляете изображения в AVPicture ffmpeg, создавая поток.Затем вам нужно будет управлять этим потоком, чтобы живой потоковый сегментатор распознал его как живое потоковое устройство h.264.Я не уверен, как это сделать, и это звучит как серьезная работа.Как только вы это сделаете, вам понадобится http-сервер, обслуживающий этот поток.

Что может быть проще, так это использовать поток на основе RTP / RTSP.Этот подход охватывается версиями RTP с открытым исходным кодом, и ffmpeg полностью это поддерживает.Это не http прямая трансляция, но она будет работать достаточно хорошо.

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