小编tsb*_*lan的帖子

平铺动画 gif

有什么方法可以使用 imagemagic / montage 来平铺循环的动画 gif(与非动画的混合)?

也就是说,我想在空间中而不是在时间上连接动画。我意识到动画中的帧数及其持续时间可能无法巧妙地组合两个动画。但是我对程序进行近似和猜测以及扩展/重复帧很好,只要所有帧都以某种方式存在。

我试过了

convert *.gif -append output.gif
Run Code Online (Sandbox Code Playgroud)

montage *.gif -mode concatenate -tile x1 output.gif
Run Code Online (Sandbox Code Playgroud)

但这些都将动画 gif 视为多个单独的非动画。

我想我可能可以编写一个脚本来按帧将动画分开,根据需要重复/扩展较短的循环以匹配最长的循环,重复非动画 gif 以获得最长动画中的尽可能多的帧,将相应的帧拼接在一起成单个大框架-append,然后将这些大框架组合成一个大 gif。但是,如果通过一些简单的命令已经可以做到这一点,我不想重新发明轮子。

除了 imagemagick 之外,我当然对其他免费选项持开放态度。

animated-gif imagemagick images

10
推荐指数
1
解决办法
2282
查看次数

dd 在第一次尝试时总是无法写入一个分区;第二次成功

对于机器人项目,我组装了一个 make 目标,它使用dd(实际上dcfldd)将 Raspbian Jessie 图像写入 SD 卡。这样,我可以放心,我的环境可以随时从头开始重现。

制作目标只是

flash:
    sudo dcfldd bs=4M if=$(IMGPATH) of=$(SDX)
    sync
Run Code Online (Sandbox Code Playgroud)

$(SDX)/dev/sdc在哪里,并且意味着前面有一个脚本,该脚本将映像挂载到 /mnt/img,进行一些修改、调用sync,然后卸载它。

这个过程似乎工作正常,除了我总是需要调用 make 目标两次——第一次,如果我正确弹出整个读卡器然后重新插入,图像中的两个分区之一无法安装,而且,如果我尝试从中启动 Raspberry Pi,我会遇到内核恐慌。

在尝试闪存卡(使用 Make 目标或在终端中手动),使用 Ubuntu 的“弹出父驱动器”启动器上下文菜单选项弹出,移除并重新插入读卡器后,引导分区在 Nautilus 中打开,但我得到了下面的对话框,没有主分区。

安装错误

dmesg 的最后一百行左右在这里。可能相关的是

[100640.545190] FAT-fs (sdb1): Volume was not properly unmounted. Some data may be corrupt. Please run fsck.
Run Code Online (Sandbox Code Playgroud)

[101082.691558] EXT4-fs (sdb2): bad geometry: block count 3894272 exceeds size of device (964096 blocks)
Run Code Online (Sandbox Code Playgroud)

正如第一个建议的那样,我做了sudo fsck /dev/sdb,并得到以下内容。

fsck from util-linux …
Run Code Online (Sandbox Code Playgroud)

linux sd-card dd raspberry-pi

7
推荐指数
1
解决办法
532
查看次数

标签 统计

animated-gif ×1

dd ×1

imagemagick ×1

images ×1

linux ×1

raspberry-pi ×1

sd-card ×1