<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN">
<html><body style='font-family: Verdana,Geneva,sans-serif'>
<p>Hi Christopher,</p>
<p>Thank you very much for sharing (and documenting!) your experiences. It is much appreciated. I remember the evenings I was coming to grips with Xcode and TagLib. </p>
<p>Cheers,</p>
<p>Ferenc</p>
<p>Christopher Scott schreef op 2014-03-27 23:00:</p>
<blockquote type="cite" style="padding-left:5px; border-left:#1010ff 2px solid; margin-left:5px"><!-- html ignored --><!-- head ignored --><!-- meta ignored --><span style="font-size: medium;">Ferenc,</span>
<div><span style="font-size: medium;"> </span></div>
<div><span style="font-size: medium;">I have placed my cmake steps to Gist at: <a href="https://gist.github.com/phatfly/9819777">https://gist.github.com/phatfly/9819777</a></span></div>
<div><span style="font-size: medium;"> </span></div>
<div><span style="font-size: medium;">This is what I did to make taglib work in my iOS project.  I am new to cmake and taglib … so I borrowed everything from online sources.</span></div>
<div><span style="font-size: medium;"> </span></div>
<div><span style="font-size: medium;">I have not, yet, figured out why the build is not working with the simulator … but it does work with device.</span></div>
<div><span style="font-size: medium;"> </span></div>
<div><span style="font-size: medium;"> </span></div>
<div><span style="font-size: medium;"> </span></div>
<div><span style="font-size: medium;"> </span></div>
<div><span style="font-size: medium;">If there are people reading this that maintain any taglib websites and want to repost my gist in anyway … go ahead.  Maybe the next poor soul won’t have to spend as much time as I did with the learning curve.</span></div>
<div> </div>
<div><span style="font-size: medium;">Thanks!</span><br />
<div>
<div style="color: #000000; font-family: Helvetica; font-size: medium; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-align: -webkit-auto; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;">
<div style="color: #000000; font-family: Helvetica; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-align: -webkit-auto; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;">
<div style="color: #000000; font-family: Helvetica; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-align: -webkit-auto; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;">
<div style="color: #000000; font-family: Helvetica; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-align: -webkit-auto; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;">
<div style="color: #000000; font-family: Helvetica; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-align: -webkit-auto; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;">
<div style="color: #000000; font-family: Helvetica; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-align: -webkit-auto; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;">
<div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;">
<div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;">
<div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;">
<div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;">
<div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;">
<div>Christopher Scott</div>
<div> </div>
<div> </div>
<div> </div>
<div>
<div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;"> </div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<br class="Apple-interchange-newline" /><br class="Apple-interchange-newline" /></div>
<br />
<div>
<div>On Mar 27, 2014, at 1:32 PM, Christopher Scott <<a href="mailto:chris@phatfly.com">chris@phatfly.com</a>> wrote:</div>
<br class="Apple-interchange-newline" />
<blockquote type="cite" style="padding-left:5px; border-left:#1010ff 2px solid; margin-left:5px">
<div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;">Thank you, everyone, for your help!
<div> </div>
<div>I am not that great at c++, or with taglib.  I went with this code:</div>
<div> </div>
<div>
<div style="margin: 0px; font-size: 11px; font-family: Menlo;">                <span style="color: #4f8187;">TagLib</span>::<span style="color: #4f8187;">ID3v2</span>::<span style="color: #4f8187;">FrameList</span> l = tag-><span style="color: #31595d;">frameListMap</span>()[<span style="color: #d12f1b;">"PRIV"</span>];</div>
<div style="margin: 0px; font-size: 11px; font-family: Menlo; color: #008400;">//                cout << "out: list count: " << l.size() << endl;</div>
<div style="margin: 0px; font-size: 11px; font-family: Menlo; min-height: 13px;">                </div>
<div style="margin: 0px; font-size: 11px; font-family: Menlo;">                <span style="color: #bb2ca2;">if</span>(l.<span style="color: #31595d;">size</span>() > <span style="color: #272ad8;">0</span>)</div>
<div style="margin: 0px;"><span style="font-family: Menlo;"><span style="font-size: 11px;">                    tag-></span></span><span style="font-family: Menlo; font-size: 11px; color: #31595d;">removeFrames</span><span style="font-family: Menlo;"><span style="font-size: 11px;">(</span></span><span style="font-family: Menlo; font-size: 11px; color: #d12f1b;">"PRIV</span><span style="color: #d12f1b; font-family: Menlo;"><span style="font-size: 11px;">”</span></span><span style="font-family: Menlo;"><span style="font-size: 11px;">);</span></span></div>
<div style="margin: 0px; font-size: 11px; font-family: Menlo;"> </div>
<div style="margin: 0px;">I want to erase any previous priv tag and after testing ... this clears it.</div>
<div style="margin: 0px; font-size: 11px; font-family: Menlo;"> </div>
<div style="margin: 0px; font-size: 11px; font-family: Menlo;"> </div>
<div style="margin: 0px;">I would like to document the exercise I went through with compiling taglib for iOS with cmake.  Is there someone I can ping about getting this in the wiki?</div>
<div style="margin: 0px; font-size: 11px; font-family: Menlo;"> </div>
<div style="margin: 0px; font-size: 11px; font-family: Menlo;"> </div>
<div style="margin: 0px; font-size: 11px; font-family: Menlo;">Thanks again!</div>
<div>
<div style="font-family: Helvetica; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-align: -webkit-auto; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;">
<div style="font-family: Helvetica; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-align: -webkit-auto; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;">
<div style="font-family: Helvetica; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-align: -webkit-auto; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;">
<div style="font-family: Helvetica; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-align: -webkit-auto; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;">
<div style="font-family: Helvetica; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-align: -webkit-auto; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;">
<div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;">
<div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;">
<div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;">
<div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;">
<div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;">
<div>Christopher Scott</div>
<div> </div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<br />
<div>
<div>On Mar 27, 2014, at 12:34 AM, Scott Wheeler <<a href="mailto:scott@grunge-nouveau.net">scott@grunge-nouveau.net</a>> wrote:</div>
<br class="Apple-interchange-newline" />
<blockquote type="cite" style="padding-left:5px; border-left:#1010ff 2px solid; margin-left:5px"><br />On Mar 26, 2014, at 7:52 PM, Christopher Scott <<a href="mailto:chris@phatfly.com">chris@phatfly.com</a>> wrote:<br /><br />
<blockquote type="cite" style="padding-left:5px; border-left:#1010ff 2px solid; margin-left:5px">                if (l[i]->toString() == “ownerEmailAddress")<br />                 {</blockquote>
[…]<br />
<blockquote type="cite" style="padding-left:5px; border-left:#1010ff 2px solid; margin-left:5px">                    tag->removeFrame(l[i]);<br />                     tag->addFrame(l[i]);</blockquote>
<br />This doesn’t make sense to me.  You shouldn’t need to remove and then re-add the same frame.<br /><br />[…]<br /><br />
<blockquote type="cite" style="padding-left:5px; border-left:#1010ff 2px solid; margin-left:5px">                }<br />                }<br />                if (!found)<br />                {<br /><br />                TagLib::ID3v2::PrivateFrame *frame = new TagLib::ID3v2::PrivateFrame ();<br /><br />                    frame->setOwner("ownerEmailAddress");<br />                   const TagLib::ByteVector v = TagLib::ByteVector::fromCString(UITSPayload, (uint32_t) strlen(UITSPayload));<br />                   frame->setData(v);<br /><br />                  tag->addFrame(frame);<br />                    f.save();<br />                }</blockquote>
<br />I think the main problem here is that you’re only calling save() if “found” is false.<br /><br />-Scott<br /><br />_______________________________________________<br />taglib-devel mailing list<br /><a href="mailto:taglib-devel@kde.org">taglib-devel@kde.org</a><br /><a href="https://mail.kde.org/mailman/listinfo/taglib-devel">https://mail.kde.org/mailman/listinfo/taglib-devel</a></blockquote>
</div>
</div>
</div>
_______________________________________________<br />taglib-devel mailing list<br /><a href="mailto:taglib-devel@kde.org">taglib-devel@kde.org</a><br />https://mail.kde.org/mailman/listinfo/taglib-devel</blockquote>
</div>
</div>
<!-- html ignored --><br />
<pre>_______________________________________________
taglib-devel mailing list
<a href="mailto:taglib-devel@kde.org">taglib-devel@kde.org</a>
<a href="https://mail.kde.org/mailman/listinfo/taglib-devel">https://mail.kde.org/mailman/listinfo/taglib-devel</a>
</pre>
</blockquote>
<p> </p>
</body></html>