В проекте CoreUtils для Windows http://gnuwin32.sourceforge.net/packages/coreutils.htm есть команда date
, которая предоставляет те же параметры, что и в Linux.
Загрузите программное обеспечение и переименуйте date.exe
в gnudate.exe
, чтобы избежать конфликта с командой Dos date
. Вам нужны файлы libintl-2.dll
и libiconv-2.dll
для запуска команды.
Для всех доступных опций введите:
gnudate --help
Например, gnudate "+%a %e %b %Y %H:%M:%S"
даст:
Sun 10 apr 2016 21:52:35
Команда gnudate +%s
выдаст секунды с начала эпохи:
1460325461
Следующий пакетный файл Dos показывает использование gnudate. Вам нужно будет удвоить %
в параметре gnudate +%s
.
rem set the variable s to the epoch seconds.
for /f "tokens=1 delims=" %%A in ('gnudate +%%s') do set s=%%A
rem use `%s%` for the time offset parameter of the ffmpeg drawtext filter.
ffmpeg -y -f lavfi -i testsrc=duration=15.3:size=cif:r=10 -vf "drawtext=fontfile=arial.ttf:text=%%{pts\\\:localtime\\\:%s%\\\:%%a %%d %%b %%Y %%H\\\\\\:%%M\\\\\\:%%S}:fontsize=10:x=w-text_w:y=h-lh:box=1" a.mp4
ffplay a.mp4
Этот пакетный файл был протестирован с Windows 8 на виртуальной машине под Linux.
Чтобы запустить его, вам нужно установить ffmpeg
.
Вы можете скачать Static build
с https://ffmpeg.zeranoe.com/builds/.