Changes between Version 14 and Version 15 of rpld/StreamingToIcecast
- Timestamp:
- 08/17/12 21:15:22 (12 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
rpld/StreamingToIcecast
v14 v15 1 1 [[TOC]] 2 2 3 = Streaming to Icecast with roard and !RoarAudio !PlayList Daemon (rpld) =4 This tutorial is to tell you how to setup roard and !RoarAudio !PlayList Daemon to stream to a Icecast server. This does not cover installing Icecast itself nor using a different RoarAudio server than roard.3 = Streaming to Icecast with roard or !SavannahIce and !RoarAudio !PlayList Daemon (rpld) = 4 This tutorial is to tell you how to setup roard or SavannahIce and !RoarAudio !PlayList Daemon to stream to a Icecast server. This does not cover installing Icecast itself nor using a different RoarAudio server than roard and SavannahIce. 5 5 6 6 == Introduction and Concept == … … 16 16 However because clients never be in contact with the sound server this may sometimes look a bit like rpld be a full audio player. 17 17 18 As rpld does not handle audio itself setup for streaming is done on roard's end. It is configured to have a so called 'output' to icecast and encoding as Ogg Vorbis. 18 As rpld does not handle audio itself setup for streaming is done on roard's/SavannahIce end. 19 20 == roard or !SavannahIce? == 21 This is the big question we have at the beginning: 22 23 There are two different usecases for roard and SavannahIce: 24 While roard decodes everything, processes the audio and re-encodes the stream SavannahIce just passes as it is. 25 26 Here is a small table to help you find out what the best setup is for you: 27 ||=Feature =||= roard =||= SavannahIce =|| 28 ||=Playlist input =|| Yes || Yes || 29 ||=Codec converting support =|| Yes || Yes¹ || 30 ||=Resampling support =|| Yes || Yes¹ || 31 ||=Need reencoding =|| Yes || No || 32 ||=Full metadata support =|| Yes || Yes || 33 ||=Multiple output streams =|| Yes¹ || Yes¹ || 34 ||=Multiple independed streams =|| Yes¹ || Yes¹ || 35 ¹ This is possible bout out of scope of this document. 19 36 20 37 == Installation == 21 38 Before we can start you need to install the following software: 22 * roard from RoarAudio Package 23 * rpld 39 * roard from RoarAudio Package is using roard 40 * savannahice is using SavannahIce. 41 * rpld (at least version 0.1.4²) 24 42 * rpld-tools (if not in rpld package) 25 43 * vclt-tools 44 ² For older version please see an older version of this document. 26 45 27 46 You should also consider to install a nice client for rpld with GUI or something. … … 30 49 31 50 === Installing on Debian === 32 Just type as root: 51 Debian provides all of the needed packages but SavannahIce. Also note that of the writing of this document Debian does not have rpld 0.1.4. See ² above. 52 Just type as root for a roard based install: 33 53 {{{ 34 54 # apt-get install roaraudio roarplaylistd roarplaylistd-tools vclt-tools 35 55 }}} 56 57 Type as root for a SavannahIce based install: 58 {{{ 59 # apt-get install roarplaylistd roarplaylistd-tools vclt-tools libroar-dev 60 }}} 61 Now install SavannahIce from source. 36 62 37 63 === Installing from source === … … 44 70 * libvorbis 45 71 * libshout 46 * libuuid (from e2fsprogs)47 72 * vorbis-tools 48 73 … … 54 79 $ tar -xvzf package.tar.gz 55 80 $ cd package 56 $ ./configure 81 $ ./configure³ 57 82 $ make 58 83 # make install 59 84 }}} 85 ³ Some packages does not provide this script. If there is non in the package you can safely skip this step. 60 86 61 87 == Setting up roard == … … 87 113 $ roard -o shout -O http://source:hackme@streaming-server.example.org:8000/mountpoint.ogg -oO sync,codec=ogg_vorbis 88 114 }}} 115 116 == Setting up !SavannahIce == 117 SavannahIce does not need any manual setup. 89 118 90 119 == Setting up rpld == … … 96 125 * Have fun. 97 126 98 === Setting up store on Debian === 99 You choose the right system. On Debian the store is set up by the roarplaylistd package at install. 100 101 === Setting up store manually and how to start rpld === 102 To set up the store we need to create a directory accessible by the user running rpld. 103 Normally this directory is `/var/lib/roarplaylistd/` but you can use a directory within your home directory as well. 104 105 First create it. If using `/var/lib/roarplaylistd/` we may need to do this as root, if it's located under your home directory just create it with mkdir(1) or how you prefer to create your directorys. 106 If needing to do under root we may also need to set owner back to the user running rpld like this: 107 {{{ 108 # mkdir /var/lib/roarplaylistd 127 === Setting up store on Debian for usage with roard === 128 On Debian the store is set up by the roarplaylistd package at install. 129 130 === Setting up store manually for usage with roard === 131 All you need to do is to run the following command as root: 132 {{{ 133 # rpld-storemgr create 134 }}} 135 136 === Setting up store on Debian for usage with !SavannahIce === 137 See next section. 138 139 === Setting up store manually for usage with !SavannahIce === 140 All you need to do is to run the following command as root: 141 {{{ 142 # rpld-storemgr create SavannahIce http://source:hackme@streaming-server.example.org:8000/mountpoint.ogg 143 }}} 144 The URL is the same as for roard above. 145 146 === Change owner of store === 147 If you set up your store manually you need to change the owner of the store to your. 148 To do this run as root: 149 {{{ 109 150 # chown YOUR_USER:YOUR_GROUP /var/lib/roarplaylistd 110 151 }}} 152 111 153 You can get the values for ''YOUR_USER'' and ''YOUR_GROUP'' using id: 112 154 {{{ … … 115 157 It will list the username under ''uid'' and the group name under ''gid''. 116 158 117 Next you need to initialize it. Do this with the following command: 118 {{{ 119 $ rpld --no-listen --store-path /var/lib/roarplaylistd --no-restore --store 120 }}} 121 159 When using Debian the user is "roarplaylistd" and group is "audio". 160 161 === Starting up rpld manually === 122 162 To start rpld run it like this: 123 163 {{{ … … 144 184 To create a new playlist use: 145 185 {{{ 146 $ rpld- addplaylist 'playlistname'186 $ rpld-ctl addplaylist 'playlistname' 147 187 }}} 148 188 … … 156 196 M3U:: A common playlist format. 157 197 PLAIN:: Single filename per line format 198 XSPF:: Xiph's xspf format. 158 199 Others may also be supported. 159 200 … … 188 229 To start playback just hit the playback button in the GUI or client you use or use the following command: 189 230 {{{ 190 $ rpld- play231 $ rpld-ctl play 191 232 }}} 192 233