ios - icecast2 - linux audio streaming server
Conexión de socket abierta con el servidor Icecast en iOS (1)
Intento crear un cliente de origen para un servidor de Icecast en iOS.
Creo que entiendo el protocolo aquí Icecast 2: descripción del protocolo, transmitiéndolo usando C #
Sin embargo, tengo problemas para crear la conexión de socket al servidor. Supongamos que el servidor se está ejecutando en el puerto 8000 en http://myicecastserver.com . Configuro un punto de montaje llamado stream que funciona cuando se usa ezstream como entrada. ¿Cómo debo abrir la conexión desde iOS?
He utilizado la biblioteca AsyncSocket de esta manera:
[socket connectToHost:@"http://myicecastserver.com" onPort:8000 error:&err];
Me gusta esto:
[socket connectToHost:@"http://myicecastserver.com/stream" onPort:8000 error:&err];
en vano.
También intenté usar una conexión websocket con SocketRocket sin ningún resultado:
SRWebSocket *socket = [[SRWebSocket alloc] initWithURL:[NSURL URLWithString:@"http://myicecastserver.com:8000/stream"]];
[socket setDelegate:self];
[socket open];
esto me da un error 404
¡He intentado algunas variaciones sobre esto pero no puedo abrir esta conexión para salvar mi vida! ¡Gracias!
ACTUALIZAR
Estoy usando SocketTest como cliente de prueba y puedo conectarme a http://myicecastserver.com en el puerto 8000
Mi solución es la siguiente:
Estoy usando la biblioteca AsyncSocket así:
[socket connectToHost:@"myicecastserver.com" onPort:8000 error:&err];
el truco fue eliminar ''http: //'' (sí, soy así de tonto) y luego, al conectar, puedo enviar los encabezados correctos.