1
|
# Shoutcast and Icecast - streaming audio
|
2
|
# Pattern attributes: good slow notsofast
|
3
|
# Protocol groups: streaming_audio
|
4
|
# Wiki: http://www.protocolinfo.org/wiki/Icecast
|
5
|
# Copyright (C) 2008 Matthew Strait, Ethan Sommer; See ../LICENSE
|
6
|
#
|
7
|
# usually runs on port 80
|
8
|
#
|
9
|
# Original pattern contributed by Deepak Seshadri <dseshadri AT
|
10
|
# broadbandmaritime.com> who says "The difference between [Shoutcast and
|
11
|
# Icecast] is not clearly mentioned anywhere. According to this
|
12
|
# document, my pattern would filter JUST shoutcast packets."
|
13
|
#
|
14
|
# Should now match both Shoutcast and Icecast. Tested with Winamp (in
|
15
|
# 2005) and Totem using streams at dir.xiph.org (in Nov 2007).
|
16
|
#
|
17
|
# http://sander.vanzoest.com/talks/2002/audio_and_apache/
|
18
|
# http://forums.radiotoolbox.com/viewtopic.php?t=74
|
19
|
# http://www.icecast.org
|
20
|
|
21
|
shoutcast
|
22
|
# The first branch looks for an HTTP request that looks like it is asking for
|
23
|
# a SHOUTcast stream. The second branch looks for the server's reply. However,
|
24
|
# some (newer?) servers answer with "http/1.0 200 OK", not "ICY 200 OK", so
|
25
|
# this will not work.
|
26
|
# This pattern was discovered using Ethereal.
|
27
|
^get /.*icy-metadata:1|icy [1-5][0-9][0-9] [\x09-\x0d -~]*(content-type:audio|icy-)
|