AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / user-142729

Codemonkey's questions

Martin Hope
Codemonkey
Asked: 2025-01-25 17:06:44 +0800 CST

我可以让叠加的 png 水印随着时间而旋转吗?

  • 5

我目前有一个水印在视频中跳来跳去,里面有一段可怕的代码filter_complex

overlay=x='if(gte(mod(t*100, (W-w)*2), W-w), (W-w)*2 - mod(t*100, (W-w)*2), mod(t*100, (W-w)*2))'
       :y='if(gte(mod(t*100, (H-h)*2), H-h), (H-h)*2 - mod(t*100, (H-h)*2), mod(t*100, (H-h)*2))'

我也想让它随着时间旋转。

我发现当我定义覆盖元素时,我可以应用“rotate = 2”或其他任何方法将其旋转一次,并且它在弹跳时会保持原样。

如果我尝试rotate='PI*t'它什么也不做(但令人惊讶的是它没有给我一个关于 的错误t)。我想我并不惊讶它不起作用,但我很惊讶它没有抱怨我的t。

如果我尝试在同一个部分中添加rotate='PI*t'我告诉覆盖的内容x和y要具有的内容(我可能期望它工作的位置,因为t在那里可以清楚地理解),它确实会出错 -Option 'rotate' not found

这是否可以在 ffmpeg 命令中执行,或者我是否需要制作动画 apng/avif 水印文件?

(我使用的是相对较旧的 ffmpeg 版本,5.1.6。如果迁移到较新版本比较容易,我很乐意这样做 - 我正在运行 CentOS Stream 9。)

编辑

这就是我现在正在尝试的@Gyan

ffmpeg
-y
-i input.mp4
-loop 1 -i logo.png
-filter_complex "
    [0:v]
        scale=960:540[video];
    [1]
        scale=100:-1,colorchannelmixer=aa=0.6,rotate=a='PI/50*t':fillcolor=none[logo];
    [video][logo]
        overlay=x='if(gte(mod(t*100, (W-w)*2), W-w), (W-w)*2 - mod(t*100, (W-w)*2), mod(t*100, (W-w)*2))'
               :y='if(gte(mod(t*100, (H-h)*2), H-h), (H-h)*2 - mod(t*100, (H-h)*2), mod(t*100, (H-h)*2))'
"
-c:a aac
-c:v libx264
output.mp4

如果没有这个-loop 1,这需要 1-2 秒。有了它,我厌倦了,并ctrl-C在 30 秒后完成了它。

编辑二

好的,我删除了-loop 1并将相关行更改为

[1]loop=100:1:0,scale=100:-1,colorchannelmixer=aa=0.6,rotate=a='PI/5*t':ow=iw*1.5:oh=ih*1.5:fillcolor=none[logo];

这似乎做得很好。但只适用于 100 帧。如果我把它放在-1那里,它似乎会生成一个无限流,而不是匹配 input.mp4 的长度。我认为答案涉及关键字,但我不完全确定它应该放在哪里?之前shortest将它作为选项添加没有用。-shortestoutput.mp4

附加问题:图像旋转时,周围出现了白色圆形条纹,如何修复?

我做错什么了?

谢谢你!

ffmpeg
  • 1 个回答
  • 49 Views
Martin Hope
Codemonkey
Asked: 2019-11-19 01:23:43 +0800 CST

意外将数百万个文件写入(但随后删除)目录后,Bash 选项卡完成速度很慢

  • 0

前几天我遇到了一个脚本错误,将 400 万个小文本文件写入了我的主目录:

我不小心将 400 万个小文本文件写入了一个文件夹,如何最好地摆脱它们?

我删除了这些文件,但从那时起,每当我点击选项卡以完成文件名或路径时,在任何事情发生之前都会有半秒的延迟。

虽然文件现在已被删除,但我认为 gpt 或类似的东西有一些持久的损坏?有什么有用的工具可以用来清理它吗?

文件系统是 ext4(RAID 1 中有两个 3TB 驱动器),我运行的是 CentOS 7。

% ls -ld "$HOME"
drwx------. 8 myname myname 363606016 Nov 18 09:21 /home/myname 

谢谢

filesystems
  • 3 个回答
  • 121 Views
Martin Hope
Codemonkey
Asked: 2019-11-14 04:55:49 +0800 CST

我不小心将 400 万个小文本文件写入了一个文件夹,如何最好地摆脱它们?

  • 2

由于脚本错误(file_put_contents($text, $filename, FILE_APPEND)而不是file_put_contents($filename, $text, FILE_APPEND)我现在在一个文件夹中有 400 万个小文本文件。

我宁愿不核对整个文件夹,因为那里有一些有用的文件。

所有不需要的文件在文件名中间都有“jpg”,没有一个想要的文件。

删除这些的最快方法是什么?此刻我什ls至不能不挂我的控制台 - 这使得识别我想要保留的文件的名称变得困难,否则我只需将它们移出文件夹然后删除整个文件夹。

是find . -name "*jpg*" -delete最好的选择,还是有更好/更快的方法?

files
  • 1 个回答
  • 145 Views

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    模块 i915 可能缺少固件 /lib/firmware/i915/*

    • 3 个回答
  • Marko Smith

    无法获取 jessie backports 存储库

    • 4 个回答
  • Marko Smith

    如何将 GPG 私钥和公钥导出到文件

    • 4 个回答
  • Marko Smith

    我们如何运行存储在变量中的命令?

    • 5 个回答
  • Marko Smith

    如何配置 systemd-resolved 和 systemd-networkd 以使用本地 DNS 服务器来解析本地域和远程 DNS 服务器来解析远程域?

    • 3 个回答
  • Marko Smith

    dist-upgrade 后 Kali Linux 中的 apt-get update 错误 [重复]

    • 2 个回答
  • Marko Smith

    如何从 systemctl 服务日志中查看最新的 x 行

    • 5 个回答
  • Marko Smith

    Nano - 跳转到文件末尾

    • 8 个回答
  • Marko Smith

    grub 错误:你需要先加载内核

    • 4 个回答
  • Marko Smith

    如何下载软件包而不是使用 apt-get 命令安装它?

    • 7 个回答
  • Martin Hope
    user12345 无法获取 jessie backports 存储库 2019-03-27 04:39:28 +0800 CST
  • Martin Hope
    Carl 为什么大多数 systemd 示例都包含 WantedBy=multi-user.target? 2019-03-15 11:49:25 +0800 CST
  • Martin Hope
    rocky 如何将 GPG 私钥和公钥导出到文件 2018-11-16 05:36:15 +0800 CST
  • Martin Hope
    Evan Carroll systemctl 状态显示:“状态:降级” 2018-06-03 18:48:17 +0800 CST
  • Martin Hope
    Tim 我们如何运行存储在变量中的命令? 2018-05-21 04:46:29 +0800 CST
  • Martin Hope
    Ankur S 为什么 /dev/null 是一个文件?为什么它的功能不作为一个简单的程序来实现? 2018-04-17 07:28:04 +0800 CST
  • Martin Hope
    user3191334 如何从 systemctl 服务日志中查看最新的 x 行 2018-02-07 00:14:16 +0800 CST
  • Martin Hope
    Marko Pacak Nano - 跳转到文件末尾 2018-02-01 01:53:03 +0800 CST
  • Martin Hope
    Kidburla 为什么真假这么大? 2018-01-26 12:14:47 +0800 CST
  • Martin Hope
    Christos Baziotis 在一个巨大的(70GB)、一行、文本文件中替换字符串 2017-12-30 06:58:33 +0800 CST

热门标签

linux bash debian shell-script text-processing ubuntu centos shell awk ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve