PlaylistManager::PlaylistManager(QWidget* parent)
: parentWidget (parent), lastMetaRead (-1)
{
- allowedExtensions << "mp3" << "ogg" << "wav" << "wmv" << "wma";
+ allowedExtensions << "mp3" << "ogg" << "wav" << "wmv" << "wma" << "flac";
// qDebug () << Phonon::BackendCapabilities::availableMimeTypes();
metaInformationResolver = new Phonon::MediaObject(parent);
connect(metaInformationResolver, SIGNAL(stateChanged(Phonon::State,Phonon::State)),
QMap<QString, QString> metaData = metaInformationResolver->metaData();
- if (index >= 0 && newState != Phonon::ErrorState)
+ if (index >= 0 && newState != Phonon::ErrorState && index < items.size ())
{
items[index].artist = metaData.value("ARTIST");
items[index].title = metaData.value("TITLE");
items[index].album = metaData.value("ALBUM");
- qDebug () << "Info is: " << items[index].artist << " - " << items[index].title;
+/* items[index].year = metaData.value("DATE");
+ items[index].genre = metaData.value("GENRE");
+ qDebug () << "Meta " << metaData;
+ qDebug () << "Info is: " << items[index].year << " - " << items[index].genre;*/
if (metaData.isEmpty())
qDebug () << "Detected to be empty: " << items[index].uri;
else
bool PlaylistManager::fileSupported (const QString& fname) const
{
- QString ext = fname.right(3).toLower();
+ if (fname.lastIndexOf('.') < 0)
+ return false;
+ QString ext = fname.right(fname.size() - fname.lastIndexOf('.') - 1).toLower();
foreach (QString e, allowedExtensions)
{
if (ext == e)