Потоковое аудио по протоколу Icecast с использованием Objective-C

Можно ли использовать Objective-C для трансляции звука по протоколу Icecast?

Для Node.JS я нашел библиотеку nicercast, которая, кажется, работает очень хорошо. Есть ли эквивалент Objective-C с открытым исходным кодом или мне нужно реализовать протокол самостоятельно?

Что мне нужно знать, если мне придется реализовать протокол самостоятельно? Из библиотеки Node.JS я видел, что по сути сервер транслирует MPEG-поток, используя обычный веб-сервер и просто отправляя необработанные данные клиенту.

Содержит ли этот поток MPEG метаданные или мне нужно отправить его отдельно?

заранее спасибо


person Leo Bernard    schedule 12.01.2015    source источник
comment
Чтобы было ясно, вы на самом деле не пытаетесь создать исходный клиент для Icecast ... вы пытаетесь создать сервер прогрессивной потоковой передачи HTTP, совместимый с Icecast / SHOUTcast в Objective C?   -  person Brad    schedule 14.01.2015
comment
См. Также: stackoverflow.com/questions/9239022/ Кроме того, в наши дни Icecast поддерживает простой запрос HTTP PUT. Я рекомендую идти этим маршрутом.   -  person Brad    schedule 14.01.2015
comment
Спасибо. Я займусь этим.   -  person Leo Bernard    schedule 14.01.2015


Ответы (1)


Почему бы вместо этого не транслировать на сервер Icecast? Он достаточно мал, чтобы без проблем работать даже на встроенных устройствах. Реализация nicercast нигде не близка к тому, чтобы быть "совместимой с Icecast", как они утверждают. Если вы хотите узнать почему, посмотрите источники Icecast или, например, поддерживаемые форматы.

Я знаю, что изобретать велосипед - плохо и не полностью - модно. Но я хотя бы напомню вам, что это не обязательно хорошая идея.

person TBR    schedule 13.01.2015
comment
Спасибо за подсказку. Как вы думаете, можно ли встроить сервер Icecast в приложение таким образом, чтобы его можно было отправить в Mac App Store? Кроме того, есть ли библиотека для Objective-C, которая позволяет мне транслировать на сервер Icecast? - person Leo Bernard; 13.01.2015
comment
Я знаю, что Nicecast делает что-то подобное. Они собирают свою собственную сборку Icecast и предоставляют ее исходники / исправления по запросу (для соответствия). Пожалуйста, убедитесь, что вы соблюдаете лицензию Icecast (GPLv2). Здесь перечислены известные в настоящее время привязки libshout к языкам программирования: icecast.org/download/#bindings - Я не знаком с Objective-C, но он может просто использовать libshout как библиотеку C. - person TBR; 28.01.2015