[prev in list] [next in list] [prev in thread] [next in thread]
List: kde-commits
Subject: extragear/multimedia/amarok/src/collectionscanner
From: Jeff Mitchell <kde-dev () emailgoeshere ! com>
Date: 2008-08-01 13:21:41
Message-ID: 1217596901.339099.24345.nullmailer () svn ! kde ! org
[Download RAW message or body]
SVN commit 840674 by mitchell:
Port over one of the AFT helper methods
M +42 -0 CollectionScanner.cpp
M +8 -0 CollectionScanner.h
--- trunk/extragear/multimedia/amarok/src/collectionscanner/CollectionScanner.cpp \
#840673:840674 @@ -315,7 +315,49 @@
}
}
+const TagLib::ByteVector
+CollectionScanner::readUniqueIdHelper( TagLib::FileRef fileref ) const
+{
+ if ( TagLib::MPEG::File *file = dynamic_cast<TagLib::MPEG::File *>( \
fileref.file() ) ) + {
+ if( file->ID3v2Tag() )
+ return file->ID3v2Tag()->render();
+ else if( file->ID3v1Tag() )
+ return file->ID3v1Tag()->render();
+ else if( file->APETag() )
+ return file->APETag()->render();
+ }
+ else if ( TagLib::Ogg::Vorbis::File *file = \
dynamic_cast<TagLib::Ogg::Vorbis::File *>( fileref.file() ) ) + {
+ if( file->tag() )
+ return file->tag()->render();
+ }
+ else if ( TagLib::FLAC::File *file = dynamic_cast<TagLib::FLAC::File *>( \
fileref.file() ) ) + {
+ if( file->ID3v2Tag() )
+ return file->ID3v2Tag()->render();
+ else if( file->ID3v1Tag() )
+ return file->ID3v1Tag()->render();
+ else if( file->xiphComment() )
+ return file->xiphComment()->render();
+ }
+ else if ( TagLib::Ogg::FLAC::File *file = dynamic_cast<TagLib::Ogg::FLAC::File \
*>( fileref.file() ) ) + {
+ if( file->tag() )
+ return file->tag()->render();
+ }
+ else if ( TagLib::MPC::File *file = dynamic_cast<TagLib::MPC::File *>( \
fileref.file() ) ) + {
+ if( file->ID3v1Tag() )
+ return file->ID3v1Tag()->render();
+ else if( file->APETag() )
+ return file->APETag()->render();
+ }
+ TagLib::ByteVector bv;
+ return bv;
+}
+
AttributeHash
CollectionScanner::readTags( const QString &path, TagLib::AudioProperties::ReadStyle \
readStyle ) {
--- trunk/extragear/multimedia/amarok/src/collectionscanner/CollectionScanner.h \
#840673:840674 @@ -35,6 +35,7 @@
//Taglib includes..
#include <audioproperties.h>
+#include <fileref.h>
typedef QHash<QString, QString> AttributeHash;
@@ -75,6 +76,13 @@
void scanFiles( const QStringList& entries );
/**
+ * Get the render() of a tag from TagLib, if possible, to assist in AFT UID \
generation. + * @fileref TagLib reference to the file.
+ * @return TagLib::ByteVector that contains the tag's render, if possible, and \
empty otherwise. + */
+ const TagLib::ByteVector readUniqueIdHelper( TagLib::FileRef fileref ) const;
+
+ /**
* Read metadata tags of a given file.
* @track Track for the file.
* @return QMap containing tags, or empty QMap on failure.
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic