Super User is a question and answer site for computer enthusiasts and power users. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I have movie file that I need to show the timecode (running time) on. It must be "burned in" to the video. How can I do this?

share|improve this question
1  
you might try asking this on home4film.com which is an audio/video Q-n-A site. or one of the other photo/video sites in this list: meta.stackexchange.com/questions/4/list-of-stackexchange-sites – quack quixote Feb 26 '10 at 8:22
1  
that isn't to say your question isn't welcome here (it's about how to use video creation software, so i think it's ok), but those other sites might be better suited to get you an answer. – quack quixote Feb 26 '10 at 8:24

You can use AviSynth.

It is an amazingly powerful command script for in-line processing of videos, and its free. If your video is not already in .avi format, you can use AviSynth's DirectShowSource("myOriginalVideo.xyz") funciton, otherwise use AviSource("myOriginalVideo.avi").

How it works:
AviSynth is a scripting language. You write your commands in a simple text file which has a filetype of .avs (eg. "myNewVideo.avs"), and the script itself becomes a (new) playable .avi.

Because the output of the .avs file is fully uncompressed (video and audio), you will need to feed "myNewVidwo.avs" into any video encoder you like; to recompress it. VirtualDub is very effective and straight-forward for the re-encoding step (VirtualDub is free).

Here is an AviSynth script which will do the job. It puts H:MM:SS.nnn in the top left of the screen.

#BEGIN-------------------------------------------------------------------------
global    xPos = 10
global    yPos = 10
global subsize = 20
global subfont = "Arial Narrow"
#------------------------------------------------------------------------------
function SubtitleTime( obj )
{ 
  obj = ScriptClip( obj, "Subtitle( 
  \   String( chr(32) )
  \ + String( RightStr( String( ((int(current_frame/Framerate)/60)/60) ), 2 ) )
  \ + String( chr(58) )
  \ + String( RightStr( String( String( 0 ) + String( (int(current_frame/Framerate)/60)-(((int(current_frame/Framerate)/60)/60)*60) ) ), 2 ) )
  \ + String( chr(58) )
  \ + String( RightStr( String( String( 0 ) + String( (int(current_frame/Framerate))-(((int(current_frame/Framerate))/60)*60) ) ), 2 ) )
  \ + MidStr( String( (current_frame/Framerate) -  (int(current_frame/Framerate)) ), 2, 4 )
  \ , font=subfont, size=subsize, x=xPos, y=yPos)
  \ ")
  return obj
}
#------------------------------------------------------------------------------
DirectshowSource("myOriginalVideo.avi").SubtitleTime
#END---------------------------------------------------------------------------
share|improve this answer

I think this is what you're looking for:

Timecode Commander is a GUI and command-line tool for burning in timecode over the top of video in Windows Media (.wmv) format.

Incredibly useful for round-tripping proxies to editors, transcription or captioning houses.

share|improve this answer
    

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .