sorry for the attachments, but I've been trying to get this to work for the past several hours, and I must be doing something wrong. I've gone threw the configuration files for shout, and icecast-server to try and set it up the way I want it. right now I'm not worried about what is displayed to people for names of songs and stuff, I just want to get it up and running to get it to stream audio. The problem is this. when I try to run shout to have it stream audio I get this error. Unknown host: [ dmwaters.homeip.net I've matched the host in shout.conf with the host in icecast.conf so apparrently I'm missing something. can someone please tell me what I'm missing?:p -------------- next part -------------- # This be a comment, I like comments. # To use this file, copy it to etc/icecast.conf in the icecast base directory ################################################################################ # I suggest you read this file carefully, and don't do anything silly # cause the configuration file parser is pretty lame. # If not stated otherwize, you can change these while the server is # running (through the admin console). Or by changing this file # and using the rehash command (or (if supported) sending SIGHUP) # Please use the admin console though, cause that's what its there for :) ################################################################################ ############### Server Location and Resposible Person ########################## # Server meta info, please fill out these. # They get displayed when listing directories, streams, and # if the client supports it, among the other stream headers. # You can put anything here, it's just for show. ############### location Florida rp_email none server_url http://dmwaters.homeip.net ########################### Server Limits ###################################### # These describe the maximum number of simultaneous connections allowed. # When reached, the server will refuse access. # There is a builtin bandwidth measuring tool inside the icecast server, # and when icecast thinks that it is using more than "throttle" MB/s, then # no clients or sources will be allowed until the bandwidth usage goes back # down below the limit. Use this with caution, since the bandwidth measurement # is in no way an exact science. ########################### max_clients 900 max_clients_per_source 900 max_sources 10 max_admins 5 throttle 10.0 ########################## Stream Meta Data #################################### # This is a experimental feature, at best. # When it does not work, it will put the whole stream out of synk on the client # side, and you will get a big mess. # use_meta_data controls whether this icecast server will use title streaming at # all. It's turned off by default, cause it creates chirps in the # stream if you're not careful. # streamtitletemplate is a the template for creating the title that gets sent to # the client and the directory server. %s will be # substituted for the actual filename. # streamurl is the default url for each stream. # nametemplate is a template for the name of each stream. # desctemplate is a template for the description of each stream. ########################## use_meta_data 0 streamurllock 0 streamtitletemplate %s streamurl http://dmwaters.homeip.net nametemplate %s desctemplate %s ######################## Mountpoint fallback ################################### # By default, if a user requests a stream that is not found, this user will be # given the default stream instead. The default stream is per default the oldest # stream on the server, but this can be changed with the priority value in the # 'modify' command. # If you don't want the user to get the default mount, but instead a # HTTP 404 Stream Not Found, then set this to 0 ######################## mount_fallback 1 ######################### Server passwords ##################################### # Unless you've compiled icecast with crypt support, # i.e with --with-crypt as an argument to the configure script, # then these are in cleartext. If you _do_ have crypt support, then # you have to create a crypted version of the password. You can do this # with the included mkpasswd.c program. Just compile it with # "gcc -o mkpasswd mkpasswd.c", perhaps with the -lcrypt option. ######################### encoder_password simba admin_password simba1446 oper_password simba ######################## Directory servers ##################################### # A directory server is a "meta-server" where you, for free, can list # your own icecast server. This is a great way of getting more listeners. # The touch_freq is how often to "update" the directory server with information # from your server. (e.g number of listeners, stream info, etc..) ######################## #icydir yp.shoutcast.com #icydir yp.breakfree.com #icydir yp.musicseek.net #icydir yp.van-pelt.com #icydir yp.radiostation.de #directory yp.icecast.org #directory yp.mp3.de #directory yp.dmzs.com touch_freq 5 ############# Server IP/port configuration (IMPORTANT) ######################### # If no hostname is specified, icecast will listen on all available interfaces, # i.e INADDR_ANY. This is probably what you want. # If you want icecast to _only_ listen on a specified ip, then change the # "hostname" parameter. The "port" parameter is rather self-explanatory. # As of icecast 1.3, all connections use port 8000. Admins, encoders, clients, # the whole thing. So no more messing with 3 different ports in the firewall # rules. # The server_name can currently ONLY be specified here, and ONLY when you start # the server. Changing it later on will not have the desired effect. # The server_name specifies the hostname of the server, don't set it to an ip, # and don't even THINK about setting it to a hostname not pointing to your ip. # - WARNING - WARNING - WARNING - (important, get it?) # It is VERY important that this server_name does actually resolv to the ip you # are running your server at. If not, BAD THINGS<tm> will happen. # E.g localhost is definately probably not what you want :) # Using your ip will probably work.. but it will look nicer with your hostname. # The problem is that if you specify something that doesn't resolve to yourself, # then virtual host support will get fscked up, and default server action # might not work either. # Also, changing the port here will not affect the server when doing a 'rehash' # since binding to a port is done only once, when the server is started. # server is started. # Users on dialup connections with dynamic ip:s are in trouble here, I know. # You will just have to live without the virtual hosts support, cause there is # no portable way of getting all the ip:s the process is binding to. Either # edit this file before starting icecast and fill in the current ip, or just # live with it. Setting the value to "dynamic", will tell the icecast server # that there is no reliable hostname for this machine. # # you can now use multiple ports. the default port is the first one defined. # define PORT, and PORT+1 for shoutcast compatibility. ############# #hostname dmwaters.homeip.net port 8000 port 8001 server_name dmwaters.homeip.net ####################### Directory server options ############################## # You can now force the directory server to use the server_name value instead # of the originating ip. For most people this is unnecessary, since it is the # same. But for people behind proxies, this should be very useful. # Set it to 1 if you want to force use of the server_name variable. ####################### force_servername 0 ######################## Main Server Logfile ################################## # This is the file where icecast prints all the information about # connections, warnings, errors, etc... # You cannot change this in the admin console, but changing it here # and then rehashing the server will work. # logfiledebuglevel is the debugging level for all output to the main logfile. # consoledebuglevel is the debugging level to the icecast console. # accessfile is the file where all connects/disconnects goes # usagefile is a file for periodic bandwidth and usage information goes ######################## logfile icecast.log accessfile access.log usagefile usage.log logfiledebuglevel 0 consoledebuglevel 0 ########################## Reverse Lookups #################################### # Set this to 1 if you want ip:s to be looked up (using reverse lookup) # or 0 if you just want the ip:s (which is slightly faster) ########################## reverse_lookups 1 ############################ Console mode ##################################### # Use 0 if you want stdin to become a local admin console with log tailing # Use 1 if you want stdin to become a local admin console # Use 2 if you just want the console to become a log window # Use 3 if you want the icecast server to be launched in the background (not available for Win32) ############################ console_mode 0 ########################### Client Timeout #################################### # (How to deal with clients when no encoder is connected) # A negative value means keep them forever # 0 (zero) means kick them out instantly # X > 0 means keep them X seconds ########################### client_timeout 30 ######################### Kicking clients ##################################### # If set to 1, then clients whose source has disconnected will # be kicked. If set to 0, they will simply be moved to another # stream. This only has an effect if client_timeout is <= 0. ######################### kick_clients 0 ###################### Static file directory ################################## # This enables the http-server file streaming support in icecast. # If you don't want to go through the trouble of setting up apache # or roxen or whatever, then you can just specify a directory here, # and then http://your_server:port/file/file.mp3 will be equivalent # to /staticdir/file.mp3 # The http server support is of course very limited, don't try to # do anything fancy. Also, only .mp3 files will be displayed. ###################### #staticdir /mnt/My\ Music staticdir /usr/share/icecast/static ############################# Templates ###################################### # the icecast server uses templtes to format output for list.cgi and # various errors. you can specify the directory that these are read from # please use absolute paths if possible ############################# templatedir /usr/share/icecast/templates ############################# Statistics ###################################### # The icecast server dumps statistics to a file on a regular basis. # You can specify how often (stats_time), and to what file (stats_log) # StatsTime (how often to dump stats, in seconds) # 0 (zero) means to not dump stats # X > 0 means dump stats every X seconds to the file specified by stats_log ############################# logdir /var/log/icecast stats_log stats.log statshtml_log stats.html stats_time 60 ############# Aliases (including virtual host support) ######################## # In icecast servers prior to the 1.3 release, you could run a icecast # server as a relay for another icecast server, simply acting as a # client on the other server and serving the local clients. This was # of course a neat way of increasing the number of possible listeners # for your broadcast. You could build a tree-like structure of relays # and broadcast to 1000 listeners without problem with the originating # stream on a cable modem or whatever. # In icecast 1.3.0 and above, we make this procedure much simpler. # If you want to relay a stream from another server, simply add an # alias for that server. Say you want to relay the broadcast originating # from my machine (laika.linux.tm:8000/laika), on your machine, do this: # alias laika http://laika.linux.tm:8000/laika # What happens is that when a listeners connects to your server and # requests the /laika stream, then your icecast server will connect # as a client to my machine, and then feed my stream to the listener. # All subsequent requests for /laika will use the same feed (i.e only # one connect will be made to my machine). Icecast will automagically # shut the link from my machine down when no one is listening. I.e # no bandwidth will be wasted. # The old functionality (i.e adding a more or less static relay) is still # there, but you have to do it from the admin console. Just do # relay pull http://laika.linux.tm:8000, and that will be accessible as # http://your_machine:port/laika.linux.tm:8000/ (you can change this with # the -m option to relay pull. # There is also a possibity to do it the other way around, starting at # the originating server. Just do "relay push <source_id> host:port", and # your stream will be relayed to the remote server. # In theory, this should enable virtual host support, cause you can # specify an alias like so: # alias http://virtual.host.com:port/whatever /something # This will make all requests to virtual.host.com:port/whatever use the # stream /something. This is not really thorougly tested, but it should # work if your server_name is correctly set, and the client is sending # the valid Host: <host:port> http header. ############# alias radiofri http://195.7.65.207:6903 ############################ Kick Relays ###################################### # How long to keep aliased sources when no clients are left listening to it. ############################ kick_relays 10 ############################ Transparent proxy ################################ # This is somewhat equivalent to making _all_ request to aliased sources. So # instead of adding an alias for all streams in the world, turn on the # transparent proxy support. Using this on a server that has streams of it's # own can be quite tricky, and then, as usual it is _very_ important that # the server_name is correct. # Most mp3 playing clients have support for a http proxy # (afaik x11amp and winamp do, anyway). If listeners set your machine as this # proxy, and you turn on transparent_proxy, then when a client requests # http://whatever.com:port/whatever, then your icecast server will connect # to whatever.com and feed the whatever-stream to the client. All subsequent # request for this stream will use the same feed, just as if it was an alias. # When running icecast with your own broadcasts, then you should turn this off, # or anyone can bring your network down with a lot of relaying connects. # Don't turn this on if you don't have a server_name set ############################ transparent_proxy 0 ######################## Access Control Lists ################################## # Perhaps you don't care who connects to your server, but I guess most people # do. Icecast has 2 different ways of keeping people out. The first is using # libwrap (tcpd, tcp wrappers, whatever you want to call it). It is a separate # library written by Wietse Venema that over the years has become more or less # a security standard in Unix. It should compile on every sane and unsane unix # platform, and perhaps other platforms as well, I don't know. # libwrap uses the files hosts.deny and hosts.allow, usually found in /etc # or /usr/local/etc. You probably have to be root to edit these files. # Try the man pages for tcpd and hosts_access for more information. # There are 4 different icecast control thingies to use in hosts.deny/allow. # First just "icecast", which controls _all_ connections, and kick in before # anything is written or read on the socket. If a connection is denied here # then it's bye bye. If it is allowed then depending on the type of the # connection (admin/client/source), the controls "icecast_client", # "icecast_admin", "icecast_source" describe who gets in. # So to deny all clients except those matching *.se, add # "icecast_client: ALL EXCEPT *.se" to hosts.deny. There are millions of # variations on how to build a complete defence, and it's quite simple too. # libwrap is a very powerful tool, consult the manpages for more information. #### # The second way (which is always available) is using icecast's internal # acl lists. The functionality is the same, but it is not as powerful when it # comes to configuration and flexibilty as libwrap. # You can specify acl rules either here in icecast.conf, or using the # admin console. The syntax in icecast.conf is: # allow <all|client|source|admin> <hostmask> # deny <all|client|source|admin> <hostmask> # So, using the same rule as above (allowing only clients from *.se) # deny <client> * # allow <client> *.se # When using the internal acl rules, you need to specify a policy. # This rule kick in when no allow or deny rule affects a connection. # If you set acl_policy to 0, then connections who are not allowed by any # allow rule will be denied, and the other way around if you set it to 1. ######################### acl_policy 1 #deny all * #allow all *.ryd.student.liu.se ################################################################################ -------------- next part -------------- # This be a comment, I like comments. # To use this file, copy it to etc/shout.conf in the shout base directory # # Or, if you plan multiple instances/channels/mount points of shout # call shout with -C <name> to use a copy of this conf file # This is so you can have 5 or 500 shout instances running, each with a # different .conf file, yippee ################################################################################ # I suggest you read this file carefully, and don't do anything silly # cause the configuration file parser is pretty lame. ################################################################################ ############### Server Location and Connection Options ######################### # server_name - There is no support, as in icecast, of anything but a valid # resolvable server name. No dynamic names here. localhost is, of course, the # same machine shout is running on, so this is the only exception. This is when # the server, and shout reside on the same physical machine. # # port - should be the port as configured in icecast.conf recieving connections. # # password - should be the same as defined in the icecast.conf file, as the # encoder password. # # mount - is the mountpoint for this stream. Think of this as what channel on # the server this stream is for. For instance, you might have several channels # on your server, all providing different content. You might have a rock, rap, # and # techno channels, or a 56bit and 128bit channel. You would then run a # copy of shout for each, specifing different mount's, or channels to reside # on. So, you would have http://localhost:8000/rock, http://localhost:8000/rap, # and # http://localhost:8000/techno, if you specified each copy of shout to # use rock, rap, and techno as their different mount points. Got it yet? ############### server_name dmwaters.homeip.net port 8000 password simba mount etc ##################### Server Information ################################# # # name - whatever the name of this stream is called # # desc - a description of said named channel # # genre - what kind of stream, could be talk, rap, rock, alt, techo, ect... # # url - what web site you want associated with this stream # # public - yes/no - if you want this stream published in a yp server lookup list # this is only supported if the icecast server has yp touch enabled, with valid # yp server listings. ############### name Radio_AP desc The_best_monkey_music_monkeys_can_buy genre Monkey_Music url http://www.apan.com/ public yes ############### Stream options ################################################# # short_titles - yes/no - trim the path names from file names when using non ID3 # data for stream title info # # title_streaming - yes/no - turns title updates on or off. # # id3 - yes/no - use id3 tags for title streaming (has no effect if # title_streaming is no) # # autocorrect - yes/no - adapt the stream calculations to match each file's # bitrate ############### short_titles yes title_streaming yes id3 no autocorrect yes ############### Playlist options ############################################### # playlist - uh, duh, this is a file containing a list of file to be streamed # dont't forget full path names in the playlist. The playlist itself resides in # the etc directory along with this conf file. # # loop - yes/no - should the playlist loop, when it runs out? # # shuffle - yes/no - should the playlist be shuffled between tracks? # (randomized) # # autodetect - yes/no - actually check the file for bitrate info, before trying # to stream it. if no, it will be sent at the default bitrate # # default_bitrate - when all else fails, use this bitrate for stream bitrate # calculations. NOTE: if this is different from the actual file, and autodetect # is off, it will be streamed at the incorrect bitrate, resulting in malformed # playback at the client end. # # force - yes/no - used in conjunction with default_bitrate, if the next file # in line to be streamed does not match the default_bitrate, and force is on, # that file will be skipped. # ############### playlist shout.playlist loop yes shuffle yes autodetect yes default_bitrate 128000 force no ############### Advanced options ############################################### # daemon - set to yes to cause shout to be launched in the background (not # available for Win32) # # verbose - yes/no turn on extra text output ############### daemon no verbose no