I made this MP3 player and I'm trying to load the songs and playlists thru XML files. I keep getting all kinds of errors (#2007, #1006, etc.) and I can't find the problem. Here's the code:
Code:
import fl.events.SliderEvent;

var snd:Sound;
var channel:SoundChannel;
var trans:SoundTransform;

var currSong:String;
var currVol:Number = .5;
var currPan:Number = 0;
var songCount:int = 0;
var songNum:int;
var songTitle;

var songList_XML:XML;
var xmlLoader:URLLoader = new URLLoader();
xmlLoader.load(new URLRequest("songList_XML.xml"));

xmlLoader.addEventListener(Event.COMPLETE, xmlLoaded);
xmlLoader.addEventListener(IOErrorEvent.IO_ERROR, errorHandler);

function errorHandler(event:IOErrorEvent):void
{
    songTitle.text = "XML loading error: " + event;	
}                                                    

function xmlLoaded(event:Event):void
{	
    songList_XML = new XML(xmlLoader.data);	
    song1.addEventListener(MouseEvent.CLICK, chooseSong); 
    song2.addEventListener(MouseEvent.CLICK, chooseSong);
    song3.addEventListener(MouseEvent.CLICK, chooseSong);
    song4.addEventListener(MouseEvent.CLICK, chooseSong);
	
    var setSongs;
    var chooseSong;
}

function setSongs():void
{	
    for(var i = 0; i < 4; i++)
    {
        var titleText:String = songList_XML.song[i].name;
        var artistText:String = songList_XML.song[i].artist;
        var clipTitle = this["song" + (i + 1)].title;
        var clipArtist = this["song" + (i + 1)].artist;
        clipTitle.text = titleText;
        clipArtist.text = artistText;		
     }	
}

panSlide.visible = false;
volSlide.visible = false;

volSlide.addEventListener(SliderEvent.CHANGE, volumeChange);
panSlide.addEventListener(SliderEvent.CHANGE, panChange);

function chooseSong(e:MouseEvent):void
{	
    switch (e.currentTarget.name)
    {
      case "song1":
      songNum = 0;
        currSong = songList_XML.song[songNum + songCount].file;
      break;                                          
      case "song2":
      songNum = 1;
        currSong = songList_XML.song[songNum + songCount].file;  
      break;                                          
      case "song3":
      songNum = 2;
        currSong = songList_XML.song[songNum + songCount].file;
      break;
      case "song4":
      songNum = 3;
        currSong = songList_XML.song[songNum + songCount].file;
      break;		 
     }

     if (snd != null)
     {
        channel.stop();
     }
     snd = new Sound();
     snd.load(new URLRequest(currSong));
     channel = new SoundChannel;
     
     trans = new SoundTransform(currVol, currPan);
     channel = snd.play();
     channel.soundTransform = trans;
     panSlide.visible = true;
     volSlide.visible = true;
     volLabel.text = ">>>  " + int(currVol * 100);
     panLabel.text = ">>>  " + int(currPan * 100);
     
    snd.addEventListener(Event.ID3, id3Handler);
}

function id3Handler(event:Event):void
{
   var id3:ID3Info = snd.id3;
   if (id3.songName != null)
   {
       songTitle.text = id3.songName + "\n";
       info.text = "Artist: " + id3.artist + "  <>  Album: " + id3.album;
       info.appendText("Album: " + id3.album);
       info.appendText("\n" + "Available at: " + "SoundEffects.com");
   }
}

var format:TextFormat = new TextFormat();
format.font = "Comic Sans MS";
format.color = 0xFFFF00;
format.size = 10;
format.url = "http://www.soundeffects.com/";
info.defaultTextFormat = format;

function volumeChange(e:SliderEvent):void
{
   currVol = e.target.value;
   volLabel.text = "Current Volume: " + int(currVol * 100);
   trans.volume = currVol;
   channel.soundTransform = trans;
}

function panChange(e:SliderEvent):void
{
   currPan = e.target.value;
   panLabel.text = "Current Pan: " + int(currPan * 100);
   trans.pan = e.target.value;
   channel.soundTransform = trans;
}