23 ".atp|.ra|.dts|.aac|.m4a|.aa3|.tta|.mka|.aiff|.swa|.wv");
26 : m_filenameFormat(
gCoreContext->GetSetting(
"NonID3FileNameFormat").toUpper())
34 QString extension = fi.suffix().toLower();
38 LOG(VB_FILE, LOG_WARNING, QString(
"MetaIO: unknown extension: '%1'").arg(extension));
42 if (extension ==
"mp3" || extension ==
"mp2")
44 if (extension ==
"ogg" || extension ==
"oga")
46 if (extension ==
"flac")
54 if (extension ==
"m4a")
56 if (extension ==
"wv")
73 if (ignoreID3 || !mdata)
81 LOG(VB_GENERAL, LOG_ERR,
82 QString(
"MetaIO::readMetadata(): Could not read '%1'")
102 QString &artist, QString &album, QString &title,
103 QString &genre,
int &tracknum)
115 lfilename.replace(
'_',
' ');
116 lfilename = lfilename.section(
'.', 0, -2);
118 QStringList::iterator fmt_it = fmt_list.begin();
121 for (; fmt_it != fmt_list.end(); ++fmt_it, --part_num) {}
124 fmt_it = fmt_list.begin();
125 for(; fmt_it != fmt_list.end(); ++fmt_it, ++part_num)
127 QString part_str = lfilename.section(
"/", part_num, part_num);
129 if ( *fmt_it ==
"GENRE" )
131 else if ( *fmt_it ==
"ARTIST" )
133 else if ( *fmt_it ==
"ALBUM" )
135 else if ( *fmt_it ==
"TITLE" )
137 else if ( *fmt_it ==
"TRACK_TITLE" )
139 QStringList tracktitle_list = part_str.split(
"-");
140 if (tracktitle_list.size() > 1)
142 tracknum = tracktitle_list[0].toInt();
143 title = tracktitle_list[1].simplified();
150 else if ( *fmt_it ==
"ARTIST_TITLE" )
152 QStringList artisttitle_list = part_str.split(
"-");
153 if (artisttitle_list.size() > 1)
155 artist = artisttitle_list[0].simplified();
156 title = artisttitle_list[1].simplified();
162 if (artist.isEmpty())
182 0, tracknum, length);
207 if (metadata->
Artist().isEmpty())
210 if (metadata->
Album().isEmpty())
213 if (metadata->
Title().isEmpty())
216 if (metadata->
Genre().isEmpty())
219 if (metadata->
Track() <= 0)
227 LOG(VB_GENERAL, LOG_ERR,
228 QString(
"MetaIO::saveTimeStamps: failed to stat file: %1").arg(
m_filename) +
ENO);
236 if (utime(
m_filename.toLocal8Bit().constData(), &new_times) < 0)
238 LOG(VB_GENERAL, LOG_ERR,
239 QString(
"MetaIO::restoreTimeStamps: failed to utime file: %1").arg(
m_filename) +
ENO);