本文整理汇总了C++中phonon::MediaObject::currentSource方法的典型用法代码示例。如果您正苦于以下问题:C++ MediaObject::currentSource方法的具体用法?C++ MediaObject::currentSource怎么用?C++ MediaObject::currentSource使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类phonon::MediaObject
的用法示例。
在下文中一共展示了MediaObject::currentSource方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: GetMetadata
QVariantMap TrackListDBusHandler::GetMetadata(int position)
{
QVariantMap ret;
if (position < 0 || position > m_tracks.size()-1) {
return ret;
}
//FIXME: ugly and slow
Phonon::MediaObject mediaObject;
mediaObject.setCurrentSource(m_tracks[position]);
QMultiMap<QString, QString> stringMap = mediaObject.metaData();
QMultiMap<QString, QString>::const_iterator i = stringMap.constBegin();
while (i != stringMap.constEnd()) {
bool number = false;
int value = i.value().toInt(&number);
//tracknumber always string, according to MPRIS spec
if (number && (i.key().toLower() != "tracknumber")) {
ret[i.key().toLower()] = value;
} else {
ret[i.key().toLower()] = QVariant(i.value());
}
++i;
}
ret["time"] = mediaObject.totalTime()/1000;
ret["location"] = mediaObject.currentSource().url().toString();
return ret;
}
示例2: findSubtitles
void FindSubtitles::findSubtitles() {
Phonon::MediaObject * mediaObject = quarkPlayer().currentMediaObject();
if (mediaObject) {
Phonon::MediaSource source = mediaObject->currentSource();
QString fileName(source.fileName());
static FindSubtitlesWindow * findSubtitlesWindow = NULL;
if (!findSubtitlesWindow) {
findSubtitlesWindow = new FindSubtitlesWindow(MainWindowFactory::mainWindow());
connect(findSubtitlesWindow, SIGNAL(subtitleDownloaded(const QString &)),
SLOT(loadSubtitle(const QString &)));
}
findSubtitlesWindow->setMovieFileName(fileName);
findSubtitlesWindow->setLanguage(Config::instance().language());
findSubtitlesWindow->show();
}
}