Songbird MetadataHandlerTaglib implementation.
More...
#include "MetadataHandlerTaglib.h"
#include "tagunion.h"
#include "TaglibChannelFileIO.h"
#include "sbStringUtils.h"
#include "sbMemoryUtils.h"
#include <sbILibraryUtils.h>
#include <sbProxiedComponentManager.h>
#include "sbStandardProperties.h"
#include "sbIPropertyArray.h"
#include "sbPropertiesCID.h"
#include <nsIURI.h>
#include <nsComponentManagerUtils.h>
#include <nsIFile.h>
#include <nsIMIMEService.h>
#include <nsIBinaryInputStream.h>
#include <nsIIOService.h>
#include <nsIProtocolHandler.h>
#include <nsIStandardURL.h>
#include <nsICharsetDetector.h>
#include <nsICharsetConverterManager.h>
#include <nsIUnicodeDecoder.h>
#include <nsIContentSniffer.h>
#include <nsNetUtil.h>
#include <nsServiceManagerUtils.h>
#include <nsStringGlue.h>
#include <prlog.h>
#include <prprf.h>
#include <nsUnicharUtils.h>
#include <nsMemory.h>
#include <flacfile.h>
#include <oggflacfile.h>
#include <mpcfile.h>
#include <mpegfile.h>
#include <urllinkframe.h>
#include <mp4file.h>
#include <asffile.h>
#include <vorbisfile.h>
#include <uniquefileidentifierframe.h>
#include <textidentificationframe.h>
#include <tpropertymap.h>
#include <sstream>
Go to the source code of this file.
Songbird MetadataHandlerTaglib implementation.
Definition in file MetadataHandlerTaglib.cpp.
#define GET_PROPERTY |
( |
|
taglibid | ) |
properties[TagLib::String(taglibid)].toString(", ") |
#define GUESS_CHARSET_MIN_CHAR_COUNT 256 |
#define LOG |
( |
|
args | ) |
/* nothing */ |
#define MAX_MPEG_IMAGE_SIZE 16777216 |
#define SB_GN_PROP_EXTENDEDDATA "http://gracenote.com/pos/1.0#extendedData" |
#define SB_GN_PROP_TAGID "http://gracenote.com/pos/1.0#tagId" |
#define TAGLIB1_PROPERTIES_WORKAROUND |
( |
|
pTag | ) |
|
Value:
if (dynamic_cast<TagLib::APE::Tag*>(pTag)){ \
properties.merge(dynamic_cast<TagLib::APE::Tag*>(pTag) \
->properties()); \
if (dynamic_cast<TagLib::ASF::Tag*>(pTag)){ \
properties.merge(dynamic_cast<TagLib::ASF::Tag*>(pTag) \
->properties()); \
if (dynamic_cast<TagLib::ID3v1::Tag*>(pTag)){ \
properties.merge(dynamic_cast<TagLib::ID3v1::Tag*>(pTag)\
->properties()); \
if (dynamic_cast<TagLib::ID3v2::Tag*>(pTag)){ \
properties.merge(dynamic_cast<TagLib::ID3v2::Tag*>(pTag)\
->properties()); \
if (dynamic_cast<TagLib::MP4::Tag*>(pTag)){ \
properties.merge(dynamic_cast<TagLib::MP4::Tag*>(pTag) \
->properties()); \
if (dynamic_cast<TagLib::Ogg::XiphComment*>(pTag)){ \
properties.merge( \
dynamic_cast<TagLib::Ogg::XiphComment*>(pTag) \
->properties()); \
} \
PR_END_MACRO
Definition at line 125 of file MetadataHandlerTaglib.cpp.
#define WRITE_PROPERTY |
( |
|
tmp_result, |
|
|
|
SB_PROPERTY, |
|
|
|
taglibName |
|
) |
| |
Value:PR_BEGIN_MACRO \
tmp_result = mpMetadataPropertyArray->GetPropertyValue( \
NS_LITERAL_STRING(SB_PROPERTY), propertyValue);
\
if (NS_SUCCEEDED(tmp_result)) {
\
NS_ConvertUTF16toUTF8(propertyValue).BeginReading(), \
TagLib::String::UTF8); \
properties->erase(key);
\
if (!value.isEmpty()) { \
TagLib::StringList valueList = \
TagLib::StringList(value); \
properties->insert(key, valueList); \
} \
} \
PR_END_MACRO
Definition at line 105 of file MetadataHandlerTaglib.cpp.
Initial value:=
"ABCDEFGHIJKLMNOPQRSTUVWXYZ"
"abcdefghijklmnopqrstuvwxyz"
"0123456789+/"
Definition at line 3654 of file MetadataHandlerTaglib.cpp.
const unsigned char base64lookup[256] |
|
static |
const char* ID3v2Map[][2] |
|
static |
Initial value:=
{
{ "XXXX", "junq" }
}
#define SB_PROPERTY_METADATAUUID
#define SB_PROPERTY_SOFTWAREVENDOR
#define SB_PROPERTY_SUBTITLE
Definition at line 2037 of file MetadataHandlerTaglib.cpp.