8种机械键盘轴体对比

本人程序员,要买一个写代码的键盘,请问红轴和茶轴怎么选?

写博客时常常需要将 MP4 视频转换成 gif,方便插入。网上有挺多网站可以在线转,但是质量一般,有的还有文件大小或数量限制,其中,在 Linux 命令行下,很容易就能实现这个功能。

工具选择:截取视频中的图片:mplayer

合并处理 gif:imagemagick

安装命令1

2sudo apt-get install mplayer

sudo apt-get install imagemagick

完成转换需要完成三项工作:将视频转换为 jpeg,将 jpeg 合成 gif,压缩 gif 文件

假设 MP4 文件在 ~/Video/ 目录下,文件名为 screenrecorder.mp41

2cd ~/Video

mplayer -ao null screenrecorder.mp4 -vo jpeg:outdir=.tmp

-ao null 表示不输出音频

-vo jpeg 表示将视频输出为 jpeg

:outdir=.tmp 表示将 jpeg 输出到当前目录下的 .tmp 文件夹中

接下来需要用 imagemagick 将多张图片合成 gif。1convert .tmp/*.jpge screen.gif

这个操作极为耗时,而且会报下面一个错误:

这个错误之所以出现,是因为 ImageMagick 在其安全策略配置文件中,将 ImageMagick-6 的内存使用限制为 256MB,导致 ImageMagick 不能获得足够的内存来完成图片合成。

ImageMagick 的安全策略配置文件位置可以通过 identify -list policy 获取,一般为 /etc/ImageMagick-6/policy.xml。然后用你喜欢的编辑器打开文件找到下面一行进行编辑即可,注意,编辑此文件需要管理员权限。1

具体改成多少可以看你机器的配置而定。

直接合成的 gif 图片尺寸过大,以我 28 秒录屏为例,生成 865 张图片,合成的 gif 体积高达 109.1MB,如果直接使用,简直是不可想象的,因此还需要使用 ImageMagick 进一步压缩。1

2

3

4

5

6

7

8原尺寸

ls -l screen.gif

-rw-rw-r-- 1 zeamonk zeamonk 109146833 10月 4 22:48 screen.gif

压缩

convert screen.gif -fuzz 15% -layers Optimize 1.gif

压缩后尺寸

ls -l 1.gif

-rw-rw-r-- 1 zeamonk zeamonk 1.7M 10月 5 01:19 1.gif

-fuzz 选项启用后会将相近的颜色会被压缩为同一种颜色,后面的值表示颜色相近区域的范围,数越大代表范围越大,图片失真越严重。实测 15% 的情况下失真是可以接收的,如果将 -fuzz 设为 20%,文件尺寸可以进一步压缩到 900k,但失真会比较严重。

下图是 15% 压缩的图片

为了方便使用,还是写个脚本吧。1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16# 生成 jpg 文件

echo "Generate pictures..."

out1=`mplayer -ao null $1 -vo jpeg:outdir=.tmp > /dev/null`

# 预处理,对文件进行压缩

echo "Compress picture..."

out2=`find .tmp/*.jpg -exec convert {} -strip -resize 75% -quality 75% {} ;`

# 合成 gif

echo "Start converting jpgs to gif..."

out3=`convert .tmp/*.jpg -delay 20 .tmp/tmp.gif`

# 压缩 gif

echo "Optimize gif..."

out4=`convert .tmp/tmp.gif -fuzz 15% -layers Optimize output.gif`

# 清理残余文件

echo "Clear tmp files..."

rm .tmp/* > /dev/null 2>&1

echo "Completed..."

关注下公众号好不好

windows下的gjf转到Linux,通过命令行将 MP4 转换成 gif相关推荐

  1. linux c十六进制转十进制函数,用Linux/Unix命令把十六进制转换成十进制(转)

    那天写个脚本,需要把十六进制的数字转成十进制的打出来,发现不知道要怎么弄,搜一下,原来还是很简单的,比用C语言什么的容易多了,就一些现成的命令就解决了. 先列两种简单的方法: 1) echo 自己就能 ...

  2. Linux通过命令行将英文改成中文

    1.首先查看当前系统是否有中文语言包 locale -a 如果没有zh_CN.utf8,就需要下载中文语言包,否则,如果有中文语言包,跳过第二步. 2.安装中文语言包 Ubuntu: sudo apt ...

  3. Windows 下目录及文件向Linux同步

    本文解决的是Windows 下目录及文件向Linux同步的问题,Windows向 Windows同步的请参考:http://www.idcfree.com/article-852-1.html 环境介 ...

  4. 将Windows下的文件同步到Linux下

    需求:把Windows下的某些文件自动传送到Linux指定目录下 实现: 1. Windows下安装 WinSCP工具,并把Liunx服务器信息保存 2. 编写脚本,实现双击工具就把Windows下的 ...

  5. windows 调用linux .a lib,动态链接库及静态链接库(windows下的.dll .lib和linux下的.so .a)...

    动态链接库及静态链接库(windows下的.dll .lib和linux下的.so .a) 库有动态与静态两种,动态通常用.so为后缀,静态用.a为后缀.例如:libhello.so libhello ...

  6. 如何将Windows下的文件传到Linux中

    将Windows下的文件传到Linux,这里有一款叫做WinSCP的软件,感觉很好用,能直接拖拉过去的. 先给出它的官方链接https://winscp.net/eng/download.php 下载 ...

  7. linux添加windows字体文件夹里,如何把Windows下的字体添加到Linux中

    如何把Windows下的字体添加到Linux中 Linux(Fedora/Ubuntu/CentOS)的字体实在不尽如人意,而且在网页及文档显示时很多字无法显示出来,特别多的空白和乱码,其实,我们可以 ...

  8. windows下的可执行程序可以再linux下运行吗?

    windows下的可执行程序可以再linux下运行吗? 答案:不能 原因有以下: (1) 可执行的二进制文件包含了:机器指令.数据资源.程序运行资源(物理的和虚拟的内存空间.进程.线程资源等).因此说 ...

  9. Windows下使用VSCode远程搭建Linux开发平台

    Windows下使用VSCode远程搭建Linux开发平台 前言 1.开启Windows的SSH功能 1.1.打开设置,进入应用 1.2.进入可选功能 1.3.安装SSH功能 2.开启Linux的SS ...

最新文章

  1. C#:将另一个应用程序的主窗口移至屏幕最前
  2. 为什么说 Java 程序员到了必须掌握 Spring Boot 的时候?
  3. javascript: new Date(string)在IE中显示NaN的问题!
  4. Spring Cloud 学习笔记(四)-Spring Cloud Hystrix
  5. PostgreSQL在何处处理 sql查询之三十八
  6. 做向量召回 All You Need is 双塔
  7. HarmonyOS之深入解析图像的编码和解码
  8. 【.Net基础02】XML序列化问题
  9. goods.java_javaweb网上书城项目 1.用户管理:注册会员 - 下载 - 搜珍网
  10. solr crud_Spring Data Solr教程:CRUD(差不多)
  11. linux添加nginx启动脚本_linux环境开机自启动nginx
  12. python之模块的导入和用户的交互格式化输出
  13. Python学习笔记五
  14. linux进程间通信练习:对于text.txt文件,子进程将字符串“something communication”写入text.txt,父进程读取text.txt文件内容并打印。
  15. 4K视频质量测试/4K质量评价
  16. LOJ6437 PKUSC2018 PKUSC
  17. 调查 问卷 设计 注意 - Web
  18. c语言打印变量高低字节,亲自动手——C语言变量所占字节,及自动类型转换
  19. 构建基于MX1919的超声波阵列驱动板
  20. xmind打不开java_xmind打开出错(JVM terminated. Exit code=-1) | 学步园

热门文章

  1. 华为OD机试用Python实现 -【士兵过河】| 含思路
  2. 搜狗手机浏览器测试管理方法(二)-----项目测试流程
  3. Nginx玩法 — 反向代理
  4. 應該是要敗大光圈定焦鏡頭35mmF2D 還是閃光燈呢 SB-600? SB-800??~~
  5. 【业务知识】Super-Smack和迅雷休闲游戏架构
  6. 比特中文android版,比特精灵安卓版本6.1
  7. 【发布】iOS百度贴吧助手1.0
  8. 健身行业需求分析与解决方案-捷径体系
  9. YYN图论学习路线(推荐)
  10. 4.20 使用自动色调、自动对比度和自动颜色命令调整图像色调 [原创Ps教程]