我正在尝试创建一个TC Burn-In,正确显示源视频的TC。
我当前的FFMPEG滤波器行是:
-filter_complex "[0:1][0:2] amerge" -preset ultrafast -vf scale=960:540:in_range=tv:out_range=pc,"drawtext=timecode='00:00:00:00':timecode_rate=25:x=(w-tw)/2:y=h-(2*lh):fontcolor=white@1:fontsize=30:box=1:boxcolor=black@0.6" -c:v libx264 -pix_fmt yuv420p -crf 27 -c:a aac -ar 48000 -b:a 128k
这当然会在00:00:00:00启动Burn-In,但我宁愿插入文件的TC(在本例中,它开始于10:00:00:00)—数据取自MediaInfo:
Other #1
ID : 1-Material
Type : Time code
Format : MXF TC
Frame rate : 25.000 FPS
Time code of first frame : 10:00:00:00
Time code of last frame : 10:02:34:20
Time code settings : Material Package
Time code, stripped : Yes
Title : Timecode
Other #2
ID : 0-Source
Type : Time code
Format : MXF TC
Frame rate : 25.000 FPS
Time code of first frame : 10:00:00:00
Time code of last frame : 10:02:34:20
Time code settings : Source Package
Time code, stripped : Yes
Other #3
Type : Time code
Format : SMPTE TC
Muxing mode : SDTI
Frame rate : 25.000 FPS
Time code of first frame : 10:00:00:00
我还没有找到一种方法来使FFMPEG读取TC并将其用于Burn-In。你们有人知道怎么做吗?
谢谢基督教
以防有人遇到同样的问题:ffmpeg本身无法读取文件的TC并使用它在TC中刻录(截至2023年1月)。
有一个工作流程的编码工具,我使用(FFAStrans -它是免费的,它很棒),可以实现这一点:https://ffastrans.com/frm/forum/viewtopic.php?f=5&t=1442