1

iOSでIcecastサーバーのソースクライアントを作成しようとしています。

私はここでプロトコルを理解していると思いますIcecast2:プロトコルの説明、C#を使用してそれにストリーミング

ただし、サーバーへのソケット接続を作成するのに問題があります。サーバーがhttp://myicecastserver.comのポート8000​​で実行されているとします。ezstreamを入力として使用するときに機能するstreamというマウントポイントを設定します。iOSから接続を開くにはどうすればよいですか?

私は次のようにAsyncSocketライブラリを使用しました:

[socket connectToHost:@"http://myicecastserver.com" onPort:8000 error:&err];

このような:

[socket connectToHost:@"http://myicecastserver.com/stream" onPort:8000 error:&err];

無駄に。

また、SocketRocketとのWebSocket接続を使用してみましたが、役に立ちませんでした。

SRWebSocket *socket = [[SRWebSocket alloc] initWithURL:[NSURL URLWithString:@"http://myicecastserver.com:8000/stream"]];
[socket setDelegate:self];
[socket open];

これは私に404エラーを与えます

私はこれについていくつかのバリエーションを試しましたが、私の命を救うためにこの接続を開くことができません!ありがとう!

アップデート

SocketTestをテストソースクライアントとして使用しており、ポート8000​​でhttp://myicecastserver.comに接続できます。

4

1 に答える 1

1

私の解決策は次のとおりです。

私は次のようなAsyncSocketライブラリを使用しています:

[socket connectToHost:@"myicecastserver.com" onPort:8000 error:&err];

秘訣は「http://」を削除することでした(そうです、私はばかげています)。接続すると、正しいヘッダーを送信できます。

于 2012-11-02T23:58:32.797 に答える