Пример #1
0
FXbool GMTrack::loadTag(const FXString & filename) {
  GM_TICKS_START();
  GMFileTag filetags;

  if (!filetags.open(filename,FILETAG_TAGS|FILETAG_AUDIOPROPERTIES)){
    clear();
    return false;
    }

  url = filename;

  filetags.getTitle(title);
  filetags.getAlbum(album);
  filetags.getArtist(artist);
  filetags.getAlbumArtist(album_artist);
  filetags.getComposer(composer);
  filetags.getConductor(conductor);
  filetags.getTags(tags);

  year    = filetags.getYear();
  no      = filetags.getTrackNumber();
  time    = filetags.getTime();
  bitrate = filetags.getBitRate();

  setDiscNumber(filetags.getDiscNumber());
  GM_TICKS_END();
  return true;
  }
Пример #2
0
void GMPlayQueue::updateTrackHash() {
  GM_TICKS_START();
  FXint track;
  FXint count;
  tracks.clear();
  try {
    GMQuery q(db,"SELECT track,count(track) FROM playlist_tracks WHERE playlist==? GROUP BY track;");
    q.set(0,playlist);
    while(q.row()) {
      q.get(0,track);
      q.get(1,count);
      tracks.insert(track,count);
      }
    }
  catch(GMDatabaseException & e){
    }
  GM_TICKS_END();
  }