public function processSong(Song $song)
 {
     //format name
     $name = $song->getName();
     //remove starting dot
     if (Strings::startsWith($name, '.')) {
         $name = Strings::substring($name, 1);
     }
     if (Strings::startsWith($name, ' ')) {
         $name = Strings::substring($name, 1);
     }
     //change underscore to space
     if (Strings::contains($name, '_-_')) {
         $name = Strings::replace($name, '~_-_~', '-');
     }
     $name = Strings::replace($name, '~_~', ' ');
     //end of format name
     $song->setName($name);
     //load metadata from name
     if (!$song->hasMetadata()) {
         $this->addSongMetadata($song);
     }
 }