# HG changeset patch
# User reimar
# Date 1203107470 0
# Node ID c6ec51cc3b138a8724a4d3de0be06437be0126a1
# Parent 84eb56d278b278bd162fa4312acde3a5550993d1
Move printing of Icy-Metadata into an extra function
diff -r 84eb56d278b2 -r c6ec51cc3b13 stream/http.c
--- a/stream/http.c Fri Feb 15 20:23:59 2008 +0000
+++ b/stream/http.c Fri Feb 15 20:31:10 2008 +0000
@@ -716,6 +716,23 @@
}
}
+static void print_icy_metadata(HTTP_header_t *http_hdr) {
+ const char *field_data;
+ // note: I skip icy-notice1 and 2, as they contain html
+ // and are IMHO useless info ::atmos
+ if( (field_data = http_get_field(http_hdr, "icy-name")) != NULL )
+ mp_msg(MSGT_NETWORK,MSGL_INFO,"Name : %s\n", field_data);
+ if( (field_data = http_get_field(http_hdr, "icy-genre")) != NULL )
+ mp_msg(MSGT_NETWORK,MSGL_INFO,"Genre : %s\n", field_data);
+ if( (field_data = http_get_field(http_hdr, "icy-url")) != NULL )
+ mp_msg(MSGT_NETWORK,MSGL_INFO,"Website: %s\n", field_data);
+ // XXX: does this really mean public server? ::atmos
+ if( (field_data = http_get_field(http_hdr, "icy-pub")) != NULL )
+ mp_msg(MSGT_NETWORK,MSGL_INFO,"Public : %s\n", atoi(field_data)?"yes":"no");
+ if( (field_data = http_get_field(http_hdr, "icy-br")) != NULL )
+ mp_msg(MSGT_NETWORK,MSGL_INFO,"Bitrate: %skbit/s\n", field_data);
+}
+
//! If this function succeeds you must closesocket stream->fd
static int http_streaming_start(stream_t *stream, int* file_format) {
HTTP_header_t *http_hdr = NULL;
@@ -761,20 +778,7 @@
switch( http_hdr->status_code ) {
case 200: { // OK
char *field_data;
- // note: I skip icy-notice1 and 2, as they contain html
- // and are IMHO useless info ::atmos
- if( (field_data = http_get_field(http_hdr, "icy-name")) != NULL )
- mp_msg(MSGT_NETWORK,MSGL_INFO,"Name : %s\n", field_data);
- if( (field_data = http_get_field(http_hdr, "icy-genre")) != NULL )
- mp_msg(MSGT_NETWORK,MSGL_INFO,"Genre : %s\n", field_data);
- if( (field_data = http_get_field(http_hdr, "icy-url")) != NULL )
- mp_msg(MSGT_NETWORK,MSGL_INFO,"Website: %s\n", field_data);
- // XXX: does this really mean public server? ::atmos
- if( (field_data = http_get_field(http_hdr, "icy-pub")) != NULL )
- mp_msg(MSGT_NETWORK,MSGL_INFO,"Public : %s\n", atoi(field_data)?"yes":"no");
- if( (field_data = http_get_field(http_hdr, "icy-br")) != NULL )
- mp_msg(MSGT_NETWORK,MSGL_INFO,"Bitrate: %skbit/s\n", field_data);
-
+ print_icy_metadata(http_hdr);
// If content-type == video/nsv we most likely have a winamp video stream
// otherwise it should be mp3. if there are more types consider adding mime type
// handling like later