4

こんにちは、iOS で Shoutcast ラジオのメタデータを解析しようとしています。

提出された多くの解決策を試した後、まだエラーが発生しているコードの一部に行き着きました

応答文字列: ICY 404 リソースが見つかりません icy-notice1:
SHOUTcast Distributed Network Audio Server/Linux v1.9.8
icy-notice2: 要求されたリソースが見つかりませんでした

メタデータを解析しようとしているコード

NSURL *url = [NSURL URLWithString:@"http://relay.181.fm:8052/7.html"];

NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:url cachePolicy:NSURLRequestUseProtocolCachePolicy timeoutInterval:15.0];

   [request addValue:@"1" forHTTPHeaderField:@"icy-metadata"];
   [request addValue:@"Winamp 5/3" forHTTPHeaderField:@"User-Agent"];
   [request addValue:@"audio/mpeg" forHTTPHeaderField:@"Content-Type"];

[request setHTTPMethod:@"GET"];

NSData *data = [NSURLConnection sendSynchronousRequest:request returningResponse:nil error:nil];

NSString* responseString = [[NSString alloc] initWithData:data encoding: NSUTF8StringEncoding];

NSLog(@"Response String: %@", responseString);

問題についてのアイデア、助けてくれてありがとう

4

3 に答える 3

4

すべての SHOUTcast サーバーが へのアクセスを許可しているわけではありません7.html。そのデータを取得するには、他に 2 つの方法があります。

SHOUTcast の XML データは一般公開されていますが、サーバーのパスワードが必要です。を使用してリクエストできます/admin.cgi?mode=viewxml&page=4

メタデータをストリームから直接読み取ることもできます。これはより面倒ですが、完全に可能であり、それほど難しくありません。詳細については、この回答を参照してください: https://stackoverflow.com/a/4914538/362536

于 2012-11-26T20:36:35.560 に答える
0

ストリームからメタデータを読み取れない/読み取りたくない人のための解決策を見つけました。私が見た中で最も簡単な解決策です。

http://www.fvalente.org/blog/2012/03/15/shoutcast-metadata-the-easy-way/

ブラッドは上記の投稿で次のように述べています

すべての SHOUTcast サーバーが 7.html へのアクセスを許可しているわけではありません。

そのため、メタデータを取得するサーバーに /7.html ページがあるかどうかを確認することをお勧めします

于 2012-11-27T08:59:45.923 に答える
0

現在の曲は /played.html ページにも表示されますが、/7.html と共に Web ブラウザーで動作します。しかし、Windowsマシンでfiddler2を試したところ、ICY 404リソースが見つからないというエラーが発生しました

于 2014-03-24T11:19:03.243 に答える