2010-02-07 7 views
1

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

ответ

2

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

Смежные вопросы