Ooops, I see you were way ahead of me! Thanks for that quick fix!!!!<div><br></div><div>Is it possible that I submit the 'protected' extension to WMA / ASF file reading or should I leave it up to you? ;)<br><br><div class="gmail_quote">
On Tue, Mar 29, 2011 at 4:24 PM, Martijn van Rheenen <span dir="ltr"><<a href="mailto:rheenen@gmail.com">rheenen@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">
Would agree on putting in in the properties too, I will look into that. I am just finishing the MP4 reading part right now...<br><br><div class="gmail_quote"><div class="im">2011/3/29 Lukáš Lalinský <span dir="ltr"><<a href="mailto:lalinsky@gmail.com" target="_blank">lalinsky@gmail.com</a>></span><br>
</div><div><div></div><div class="h5"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div>On Tue, Mar 29, 2011 at 2:28 PM, Martijn van Rheenen <<a href="mailto:rheenen@gmail.com" target="_blank">rheenen@gmail.com</a>> wrote:<br>
> MP4 DRM protection:<br>
> Something with a 'drms' atom should be detected, if it's present, the file<br>
> is DRM protected. But I can not find proper documentation on the MP4<br>
> fileformats to know where to find this atom (I know it should be in the<br>
> 'moov' atom, but then the info I found stops...)<br>
<br>
</div>It seems to be at moov.trak.mdia.minf.stbl.stsd.drms. Just checking<br>
for the presence of the atom should be probably enough. I've tried it<br>
on a file that I found somewhere and it seems to work.<br>
<br>
<a href="https://github.com/lalinsky/taglib/commit/97cd58bc" target="_blank">https://github.com/lalinsky/taglib/commit/97cd58bc</a><br>
<div><br>
> WMA DRM protection:<br>
> In TagLib's asffile.cpp you could add to the list of ByteVector's at the<br>
> near-top of the file:<br>
> static ByteVector<br>
> asfContentEncryptionGuid("\x22\x11\xB3\xFB\xBD\x23\x11\xD2\xB4\xB7\x00\xA0\xC9\x55\xFC\x6E");<br>
> static<br>
> ByteVector asfExtendedContentEncryptionGuid("\x29\x8A\xE6\x14\x26\x22\x4C\x17\xB9\x35\xDA\xE0\x7E\xE9\x28\x9C");<br>
> Then in ASF::File::read():<br>
> Change:<br>
> else {<br>
> obj = new UnknownObject(guid);<br>
> }<br>
> To:<br>
> else {<br>
> if (guid == contentEncryptionGuid || guid ==<br>
> extendedContentEncryptionGuid) {<br>
> d->tag->setDRMProtected(true);<br>
> }<br>
> obj = new UnknownObject(guid);<br>
> }<br>
<br>
</div>This part seems fine, but I think that the information should go into<br>
ASF::Properties, not ASF::Tag (especially not defining a new WM<br>
attribute). Any chance you have a file I can test this against?<br>
<div><div></div><div><br>
Lukas<br>
_______________________________________________<br>
taglib-devel mailing list<br>
<a href="mailto:taglib-devel@kde.org" target="_blank">taglib-devel@kde.org</a><br>
<a href="https://mail.kde.org/mailman/listinfo/taglib-devel" target="_blank">https://mail.kde.org/mailman/listinfo/taglib-devel</a><br>
</div></div></blockquote></div></div></div><br>
</blockquote></div><br></div>