У меня есть файл фильма, который мне нужен, чтобы показать тайм-код (время выполнения). Это должно быть "сожжено" к видео. Как я могу это сделать?
2 ответа
Вы можете использовать AviSynth.
Это удивительно мощный командный скрипт для поточной обработки видео, и он бесплатный. Если ваше видео еще не в формате .avi, вы можете использовать функцию DirectShowSource(«myOriginalVideo.xyz») AviSynth, в противном случае используйте AviSource(«myOriginalVideo.avi»).
Как это устроено:
AviSynth - это язык сценариев. Вы пишете свои команды в простом текстовом файле, который имеет тип файла .avs (например, «myNewVideo.avs»), и сам скрипт становится (новым) воспроизводимым .avi.
Поскольку вывод файла .avs полностью несжатый (видео и аудио), вам нужно будет подать «myNewVidwo.avs» в любой видео кодер, который вам нравится; перепаковать это. VirtualDub очень эффективен и прямолинеен для этапа перекодирования (VirtualDub бесплатен).
Вот скрипт AviSynth, который сделает эту работу. Это помещает H:MM:SS.nnn в верхнем левом углу экрана.
#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---------------------------------------------------------------------------
Я думаю, это то, что вы ищете:
Timecode Commander - это графический интерфейс и инструмент командной строки для записи временного кода поверх видео в формате Windows Media (.wmv).
Невероятно полезен для обхода прокси для редакторов, транскрипции или субтитров.