2016-06-21 8 views
1

Моя основная цель - воспроизвести поток RTP на iOS.RTSP и iOS: как справиться с этим?

Часто предлагается использовать FFMPEG, но при условии, что это LGPL. У меня есть сомнения относительно совместимости его лицензии и App Store.

Как я знаю, мои медиа - это H.264, моя идея заключалась в том, чтобы глубже проникнуть в RTSP и RTP и «просто» декодировать полезную нагрузку, чтобы передать ее AVPlayer.

Я пропустил что-то здесь? Будет ли это намного сложнее, чем я себе представляю?

Или, с другой стороны, есть библиотеки (которые я не видел до сих пор), которые помогают мне здесь?

+1

Отметьте это сообщение http://stackoverflow.com/questions/29525000/how-to-use-videotoolbox-to-decompress-h-264-video-stream?lq = 1 – BilalReffas

+0

, если вы готовы использовать некоторые рамки, тогда вы можете попробовать этот https://red5pro.com/ –

ответ

2

RTSP и RTP потоки могут быть сложными и сложными для отображения, особенно RTSP, поскольку этот протокол известен (неверно) интерпретируется многими производителями серверов. Написав собственный сетевой стек, сделайте свой собственный демультиплексор и подайте видеопоток видео в VideoToolbox, конечно, возможно, но потребуется время, особенно если вы также заботитесь об аудио и хотите играть как в синхронизации.

Я могу порекомендовать вам взглянуть на фреймворк MobileVLCKit, который в своей последней (предварительной версии) версии включает аппаратный декодер VideoToolbox и может прозрачно отказываться от программного декодера по мере необходимости (например, на iOS 7, где VT недоступен или если профиль кодека, используемый в потоке, не соответствует возможностям аппаратного декодера, включенного в устройство).

VLCKit находится под LGPLv2.1, который совершенно безопасен для развертывания в магазине приложений iOS, если вы следуете за лицензией (см. Атрибуцию, переупаковку, публикацию возможных патчей, ...). При необходимости он поставляется в статических и динамических ароматах.

Чтобы попробовать текущую версию dev, попробуйте использовать cocoapod «MobileVLCKit-unstable» в версии «3.0.0a7». К концу лета мы планируем отправить окончательную версию.

Полное раскрытие информации: Я являюсь одним из главных авторов вышеупомянутой библиотеки. Приятно помочь на эту тему в целом :)