Joel Stickney
Downloads: 0
Posts: 10
Smile Score: 0
About Me
I am a Free member
Gender: Male
I'm me; you're you.
Right?

Visit Stats
Last Visit: 174 days ago
Member Since: 03 Oct 2010
Profile Views: 497

Website
http://ijoel.net
Joel Stickney's Posts
Average Rating from Joel:

sort: smiles | time
burypromote
iJoel commented on 10 Jan 2009
Any chance of a CLI implementation?
For us, automate-aholics?

Thinking it would work great with the handbrakeCLI ^__^.
[Version 20090101]


4 Replies

burypromote
iJoel replied on 11 Jan 2009
perl /Applications/iDentify.app/Contents/resources/script /Users/iJoel/Desktop/vid.m4vCan't locate Video/Filename.pm in @INC (@INC contains: /Users/arrmihardies/iDentify/Contents/Resources/lib/perl5/site_perl/5.8.8/darwin-thread-multi-2level /Users/arrmihardies/iDentify/Contents/Resources/lib/perl5/site_perl/5.8.8 /Users/arrmihardies/iDentify/Contents/Resources/lib/perl5/site_perl /Users/arrmihardies/iDentify/Contents/Resources /System/Library/Perl/5.8.8/darwin-thread-multi-2level /System/Library/Perl/5.8.8 /Library/Perl/5.8.8/darwin-thread-multi-2level /Library/Perl/5.8.8 /Library/Perl /Network/Library/Perl/5.8.8/darwin-thread-multi-2level /Network/Library/Perl/5.8.8 /Network/Library/Perl /System/Library/Perl/Extras/5.8.8/darwin-thread-multi-2level /System/Library/Perl/Extras/5.8.8 /Library/Perl/5.8.6 /Library/Perl/5.8.1 .) at /Applications/iDentify.app/Contents/resources/script line 64.
BEGIN failed--compilation aborted at /Applications/iDentify.app/Contents/resources/script line 64.


Any idea as to why it failed?

Thanks for the info. :D
burypromote
iJoel replied on 17 Jan 2009
Thanks for the tip on how to override the hardcoded path. I got it to work from terminal so now I can add it to me automated workflow. And I'm making a blog/website right now so as soon as I put it up. I'll post the review here and there. I just want to prepare my scripts to enhance your program before I write the review so that I've had ample time with the program so I can write a good/proper review ^__^.

And also, as I'm writing a the review on the blog I'm starting. Would you want me to link to here? Or your blog for iDentify? And is it alright if I put up for download my enhancement script (that would moreso compliment your app) on my blog as well? It's just a script so it can't work without your program and I figure it'll get your app that publicity it deserves :D.

My script enhancements:
-Multiple Passes (with error checking [spelling and otherwise] on the show/movie name) so as to correctly find a show/movie iDentify couldn't on it's own.
-Movie (possible shows as well) chapter marker data; although this enhancement doesn't work through your program, it would work with an external DB and libmp4v2 unix exec
-removing unnecessary data from the filename (because for some reason, iDentify seems to *sometimes* append text in the filename to the Title field of the mp4, which is odd), so my script will correct that.

Now once I got the CLI portion of your script working, all of that will be easier to implement
burypromote
iJoel replied on 20 Jan 2009
Sweet, I'll link here then; seems more appropriate.

And no prob, I haven't finished the script yet, but it's relatively straightforward. When I release and make sure there's no bugs, I'll explain to you how it works.

& it only happens occasionally; it's happened to me a few times. But oddly enough, I can recreate it, but it now only seems to append numbers (when before it would append text as well). Examples:

Psych.S03E11.TV.loler-skates.[now].mp4 -Creates "Lassie Did a Bad, Bad Thing", perfect.
Psych.S03E11.TV.loler-skates.[now] 3.mp4 - Creates "Lassie Did a Bad, Bad Thing - 3", see how it appends the 3 with a "-" there at the end.

Now a more extreme example built for testing
Psych S03E11 TV laaladk-lolaAF i know [dundun] 2 true dat 8.mp4 - Creates "Lassie Did a Bad, Bad Thing - 8" - appends the 8.

Psych S03E11 TV laaladk-lolaAF i know [dundun] 2 true dat 8 lol.mp4 - Creates "Lassie Did a Bad, Bad Thing" - perfect


Now I do remember cases where it was text as well as numbers that were appended, but I can't recreate it so either it's in my head or very specific. Sorry for the crazy names, they were all just tests so i put in random letters in words in the files ha,

So my script scans through the filename and registers the most important data, filtering out all the rest and then feeds your program with the data ;P.
burypromote
iJoel replied on 20 Jan 2009
Gotcha. I wasn't aware of the conditions.
And there would never be long names like that.
I was just seeing how & what was being appended on the end of a file.

So now once I know, I can take that into consideration ^__^
burypromote
iJoel tipped on 19 Dec 2008
This program was exactly what I needed.
This will make tagging the shows and movies I rip with handbrake much
easier to deal with. I really hated opening each file individually.

But here's a very important suggestion.
The TV Shows/Movies (that your program tags)
often have . (periods) _ (underslashes) instead of spaces
and also some aren't the most correct way of putting the show name.

For example; I have an mp4 called "The.Office.(US).S05E10"
& iDentity can't find an id. But it I change it to "The Office (US).S05E10";
it works without a hitch. So my suggestion would be first to put the
filename into TVDB exactly like it works right now (periods, underslashes, and
everything) & when your program returns that it can't find an ID, what you do is then take out the periods and check, and if it can't find it still, take out the underslashes, and so on.

Some more helpful proofing would be apostrophes.
iDentity can't find my show titled "Greys Anatomy S01E04",
but it can find "Grey's Anatomy S01E04". So maybe
your program can add apostrophe's at the end of the word's
in show names and/or movies if it can't find an id
(if the last letter is an "s" obviously ;P).

Just a thought, but it would help everyone out a lot I'm sure.
Cause not everyone has labeled that MP4s perfectly.

And although I don't need it; maybe an option for language selection would be nice for people. Because there are many shows that have the same name, but with varying languages.

& also, is there a way to not tag videos if TVDB
or IMDB doesn't find data for it?

Thanks, & amazing program!
Now, I'm off to try and applescript your program into
my handbrake workflow so it can all my files automatically.
Nice app, keep up the good work!


& & & oh yeah, forgot about one last thing.
Shows often are adopted from the UK or too the UK.
So there's typically a "show name" with a (US) or (UK)
appended to the end. So let's take "The Office" for instance.
My file displays "The.Office.S01e04" your program will
no be able to find that (as there are no results in TVDB for
"The.Office". But once the periods are replaced with
'spaces' then it reads "The Office S01e04" & your program finds
7 entries in TVDB, now your program (as far as I can tell) assumes the
TV Show will be in english; so that narrows it down to 3 shows:
The Office (US)
The Office (UK)
The Office (1995)
Those are all in english so your pgram can't decide.
So if there were two settings. One would be a country setting
which appends (US) or (UK) to the end of the show name to narrow results down. And since (year) is often found at the end of shows as well (as new ones with the same name come out), it would also be nice to have a setting like "use most recent show" which the compares all the shows that match and grabs the one with no year appended to the end of its name (which is often how its done) or if there isn't a result that has nothing attached then it would compare the years and use the most recent year; or "use oldest show" which would be the opposite.

Just some ideas, let me know what you think?
[Version 20081218]


3 Replies

burypromote
iJoel commented on 20 Dec 2008
--"iDentify -should- be replacing the .s and _s with spaces. I'll look into that bit."--

Hmm, I tried it quite a few times; but maybe I messed something up.

I'll test it a bit more and get back to you ;).

--"The problem with adding a (US) or a (UK) at the end of everything is it will make most things not match at all, so, unfortunately, that part has to be left up to the user."--

Oh, no that's not exactly what I meant. Here, I'll try to explain what I meant better:

Video File = The Office S03E04

Your program figures out that the show name is "the office" and it's the "episode 4" of "season 3". Now, iDentify then accesses theTVdb.com and TVDB tells it that there are 7 matches for "the office." There are 3 matches in english (which I'm assuming is what iDentify expects, English). & iDentify doesn't have enough info to narrow it down to just one. So it then states, it can't be found and tags the episode according to the filename instead.

Now, if there are 3 matches, if there was a setting for a users location in the preferences, it could easily be assumed by your program that out of the 3 the one that has (US) at the end would be the one the user is converting since the preferences already state that the user lives in the United States.

So to clarify;

--your program reads show name "the.office";

--it accesses TVDB & is told that "the.office" doesn't exist.

--So then your program replaces the '.' with a space;

--it then searches TVDB for "the office";

--TVDB states there are 7 matches (3 in english, 4 in other languages)

--iDentify knows that it wants english so that leaves 3 results.

--based on a "location preference" iDentify knows that it's user lives in the US.

--so it appends a "(US)" to the end of the name and searches again to see if it can narrow it down.

--and viola, TVDB returns one match for the show and its found and tagged.

Obviously this would be trivial if only the show "The Office" ended with a (US) or (UK), but the thing is,a lot of TV shows on TVDB or labeled as such, but the people that live in the country that it's shot in NEVER put in (US) or (UK), because it's assumed that since they live there, it's going to the their version.

iDentify seems to be aiming at an automated approach, and using settings to narrow down results seem to be the very best way to automate this.

So to recap, iDentify would ONLY append (US) or (UK) at the end if it ended up with it's first try as an "id could not be found." So it wouldn't mess with anything matching up at all, because it would always look for the original filename, but if it's results return nothing; it does a little improvision to hopefully find the best result. See what I mean. Win-win.

It would only append a (US) or (UK) if originally it couldn't find an exact name for the file on TVDB.

--"I suppose I could perhaps try and code something in. But even in the event of a failed lookup.."--

You see, the reason I ask is because I already have a lot of correctly tagged videos already, but I like how iDentify uses strictly TVDB; which creates standard labeling (instead of MetaX and using tagChimp to potentially get wrong data, and is completely random depending on the person who tagged it). So I would want to run all my files through Identify again, but if it can't find it on TVDB or IMDB then I would just want it to leave the rest of it's tags alone; as MetaX would have already taken care of that.

--"As for the problems you are encountering with "The Office"; I don't really know what to suggest right now other than adding (US) or (UK) as appropriate. I'll have to think on how to best handle it."--

Do you think my solution, (up there), is viable. I don't really see any down sides to my method. Like, if it finds the right show on the first try great, if not, then just search again with (US) or (UK) depending on the a setting in the preferences. Seems solid to me; think it could work? ^__^

I think your program may just be my new favorite haha :D.

Great work.
burypromote
iJoel commented on 21 Dec 2008
Ahh, I see. So you get one try, eh.

So I'm guessing you feed the variable(s) into this module and it spits out whether it finds it ("yes") or if it doesn't ("no"). And in the case that it does find it ("yes") it feeds your program the appropriate data?

Well, then you could just do 2 passes. Run the raw filename as the variable and if your module returns a "no" then strip the "."s (periods) and run another pass and then see if your module then returns a "yes" and gives you the data. That method could also allow any type of error checking (like the country preference I mentioned before, etc.)

It's not a big deal to me; I just figured I'd suggest it in the off-chance you wanted to put it in there (as the big thing your program's got goin for it is the automation; which is what I love about it).

You see, I'm implementing an applescript that will do all of the things that I need it to do (country preference, year preference, strip out "."s, add apostrophe's, etc) using your program as the tagger. All I needed to complete it was your new version that allowed for the file to not be tagged (which I see you've just uploaded, thank you ^__^).

I'm handling it this way.
Using atomicparsley I'm scanning each file that runs through for any kind of tags and saving a sample of the data; I then tell the applescript to run the file through your program, which it does, and then delays for awhile, until it thinks your program is done. I haven't actually figured out a way to get a report back from your program so I kinda just have to use the "delay" command for now.

After your program runs through the file, my applescript uses atomicparsley to scan through the file again and checks if any of the tags were modified (which is why I needed the preference of leaving my original files untagged in your program). If they are, then my script is happy and sends the file along to iTunes. If they haven't changed, then that means your program failed it's lookup so the my script replaces the ".'s (periods) with " " (spaces) and asks your program to do the lookup again, and the process repeats; with my script then appending (US) or (UK) at the end, and finally replaces "s " with " 's " and checks again. If it still fails then my script informs me and asks if I want to send iTunes anyway or try sending my file through MetaX.

Thats the way I'm currently handling it.
Although I'm not done with the script haha.
I have no internal control of your program so my ways kind of hack-ish, but since you have full control, it would probably be easier for you to do if you find it fitting; either way I'm pretty happy with the implementation.
burypromote
iJoel replied on 21 Dec 2008
Oh, and I'm definitely all for leaving you a great review
for iDentify. I just want to get my script up and running
first and use your program for real a few times to make
sure I know all I can, before I write the review.

^__^
There are currently no troubleshooting comments by this member.

Displaying 1-2 of 2
Please login or create a new
MacUpdate Member account
to use this feature


- -