Jann
2009-09-08
Are there no active project members? We need to see if anyone is willing to take it over if so. There are too many things that need to be added "officially". (iTunMOVI, rDNSatom support, etc) that do not work at all times in the svn. Also, with the new Snow Leopard build we need to support gcc4.2 more validly and fix the DARWIN build flag issues.
Frederico Costa
2009-10-28
Hi there…
I have been working in the code, as i wanted some of the things corrected and one of the items i really wanted was long description.
I have been trying to contact the owner of this, has i wouldn't mind to take over and move this forward. i am still waiting on his answer.
Danny Pomeroy
2009-10-28
I would love to see this be ported over to work on 64bit systems.
Wez Furlong
2009-11-25
I forked the code onto bitbucket and took a stab at 64-bit file support; it seems to work ok for me for the file I was testing it on today, and I'd appreciate feedback from others:
HolyRoses
2009-11-28
wez how do I get some code to you. I have made personal changes to main.cpp based off version 110. I greatly have a need for support for file sizes greater than 2gb.
I also found a fork over here with some changes
Thanks.
HolyRoses
2009-11-28
wez
Here is a link to my AP with some changes that I put in.
http://rapidshare.com/files/313469042/AtomicParsley.tar.gz
could you incorporate the changes to main.cpp.
I am looking forward to trying your version. Perhaps needs incorporated into main trunk.
HolyRoses
2009-11-28
htmlchecker. I added long description a long time ago based on a web fix I found a year ago. I also added the HD icon in iTunes atom and the apID atom (account name). Looks like wez is a good candidate to take over as an active coder, more talented than me! Wez added the greater than 2gb support in his fork which is sorely needed if you are creating HD files for Apple TV.
HolyRoses
2009-11-28
There still are a ton of tags not implemented, but I dont know that they are that important. If you download any of the FREE video content off iTunes you can examine them with AtomicParsley and see the tags. Only thing I am not sure on is how they distinguish between SD and HD when you have 2 of the same file. If you have two you can right click on it and select HD or SD, but it shows as 1 entry. There are 3 atoms that have random numbers that are the same in both files. I believe these numbers somehow identify the object, from there they can tell they are the same and then just look at dimensions to determine SD/HD.
HolyRoses
2009-11-29
wez, I updated your main.cpp and added -apID and -hdvideo
http://rapidshare.com/files/313683325/main.cpp-HR-modified
I also changed AtomicParsley.cpp and commented this out
/*
if (toread < block_size) {
fprintf(stderr, "Limiting size to %lu vs %llu\n", toread, block_size);
}
*/
I don't know what is going here, but it creates a lot of spam text for the 2 I processed until about 8% done.
The files when ran through this AtomicParsley appear to play. Still testing.
Wez Furlong
2009-11-29
Sorry, I was not monitoring this thread (checking the box now!).
I'm just about to push the HD, account name and debug-spam changes up to bitbucket, and I'll take a look at the snapstream sources.
Wez Furlong
2009-11-29
I merged the stack/buffer fixes from the snapstream sources, but omitted their proprietary extensions.
My preference for receiving patches, suggestions and bug reports is via
(http://bitbucket.org/wez/atomicparsley/issues/new/)
Patches will ideally be supplied as a diff against the repo (you need python + mercurial for this), as this is easiest for me to deal with.
Thanks!
HolyRoses
2009-11-29
thanks wez. Thats cool you found their actual repository. Their web svn only shows up to rev 180, while the other http://source.snapstream.com/repos/AtomicParsley/atomicparsley/ shows the rev 208. I find that odd.
I checked it out in tortoisesvn. I can't see the changes though that they made with their first 111 commit, just shows they added the repository.
I never checked out their source until now, but yea looking now it looks like they added a bunch of atoms for themselves and the 64 bit support. Wow they made these changes back in 2007.
I had never heard of this company until yesterday while searching for large file support ;-)
HolyRoses
2009-12-03
wez,
I have attempted to document the iTunMOVI atom. This is set in the similar manner of contentRating.
I have provided documentation to this at this URL.
http://rapidshare.com/files/315509754/iTunes-iTunMOVI-info.tar.gz
It has examples and how to implement it and use it currently. This is something that would require probably a bunch of new code to read new command line options and then build an XML type file stored as a variable and injected at write time into the Atom. The current examples just use static files and are injected using existing -rDNSatom command.
All of this could be written with another wrapper script currently, but its a hassle ;-)
-HR
Wez Furlong
2009-12-03
I can't access that file (gives me a broken tarball). Please create an issue with the docs pasted into it on bitbucket; it will shortcut things a great deal for me (as that's all I'm going to do about it in the meantime anyway):
HolyRoses
2009-12-03
done. I attached file there as well. I pasted the readme.txt included in tarball, but it didn't paste well.
Wez Furlong
2009-12-03
Thanks; it looks good enough to me. Are there other atoms that need to be added? I'd like to have a bigger picture before starting work on the MOVI atom changes (sounds like a lot of work around the parameter handling and xml building/parsing)
HolyRoses
2009-12-03
There are other atoms that I see on store bought material and free iTunes material that you can get through the store interface but I think they are all internal usage of some sort.
Only one still that has be baffled is how they determine you have 2 of the same content and one of the content is HD or SD. There has to be some identifer on the file that makes them unique a database ID and then they just base SD/HD on dimensions or the HD flag. Like if you have 2 of the same movie or tv show they dont show 2 entries in itunes it is 1 entry and you right click and can select the SD version or default (HD).
here are some atoms for instance:
Atom "cnID" contains: 278743714
Atom "atID" contains: 286191305
Atom "geID" contains: 4406
Atom "sfID" contains: United States (143441)
Atom "akID" contains: 0
Another thing that is sort of complexing is this part:
<key>asset-info</key>
<dict>
<key>file-size</key>
<integer>1260653952</integer>
<key>screen-format</key>
<string>widescreen</string>
</dict>
That file size is the actual file size of the file for the street kings video. How did they determine what the file size would be prior to tagging it???
As far as the iTunMOVI rDNSatom everything I know was gleaned from the street kings video and personal testing on apple tv and itunes 9.
I am guessing a lot of those features are only used on the iTunes store front end. Like if you look up a movie you can see "format widescreen" it also shows actors, director, producers. I think its in their database and also in their file. Maybe it uses the same sort of XML data on both sides.
If you click on an actor, i'm sure its the exact same integer value in your ipod file as it is on the store front end.
reference the street kings text file in attachment, you will know as much as me ;-) This data isn't critical but if you are ripping your own dvds for Apple TV its sort of fun to put this stuff in, look like a real pro.
HolyRoses
2009-12-03
oh you can find free test material here:
http://freeitunessongs.blogspot.com/
They catalog new free stuff on the iTunes store.
HolyRoses
2009-12-05
Attached perl workaround for iTunMOVI at
http://bitbucket.org/wez/atomicparsley/issue/1/itunes-atom-itunmovi
Anonymous
2009-12-11
@htmlchecker did you ever get a reply back from the owner about taking over the project?
Frederico Costa
2010-01-05
Hi there…
and Happy New Year…
Nope, no reply yet from the owner of the project.
i am planning to release maybe a copy of the source with the modifications i did, but i am not sure how to do this the best way.
i also plan to contact sourceforge and see if they can help with this.
Frederico Costa
2010-01-05
Well, i should have read the other replies first…
i can see that other member are more ahead and doing much than me, so…
Well done wez and holyroses
HolyRoses
2010-01-06
if there are some features you need I suggest forking wez repository and working on your additions then do a pull request to wez when you are done. That seems to work best for wez. I have deleted my fork once wez included my additions.
so far I have added apID, cnID, hdvd, @enc atoms. There is an iTunMOVI perl script in the issues thread regarding it to let you set the additional fields. You could work on incorporating iTunMOVI.pl into the main source if you wanted ;-)
-HR
eriksa
2010-01-06
htmlchecker :
By looking at original source I can see that :
AtomicParsley is GPL software; you can freely distribute,
redistribute, modify & use under the terms of the GNU General
Public License; either version 2 or its successor.
So, as long as you publish your changes under GPL you're fine, i.e. you can do this without any permission. That's my understanding of GPL ;)
Joshua Aune
2010-01-06
For smaller changes I've been working off wes's repo and then using hg export to send up patch sets as well.. May be a little easier than forking/pull requests.