Потоковое видео с сервера. {iPhone SDK} - PullRequest
1 голос
/ 07 февраля 2010

Я пытаюсь транслировать видео со статического IP: http://38.117.88.148/GemTVLink через айфон. Можете ли вы показать мне некоторую информацию о том, как я мог бы реализовать это? Я вижу приложение Apple Video Stream, но кажется, что оно может показывать только .mp4 фильмы? Я прав? Я хочу, чтобы мое приложение загружало адрес HTTP и проигрывало фильм, вот и все. Эта ссылка работает на медиаплеере.

Ответы [ 2 ]

3 голосов
/ 07 февраля 2010

iPhone не поддерживает все форматы потокового видео.

Вы должны начать с чтения HTTP Live Streaming Overview

2 голосов
/ 03 марта 2013

Собственный видеоплеер iOS (AVPlayer, MPMoviePlayerViewController ...) может транслировать с http-сервера в формате m3u8.

Я посмотрел на ссылку, которую вы упомянули (GemTVLink), это поток mms, iOS не может передавать с потоковых серверов Microsoft (mms), если вы хотите сделать это, вы должны использовать библиотеку ffmpeg, так как эта библиотека может подключите любой потоковый сервер (поддерживающий rtsp, mms, tcp, udp, rtmp ...) и затем рисуйте картинки на экране .. (для рисования вы можете использовать opengles или uiimage также работает)

Прежде всего, используйте avformat_open_input для подключения к вашему IP-адресу, затем используйте avcodec_find_decoder & avcodec_open2, чтобы найти кодеки и открыть их (вы должны вызывать их как для аудио, так и для видео)

Затем в цикле while читайте пакеты с сервера, используя метод av_read_frame. Когда вы получаете кадр, если это аудио, затем отправляете его в AudioUnit или AudioQueue, если это видео, затем конвертируйте его из формата yuv в формат rgb, используя sws_scale. метод и нарисовать картинку на экран.

Вот и все.

посмотрите также на эту оболочку (http://www.videostreamsdk.com), она написана в библиотеке ffmpeg и поддерживает iOS

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