title: NodeJS Server Side MP3 'Playback'?
body: <p>This is my current approach to <em>fake</em> a Radio-Like stream with node.</p>
  
  <p><strong>Node ReadStream</strong></p>
  
  <p>This ReadStream just reads an mp3 and streams it to a html5 based audio player.</p>
  
  <p>––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––</p>
  
  <p><strong>Counter</strong></p>
  
  <p>This counter represents the current playback position of the RadioStream.
  It keeps incrementing each second to simulate playback. Once a client connects to the server, the stream will start at the counters position. The only thing which I do not get around is the correct increment size of the counter.</p>
  
  <p>––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––</p>
  
  <p>Or is there a way to offset a mp3 stream by seconds ?</p>
  
  <p><strong>Metadata</strong></p>
  
  <p>Once I have the correct position, it will be super easy to build a playlist with Metadata, such as Song Name, Composer etc and push them to the client via socketio.</p>
  
  <p>––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––</p>
  
  <p>If you have an idea how to solve this better please let me know.</p>
  
  <p>I also tried using icecast with the following source clients :</p>
  
  <ul>
  <li>vlc: cuesheet support is buggy, it is not forwarding metadata</li>
  <li>Liquidsoap : cuesheet support is buggy, it is not forwarding
  metadata</li>
  </ul>
  
  <p>I tried executing ezstream with node and start the counter which increments in seconds, but the counter gets very fast out of sync.</p>
  
  <p>Looks like my approch is anything else than ideal, so how to solve this in a smarter way <em>please</em>?</p>