[prev in list] [next in list] [prev in thread] [next in thread]
List: kde-commits
Subject: kdereview/mplayerthumbs/src
From: Marco Gulino <marco.gulino () gmail ! com>
Date: 2009-04-20 8:12:09
Message-ID: 1240215129.802120.27731.nullmailer () svn ! kde ! org
[Download RAW message or body]
SVN commit 956545 by gulino:
Phonon support.
It seems correctly working, it just needs some runtime checks.
Also, it needs patches to phonon, so it's disabled in trunk.
M +13 -6 phononbackend.cpp
M +2 -5 phononbackend.h
M +5 -0 servicesfactory.cpp
--- trunk/kdereview/mplayerthumbs/src/phononbackend.cpp #956544:956545
@@ -22,8 +22,9 @@
#include <phonon/phononnamespace.h>
#include <phonon/mediaobject.h>
#include "previewingfile.h"
-// #include <phonon/experimental/videowidget.h>
+#include <phonon/videowidget.h>
#include "thumbnail.h"
+#include <kdebug.h>
using namespace Phonon;
@@ -36,21 +37,27 @@
mediaObject=new MediaObject(previewingFile);
mediaObject->setCurrentSource(previewingFile->getFilePath());
QObject::connect(mediaObject, SIGNAL(totalTimeChanged (qint64)), previewingFile, \
SLOT(setTotalTime(quint64 )));
-// videoWidget=new Experimental::VideoWidget();
-// videoWidget->setVisible(false);
-// createPath(mediaObject, videoWidget);
+ videoWidget=new VideoWidget();
+ videoWidget->hide();
+ createPath(mediaObject, videoWidget);
}
PhononBackend::~PhononBackend() {
-// delete videoWidget;
+ delete videoWidget;
}
Thumbnail* PhononBackend::preview(FrameSelector *frameSelector)
{
+#ifdef COMPILE_WITH_PHONON
mediaObject->pause();
mediaObject->seek(frameSelector->framePositionInMilliseconds(previewingFile));
-// return new Thumbnail(new QImage(videoWidget->snapshot()), previewingFile);
+ QImage *image=new QImage(videoWidget->snapshot());
+ kDebug() << "videopreview: phonon snapshot at ms " << mediaObject->currentTime() \
<< " of " << mediaObject->totalTime() << ", snapshot valid: " << ! image->isNull() << \
endl; + return new Thumbnail(image, previewingFile);
+#else
+ return NULL;
+#endif
}
bool PhononBackend::readStreamInformation()
--- trunk/kdereview/mplayerthumbs/src/phononbackend.h #956544:956545
@@ -22,10 +22,7 @@
#include "videobackendiface.h"
namespace Phonon {
class MediaObject;
- namespace Experimental
- {
- class VideoWidget;
- }
+ class VideoWidget;
}
class PhononBackend : public VideoBackendIFace
{
@@ -39,7 +36,7 @@
virtual bool playerCannotPreview ();
private:
Phonon::MediaObject *mediaObject;
- Phonon::Experimental::VideoWidget *videoWidget;
+ Phonon::VideoWidget *videoWidget;
};
#endif // PHONONBACKEND_H
--- trunk/kdereview/mplayerthumbs/src/servicesfactory.cpp #956544:956545
@@ -22,13 +22,18 @@
#include "videobackendiface.h"
#include "mplayervideobackend.h"
#include "mplayerthumbs.h"
+#include "phononbackend.h"
PreviewingFile* ServicesFactory::previewingFile(const QString& filePath, unsigned \
int scalingWidth, unsigned int scalingHeight, QObject* parent) { return new \
PreviewingFile(filePath, scalingWidth, scalingHeight, parent); }
VideoBackendIFace *ServicesFactory::videoBackend(PreviewingFile* previewingFile, \
MPlayerThumbsCfg* cfg) { +#ifdef COMPILE_WITH_PHONON
+ return new PhononBackend(previewingFile, cfg);
+#else
return new MPlayerVideoBackend(previewingFile, cfg);
+#endif
}
MPlayerThumbsCfg* ServicesFactory::config() {
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic