שלום
איך אפשר לצרוב את הזמן הנוכחי כולל מילי שניות על כל פריים בFFMPEG?
הי קרוב שהגעתי אליו זה:
קוד: |
ffmpeg -loglevel verbose -i video.mp4 -vf "drawtext=x=8:y=8:box=1:fontcolor=white:boxcolor=black: \
expansion=strftime:basetime=$(date +%s)000000: \
text='%s'" output.mp4
|
שצורב בשניות.
מצאתי משהו כזה שנראה לכאורה שהוא מדפיס מילי שניות:
קוד: |
ffmpeg -loglevel verbose -i video.mp4 -vf "settb=AVTB,
setpts='trunc(PTS/1K)*1K+st(1,trunc(RTCTIME/1K))-1K*trunc(ld(1)/1K)',
drawtext=text='%{localtime\: %s}%{eif\:1M*t-1K*trunc(t*1K)\:d}':fontsize=150" output.mp4
|
שנראה שהמילי שניות מתעדכנות אבל החלק של השניות.
נראה שהבעיה ש localtime לא נקרא כל שניה או כל פריים.
למשל:
קוד: |
ffmpeg -loglevel verbose -i video.mp4 -vf "drawtext=text='%{localtime\:%T}':fontsize=50" -t "00:00:10" output.mp4
|
שניה מתחלפת רק לאחר 8 שניות ניגון.
תודה.