title: WP7 How to change XNA Song volume?
body: <p>So I would like to allow the user to select a song from their media library and play it back at a variable volume.  From what I understand, the following are true:</p>
  
  <ul>
  <li>Songs are accessed via an instance of the MediaLibrary </li>
  <li>Songs can be played with MediaPlayer.Play()</li>
  <li>Changing MediaPlayer.Volume has no effect on songs from the MediaLibrary (as of XNA 4.0)</li>
  <li>There is a System.Windows.Controls.MediaElement control but its source is either a stream or a Uri</li>
  </ul>
  
  <p>Has anyone found a way around these limitations, to play a Song from the MediaLibary at different volumes?  I can only think of two ways this might be possible.  One, somehow wrap a Stream around the Song and feed it to a MediaElement (either directly or by copying the Song to isolated storage and streaming it from there), or two, get access to the MediaLibary with a Uri.  Does anyone know if either of these is possible?</p>
  
  <p>Also, I haven't looked at Microsoft.Phone.BackgroundAudio, is there anything useful in there?</p>
  
  <p>Thanks.</p>