【问题标题】:Text Watermarking on video without loss of audio and video quality视频上的文字水印,不损失音频和视频质量
【发布时间】:2021-01-07 15:38:43
【问题描述】:

我正在使用以下命令在视频文件上添加文本水印(用于 mp4、mpg、m4v、flv、mov 等):

ffmpeg -i input.mp4 -vf "drawtext=text='Opentext':x=(w-text_w)/2:y=(h-text_h)/2:fontsize=24:fontcolor=white" TextOutput.mp4

对于某些文件转换,视频文件的属性会发生变化。例如-当我尝试在 mkv 文件上添加文本水印时,我收到了以下消息:

[matroska @ 0000001867d36ec0] 输出流 0:1 中的非单调 DTS; 上一个:2273,当前:1596;更改为 2273。这可能会导致 输出文件中的时间戳不正确。

这是我在这里提到的问题之一。还有其他的,例如:

  • 视频质量下降
  • 视频文件大小发生变化(急剧增加/减少)
  • 出现音频滞后等...

所以,我想在添加文本水印后保留视频的质量。我该怎么做?

【问题讨论】:

  • Google.com 中尝试搜索:"mkv" Non-monotonous DTS。你的问题已经被问过很多次了。研究一下现有的一百个答案是否对您有帮助。
  • 嗨@VC.One,我正在寻找一个命令,可以帮助我获得带水印的输出视频文件,而不会进行任何有损转换。提到的问题只是问题发生的一个例子。

标签: video ffmpeg watermark video-watermarking


【解决方案1】:

使用-crf(恒定速率因子)来提高图片质量。
数字越小质量越高(在可能的情况下),但编码时间更慢。测试一个好的数字。

还可以使用b:v 设置良好的视频比特率(例如: 250035004000)。

试试:

ffmpeg -i input.mp4 -vf "drawtext=text='Opentext':x=(w-text_w)/2:y=(h-text_h)/2:fontsize=24:fontcolor=white" -c:v libx264 -pix_fmt yuv420p -crf 20 -c:a copy TextOutput.mp4

【讨论】:

  • -b:v-crf 是互斥的。其中之一将被忽略。
  • @llogan 谢谢。我已经删除了-b:v,因为使用-crf 可能更容易实现逻辑。
猜你喜欢
  • 1970-01-01
  • 2017-12-31
  • 1970-01-01
  • 1970-01-01
  • 2016-12-23
  • 1970-01-01
  • 2021-10-27
  • 1970-01-01
  • 2015-03-24
相关资源
最近更新 更多