We try to create a Tapestry-service that generates a Shoutcast stream. The
problem is that the shoutcast response must have a status line that reads:

ICY 200 OK

Instead, the status line we get is always:

HTTP/1.1 200 OK

Many mediaplayers (WinAmp, Xmms, iTunes) accept the header with HTTP status
line, but some do not. The ICY header is incorrect according to RFC 2616 and I
have been unable to generate a response with this status line.

Does somebody have a clue on how we could spit out a response with the ICY
like status line in it? Any help is appreciated.



The code we use now is basically like this:

private WebResponse _response;

[...]

        private OutputStream initOutputStream(boolean metadata) throws 
IOException {
                OutputStream out = _response.getOutputStream(new 
ContentType("audio/mpeg"));
                
                //Spit out Shoutcast-headers.
                _response.setHeader("icy-notice1","<BR>This stream requires <a
href=\"http://www.winamp.com/\";>Winamp</a><BR>");
                _response.setHeader("icy-notice1","MusiController
SHOUTcast-implementation<BR>");
                _response.setHeader("icy-name","MusiController");
                _response.setHeader("icy-genre","All sorts");
                
_response.setHeader("icy-url","http://musicontroller.sourceforge.net";);
                _response.setHeader("icy-pub","1");
                _response.setHeader("icy-br","192");
                if (metadata) _response.setIntHeader("icy-metaint",BUFFER_SIZE);
                
                log.debug("Outputstream initialized");
                
                return out;
        }
[...]

    public void setResponse(WebResponse response) {
        _response = response;
    }   


----
Hans Drexler


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to