diff options
author | Hasso Tepper <hasso.tepper@gmail.com> | 2012-07-07 01:25:27 +0300 |
---|---|---|
committer | Urs Fleisch <ufleisch@users.sourceforge.net> | 2015-09-07 20:25:34 +0200 |
commit | 9ad5bb1d62082396c3cec908508f0df11eb86c8e (patch) | |
tree | 3feda918cbd15dc520e2a434ba5f367532c6f4e2 /taglib/mpeg/id3v2/id3v2framefactory.cpp | |
parent | 5ca4cd2f520e48d4decc597e572019cadca41d7a (diff) |
Support for proprietary frames Apple iTunes uses to tag podcast files.
Diffstat (limited to 'taglib/mpeg/id3v2/id3v2framefactory.cpp')
-rw-r--r-- | taglib/mpeg/id3v2/id3v2framefactory.cpp | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/taglib/mpeg/id3v2/id3v2framefactory.cpp b/taglib/mpeg/id3v2/id3v2framefactory.cpp index f6a4aac9..3b40ae45 100644 --- a/taglib/mpeg/id3v2/id3v2framefactory.cpp +++ b/taglib/mpeg/id3v2/id3v2framefactory.cpp @@ -167,7 +167,8 @@ Frame *FrameFactory::createFrame(const ByteVector &origData, Header *tagHeader) // Text Identification (frames 4.2) - if(frameID.startsWith("T")) { + // Apple proprietary WFED (Podcast URL) is in fact a text frame. + if(frameID.startsWith("T") || frameID == "WFED") { TextIdentificationFrame *f = frameID != "TXXX" ? new TextIdentificationFrame(data, header) @@ -423,6 +424,14 @@ bool FrameFactory::updateFrame(Frame::Header *header) const convertFrame("WPB", "WPUB", header); convertFrame("WXX", "WXXX", header); + // Apple iTunes nonstandard frames + convertFrame("PCS", "PCST", header); + convertFrame("TCT", "TCAT", header); + convertFrame("TDR", "TDRL", header); + convertFrame("TDS", "TDES", header); + convertFrame("TID", "TGID", header); + convertFrame("WFD", "WFED", header); + break; } |