diff --git a/src/Clip.h b/src/Clip.h index d57c488cd729c50790d90086dbc985edc3b54895..cf9f297cdbeffbf564fdc31639893d7e19aa0060 100644 --- a/src/Clip.h +++ b/src/Clip.h @@ -1,5 +1,5 @@ /***************************************************************************** - * Media.h : Represents a basic container for media informations. + * Clip.h : Represents a basic container for media informations. ***************************************************************************** * Copyright (C) 2008-2009 the VLMC team * diff --git a/src/Library.cpp b/src/Library.cpp index 95f29fc14508183f6afd692a4ec83eb42e930c5b..9b92b09fb6ba34eaa0d6794e2c5e44caba19050a 100644 --- a/src/Library.cpp +++ b/src/Library.cpp @@ -73,11 +73,8 @@ void Library::newMediaLoadingAsked( const QString& filePath ) if ( media->getFileInfo()->absoluteFilePath() == filePath ) return ; } - //TODO: maybe we should think about taking a reference to a QFileInfo on Clip::Clip() to avoid multiple new... - QFileInfo* fInfo = new QFileInfo( filePath ); - media = new Media( fInfo ); + media = new Media( filePath ); m_medias[media->getUuid()] = media; connect( media, SIGNAL( metaDataComputed( Media* ) ), this, SLOT( metaDataComputed( Media* ) ), Qt::DirectConnection ); emit newMediaLoaded( media ); - delete fInfo; } diff --git a/src/Media.cpp b/src/Media.cpp index 86c4d20fe34e00ab3cc6c5de2ea12f35aede2085..64f014179029adb6d8d421a1022fdbe4412c9fcf 100644 --- a/src/Media.cpp +++ b/src/Media.cpp @@ -34,17 +34,17 @@ const QString Media::VideoExtensions = "*.mov *.avi *.mkv *.mpg *.mpeg *.wmv * const QString Media::ImageExtensions = "*.gif *.png *.jpg"; const QString Media::AudioExtensions = "*.mp3 *.oga *.flac *.aac *.wav"; -Media::Media( const QFileInfo* fileInfo) +Media::Media( const QString& filePath ) : m_vlcMedia( NULL ), m_snapshot( NULL ), m_length( 0 ), m_width( 0 ), m_height( 0 ) { m_uuid = QUuid::createUuid(); - m_fileInfo = new QFileInfo( *fileInfo ); + m_fileInfo = new QFileInfo( filePath ); setFileType(); if ( m_fileType == Media::Video || m_fileType == Media::Audio ) - m_mrl = "file:///" + fileInfo->absoluteFilePath(); + m_mrl = "file:///" + m_fileInfo->absoluteFilePath(); else - m_mrl = "fake:///" + fileInfo->absoluteFilePath(); + m_mrl = "fake:///" + m_fileInfo->absoluteFilePath(); m_vlcMedia = new LibVLCpp::Media( m_mrl ); } diff --git a/src/Media.h b/src/Media.h index 86d58c7f0661548e8592eeb37c86bfe6da219a53..5572eaddb8e5758d6d1fe0d4cbb6ab5adb2f1286 100644 --- a/src/Media.h +++ b/src/Media.h @@ -69,8 +69,7 @@ public: Video, Image }; - Media( const QFileInfo* fileInfo ); -// Media( const QString& mrl ); + Media( const QString& filePath ); virtual ~Media(); void loadMedia( const QString& mrl ); diff --git a/src/gui/GraphicsMovieItem.h b/src/gui/GraphicsMovieItem.h index 834db0bcffd66baf41669cb9d6b61f86411e1be6..3f57c2594d549938220f552aa3a02460662be77b 100644 --- a/src/gui/GraphicsMovieItem.h +++ b/src/gui/GraphicsMovieItem.h @@ -25,7 +25,6 @@ #include "AbstractGraphicsMediaItem.h" #include "Clip.h" -#include "Media.h" #include "TracksView.h" class GraphicsMovieItem : public AbstractGraphicsMediaItem diff --git a/src/gui/LibraryWidget.cpp b/src/gui/LibraryWidget.cpp index 20046eb1d6b9e211e58e92fa74b00c61eb878c9d..604144ab1a7031c60d9c68eef35262be7350a0ac 100644 --- a/src/gui/LibraryWidget.cpp +++ b/src/gui/LibraryWidget.cpp @@ -56,8 +56,6 @@ ListViewMediaItem* LibraryWidget::addClip( Clip* clip ) Media::FileType fileType = clip->getParent()->getFileType(); ListViewMediaItem* item = new ListViewMediaItem( clip, fileType ); - //TODO: replace this : - //emit listViewMediaAdded( item->getClip() ); m_clips->append( item ); switch ( fileType ) { diff --git a/src/gui/TracksView.h b/src/gui/TracksView.h index 2d28ae8002c69d92917eeb9bd518a77692cc42a9..85c99a6ad4480cb99b577f10b3eb237cf125bb91 100644 --- a/src/gui/TracksView.h +++ b/src/gui/TracksView.h @@ -31,7 +31,6 @@ #include #include #include -#include "Media.h" #include "GraphicsCursorItem.h" #include "MainWorkflow.h" #include "TrackWorkflow.h" diff --git a/src/metadata/MetaDataWorker.cpp b/src/metadata/MetaDataWorker.cpp index 6270639a48de3e930b1e42576e46b4193f4c8084..9f6874013423c20cbe2dbba397bffca575147a38 100644 --- a/src/metadata/MetaDataWorker.cpp +++ b/src/metadata/MetaDataWorker.cpp @@ -60,7 +60,7 @@ void MetaDataWorker::computeVideoMetaData() { //Disabling audio for this specific use of the media m_currentMedia->addVolatileParam( ":no-audio", ":audio" ); - m_currentMedia->addVolatileParam( ":vout=dummy", ":vout=" ); + m_currentMedia->addConstantParam( ":vout=dummy" ); connect( m_mediaPlayer, SIGNAL( lengthChanged() ), this, SLOT( entrypointLengthChanged() ) ); } @@ -74,8 +74,11 @@ void MetaDataWorker::computeImageMetaData() void MetaDataWorker::getMetaData() { m_mediaIsPlaying = false; - m_lengthHasChanged = false; + m_lengthHasChanged = false; + //In order to wait for the VOUT to be ready: + while ( m_mediaPlayer->getWidth() == 0 ) + SleepMS( 1 ); //Ugly isn't it :) m_currentMedia->setLength( m_mediaPlayer->getLength() ); m_currentMedia->setWidth( m_mediaPlayer->getWidth() ); m_currentMedia->setHeight( m_mediaPlayer->getHeight() ); diff --git a/src/renderer/ClipRenderer.h b/src/renderer/ClipRenderer.h index 5e2522b30fd434de842271e3395439971613278e..915bad77657113de9e28f892dd97d85ffb0f9b37 100644 --- a/src/renderer/ClipRenderer.h +++ b/src/renderer/ClipRenderer.h @@ -30,7 +30,6 @@ #include "Clip.h" #include "GenericRenderer.h" -//TODO: This should really share a common interface with RenderPreviewWorkflow class ClipRenderer : public GenericRenderer { Q_OBJECT