热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

linux动态图片制作,Ubuntu17.10下使用kazam制作gif动态图片

各种各样的gif动图为我们的交流带来了很大的乐趣,gif图片比视频小,比静态JPG图片又形象生动,更适用于产品展示和步骤演示等。本教程简单介绍一下在Ub

各种各样的gif动图为我们的交流带来了很大的乐趣,gif图片比视频小, 比静态JPG图片又形象生动,更适用于产品展示和步骤演示等。本教程简单介绍一下在Ubuntu 17.10系统下使用kazam制作gif动态图片的过程。注:其他基于Ubuntu的衍生版安装使用也是一样的。

需要安装的软件: 包括kazam和ffmpeg

kazam是Linux下的一款界面直观简单但功能强大的屏幕录制工具,易于上手,你可以设置选择录制整个桌面、指定窗口或是一个自定义的区域。你还可以选择记录鼠标的移动轨迹。Kazam 还有延时录制的功能,这在制作视频教程的时候很有用呢。

547194fb4aa9eb53081cee67319895cb.gif

Ubuntu安装kazam:

可以选择通过PPA安装

添加源:sudo add-apt-repository ppa:kazam-team/unstable-series

5a2b7f23f652bfcfc7fb4485d9fb6f85.png

更新源:sudo apt-get update

5255565e3ad0d244215f0c7d9c4fbafd.png

安装:sudo apt-get install kazam

2c31e0330246abc0c0b4f378e4d17951.png

安装成功后就可以在终端输入kazam命令打开该软件界面。

5bc370c7d55a860d7e40da777058aa04.png

kazam界面

fee2278f2c312e8a6e97704fadffc542.png

kazam延时录制功能

FFmpeg是用于录制、转换和流化音频和视频的完整解决方案, 包括 libavcodec ,一套领先的音/视频编解码类库。FFmpeg 在一般用于Linux上的开发,可以在大多数操作系统下编译,包括Windows。

Ubuntu安装方法:

在Ubuntu终端输入以下命令:

sudo apt-repository ppa:kirillshkrogalev/ffmpeg-next

00be665f8ea8001af08a496c20996e4b.png

sudo apt-get update

5255565e3ad0d244215f0c7d9c4fbafd.png

sudo apt-get install ffmpeg

0d4114709c0586f19cbb09bb8554ceb3.png

安装完成后, 在终端输入

linuxidc@linuxidc:~$ ffmpeg -version

15033d29b45ca80096009b662c4fe0d5.png

若出现以下信息, 说明安装成功.

ffmpeg version 3.3.4-2 Copyright (c) 2000-2017 the FFmpeg developers

built with gcc 7 (Ubuntu 7.2.0-8ubuntu2)

configuration: --prefix=/usr --extra-version=2 --toolchain=hardened --libdir=/usr/lib/x86_64-linux-gnu --incdir=/usr/include/x86_64-linux-gnu --enable-gpl --disable-stripping --enable-avresample --enable-avisynth --enable-gnutls --enable-ladspa --enable-libass --enable-libbluray --enable-libbs2b --enable-libcaca --enable-libcdio --enable-libflite --enable-libfontconfig --enable-libfreetype --enable-libfribidi --enable-libgme --enable-libgsm --enable-libmp3lame --enable-libopenjpeg --enable-libopenmpt --enable-libopus --enable-libpulse --enable-librubberband --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libspeex --enable-libssh --enable-libtheora --enable-libtwolame --enable-libvorbis --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx265 --enable-libxvid --enable-libzmq --enable-libzvbi --enable-omx --enable-openal --enable-opengl --enable-sdl2 --enable-libdc1394 --enable-libiec61883 --enable-chromaprint --enable-frei0r --enable-libopencv --enable-libx264 --enable-shared

libavutil      55. 58.100 / 55. 58.100

libavcodec    57. 89.100 / 57. 89.100

libavformat    57. 71.100 / 57. 71.100

libavdevice    57.  6.100 / 57.  6.100

libavfilter    6. 82.100 /  6. 82.100

libavresample  3.  5.  0 /  3.  5.  0

libswscale      4.  6.100 /  4.  6.100

libswresample  2.  7.100 /  2.  7.100

libpostproc    54.  5.100 / 54.  5.100

linuxidc@linuxidc:~$

Gif制作方法:

1 视频录制.

打开Kazam软件,其中全屏表示录制整个平面,窗口表示录制特定的窗口,区域表示自己选取某个区域,这个可根据自己需求自行选择。

选择好录制区域后,点击Capture按钮,此时屏幕开始倒计时录制。倒计时时间可自己设置,录制完成的视频保存为linuxidc.mp4文件。

2 将视频转化为Gif

ffmpeg功能强大,这里只是介绍将视频转为Gif时常用的指令。

要将之前保存的linuxidc.mp4文件转化为Gif, 可简单的使用下面命令:

$ ffmpeg -i linuxidc.mp4 linuxidc.gif

dd23c41cea5486bf6d65641a4dbcb55c.png

这是按照默认的参数将, 其中linuxidc.mp4是输入的视频文件, linuxidc.gif 为输出文件. 但是此时的源视频或许是1080P的高清视频,转化后的Gif文件后容量比源视频大的多了,所以为了达到自己的要求,需要添加相应的参数。通常来讲,下面的对下面指令的参数进行适当修改一般都可满足我们的要求。

$  ffmpeg -ss 2 -t 8 -i linuxidc.mp4 -s 600x375 -r 15 linuxidc.gif

33b983f1e299a6eae6ad03cb240aba3d.png

其中,  -ss 2 to 8 表示从从视频的第2秒开始转换,转换时间长度为8秒后停止。 -s用于设定分辨率, -r 用于设定帧数,通常gif有15帧左右就比较流畅了。

转换好的截图见本页最上面的截图。

0b1331709591d260c1c78e86d0c51c18.png



推荐阅读
  • 在Ubuntu 18.04上使用Nginx搭建RTMP流媒体服务器
    本文详细介绍了如何在Ubuntu 18.04上使用Nginx和nginx-rtmp-module模块搭建RTMP流媒体服务器,包括环境搭建、配置文件修改和推流拉流操作。适用于需要搭建流媒体服务器的技术人员。 ... [详细]
  • 本文详细介绍了如何在 Ubuntu 16.04 系统上配置 Qt 5.5 的交叉编译环境,特别针对 i.MX6 平台进行了优化设置。内容涵盖从基本的软件安装到高级配置的全过程。 ... [详细]
  • Node.js在服务器上的多种部署策略
    本文探讨了Node.js应用程序在服务器上部署的几种有效方法,包括使用Screen、PM2以及通过宝塔面板进行简易管理。 ... [详细]
  • Jupyter Notebook多语言环境搭建指南
    本文详细介绍了如何在Linux环境下为Jupyter Notebook配置Python、Python3、R及Go四种编程语言的环境,包括必要的软件安装和配置步骤。 ... [详细]
  • 本文通过分析一个具体的案例,探讨了64位Linux系统对32位应用程序的兼容性问题。案例涉及OpenVPN客户端在64位系统上的异常行为,通过逐步排查和代码测试,最终定位到了与TUN/TAP设备相关的系统调用兼容性问题。 ... [详细]
  • Ubuntu 环境下配置 LAMP 服务器
    本文详细介绍了如何在 Ubuntu 系统上安装和配置 LAMP(Linux、Apache、MySQL 和 PHP)服务器。包括 Apache 的安装、PHP 的配置以及 MySQL 数据库的设置,确保读者能够顺利搭建完整的 Web 开发环境。 ... [详细]
  • Ubuntu 22.04 安装搜狗输入法详细指南及常见问题解决方案
    本文将详细介绍如何在 Ubuntu 22.04 上安装搜狗输入法,并提供常见问题的解决方法。包括下载安装包、更新源、安装依赖项等步骤。 ... [详细]
  • 基于Linux开源VOIP系统LinPhone[四]
    ****************************************************************************************** ... [详细]
  • 在VS2013中编译FFMPEG时遇到的问题及解决方案
    在使用VS2013编译旧版本FFMPEG库时遇到了一些问题,因为官方并未提供预编译的LIB和DLL文件。由于对Linux环境不熟悉,只能在Windows环境下进行配置和编译。具体步骤如下:首先,下载FFMPEG的源代码;然后,安装必要的编译工具和依赖项;接着,配置Visual Studio 2013的项目设置;最后,解决编译过程中出现的各种错误和警告。通过这些步骤,最终成功编译出所需的FFMPEG库文件。 ... [详细]
  • 对于初学者而言,搭建一个高效稳定的 Python 开发环境是入门的关键一步。本文将详细介绍如何利用 Anaconda 和 Jupyter Notebook 来构建一个既易于管理又功能强大的开发环境。 ... [详细]
  • 调试利器SSH隧道
    在开发微信公众号或小程序的时候,由于微信平台规则的限制,部分接口需要通过线上域名才能正常访问。但我们一般都会在本地开发,因为这能快速的看到 ... [详细]
  • 本文介绍了一种方法,通过使用Python的ctypes库来调用C++代码。具体实例为实现一个简单的加法器,并详细说明了从编写C++代码到编译及最终在Python中调用的全过程。 ... [详细]
  • 如何在Mozilla Firefox中调整GIF动画的循环次数
    本文介绍了如何通过调整Mozilla Firefox的高级设置来控制GIF动画的播放次数,帮助用户根据个人喜好自定义浏览体验。 ... [详细]
  • Java中的引用类型详解
    本文详细介绍了Java中的引用类型,包括强引用、软引用、弱引用和虚引用的特点和应用场景。 ... [详细]
  • 本文详细介绍如何在忘记MySQL服务器密码的情况下进行密码重置,包括具体的步骤和注意事项。 ... [详细]
author-avatar
礼貌粑粑
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有