Page 1 of 2

Reading Timecode from a QT file?

Posted: April 27th, 2006, 2:31 pm
by lloydalvarez
Is it possible to read the TC from a QT that was captured in Final Cut Pro or elsewhere?

TC

Posted: April 27th, 2006, 8:51 pm
by redefinery
Is this the Timecode track in a QuickTime movie or burned-in timecode? I'm not aware of anything available to do either via scripting.

Jeff

Re: TC

Posted: April 28th, 2006, 5:14 am
by lloydalvarez
redefinery wrote:Is this the Timecode track in a QuickTime movie or burned-in timecode? I'm not aware of anything available to do either via scripting.

Jeff
I would like to read the Timecode track.

Posted: May 1st, 2006, 7:16 pm
by bradshaw1965
I don't think it is natively acesssible via scripting. An idea i've been playing with is to use the new Quicktime Metadata API

http://developer.apple.com/documentatio ... ion_9.html

to bake in the timecode from FCP xml and then deducing the timecode based on offset. It would need to work in consort with an external program, but it would be one way to approach the problem.

Has anybody had any successful experiments with calling external programs from within the scripting environments within AE7?

Dale Bradshaw
creative-workflow-hacks.com

Posted: May 1st, 2006, 7:54 pm
by lloydalvarez
I found this little app on the apple website that i think will do what i want (the first half anyway):

http://developer.apple.com/samplecode/q ... ecode.html

but i can't get it to run under 10.4.5

from the readme file it seems that it extracts the TC from a QT file which i could then write a script that would place it in an AE comp with matching timecode, but since i can't get it to run i have hit a bit of a wall..

am i missing something here? any help with this will be greatly
appreciated

Posted: May 2nd, 2006, 6:36 am
by bradshaw1965
Lloyd,

...I found this little app on the apple website

I don't think this app will help you unless you've somehow gotten FCP to write a timecode track that incorporates media in/media out from the source tape. When I look at the captured QT's from FCP the TC track is in relation to the media, not the source tape. What information are you hoping to extract?

I've been working on some database, metadata apps for Primal Screen to make the raw QT's more searchable and usable. Thinks like Job Numbers, color info, TC info etc. It would be great to query this data by gathering a query parameter in AE, send it to a command-line parser and get useful data back. I'm just getting started on my research though and I could be heading in the wrong direction so please correct me if you have better info.

Best,

Dale Bradshaw
creative-workflow-hacks

Posted: May 2nd, 2006, 6:57 am
by lloydalvarez
You are right, i would need the media in and out from the source tape, but this info is displayed within FCP, so it's being stored somewhere. I guess i just assumed it was being stored in the QT file, but maybe you are correct about that. hmmmm.. I honestly don't know why it's so hard to read TC within After Effects since it's something we work with every day.

Posted: May 2nd, 2006, 7:50 am
by bradshaw1965
Lloyd,

...so it's being stored somewhere

It's definitely in the xml representation of the project.

My idea is to set up a tool, "bake metadata" in FCP. It would gather the useful info from the project and place that info in each QT.

To do this you'd write a .bundle plugin and adhere to the PRODataInterchange cocoa protocol that FCP transmits. If anybody can help in the reverse engingeering of that protocol I'd love some insight, email me if you don't want to post publicly.

I realize i'm straying from the AE scripting realm so I'll just leave it at that.

best,
Dale Bradshaw
creative-workflow-hacks.com

Posted: May 11th, 2006, 5:22 am
by mark.burton
Hi,

Maybe I am missing the point of what you guys are saying, but if you are trying to use the data from the TC Track of a Quicktime movie captured in FCP, both the source TC and the source Tape ID are in there.

An easy way to see, check and edit the TC track data is to use Sebsky Tools

The Quicktime files you take from FCP to AE will have this data in the TC Track, so if you can get to it then you won't need to touch the FCP browser/XML data.

Mark

Posted: May 11th, 2006, 6:36 am
by bradshaw1965
Hey Mark...

Thanks for the link to Sebsky Tools, looks like a great utility. I apologize for the misinformation. Here is what I misread. I'm enclosing a couple of screenshots...
Image

and

Image

Is the Quicktime Player info just a horrible user interface and it is reporting 0.00 when actually that is just where the Timecode track is located? I guess so. yuck.

I must admit I'm just starting my understanding of this particular issue and I stand corrected.

Thanks again,

Dale

Posted: May 11th, 2006, 6:47 am
by mark.burton
Hi Dale,

Thats exactly it. Quicktime Player is shamefully useless when it comes to Timecode data. It tells you there is a track but then proceeds to show you none of the data in the track!

Best
Mark

Posted: August 30th, 2006, 7:15 am
by bradshaw1965
Hey guys,

I've got what I think is a working solution for this problem posted here:

http://www.creative-workflow-hacks.com/ ... -solution/

If you would, can you take a look and see if it works for you?

Best,

Dale

Posted: September 6th, 2006, 1:03 pm
by lloydalvarez
Hey Dale,

Since Unix is not my forte i might be doing something wrong, but i can't get your solution to work. Here's what i did.

1. downloaded your .zip archive
2. since i did not have a "bin" folder in my home directory ~/ i created a folder called bin and moved the file called timecodereader which was in your build/Release folder into it.
3. opened Terminal and typed:
export PATH="$PATH:~/bin"
echo 'PATH="$PATH:~/bin"' >> .profile
4. within AE, selected a QT movie with timecode and ran the timecodereader.jsx script

in the info window i get this:

tc:/bin/bash: line1: timecodereader: command not found

I then tried the explicit path, so i changed the script to:

var timecode = system.callSystem("~/bin/timecodereader " + String(thisItem.mainSource.file));

and then i get this in the info window:

tc:/bin/bash: line 1: 1068 Bus error ~/bin/timec

i'd love to get this to work so hopefully i am doing something obviously wrong..

-lloyd

Posted: September 6th, 2006, 2:40 pm
by bradshaw1965
Hi lloyd,

Can you do a couple of things for me?

First...

1.Launch terminal
2.type timecodereader and then hit the space bar
3. drop the QT in question on the terminal window
4. hit return

do you get a timecode or bus error? We dropped the file to get a fully escaped path to the QT. If you get a bus error, can you copy/paste the path and send it to me at dale(at)creative-workflow-hacks(dot)com?

if you get a timecode, let's go back to AE and output the result of String(thisItem.mainSource.file) to a file or alert(), then repeat the above but with the path string that AE produces. and see if we get a bus error there.

Can you report back the results either here or at the email address above? I'd love to get this debugged for wider release, it's a pretty handy utility.

Thanks,

Dale

Posted: September 6th, 2006, 2:56 pm
by lloydalvarez
hey dale,

ok.. so it seems to work when the QT is on the internal drive, but it gives a bus error when it's on an external volume.

works:

Lloyd-G5:~ lloyd$ timecodereader /Users/lloyd/Desktop/city-hall
00:00:07;26


doesn't work:

Lloyd-G5:~ lloyd$ timecodereader /Untitled/Capture%20Scratch/cam%20test/city-hall
Bus error