把视频中的一小段做成GIF动图

本文介绍了一款好用的手机屏幕录制软件——录屏大师,并推荐了两种将视频转换为GIF的方法:在线工具Convertvideo to animated GIF及SOOGIF网站。这两种方式都不需要额外安装软件,方便快捷。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

想把手机屏幕的动作录制下来进行分享,可以使用“录屏大师”,下载这个app,非常好用。

但有的时候需要gif形式的动画形式的演示。

推荐两个在线工具:

一、

有浏览器就行,不需要下载任何播放器/PS/软件等Convert video to animated GIF

上传视频,选择开始和结束时间,之后只需要等就可以了。

配合该网站一系列GIF制作选项,可以满足大部分人的需求。

二、

制作GIF动图有许多种,如果是想自己截取视频,推荐SOOGIF (soogif.com


### Android 中多张片合成 GIF 的实现方式 在 Android 开发中,可以通过多种方式将多张静态片合成为一张GIF 片。以下是基于现有引用内容以及专业知识的详细介绍。 #### 使用 AnimatedGifEncoder 类 `AnimatedGifEncoder` 是一种常用的工具类,用于将多个 Bitmap 对象编码为 GIF 文件并保存到本地存储设备上。此方法需要逐帧添加像数据,并设置每帧之间的延迟时间。具体实现如下: ```java import java.io.File; import java.io.FileOutputStream; public class GifCreator { private AnimatedGifEncoder encoder; // 引入 AnimatedGifEncoder 工具类[^2] public void createGif(String outputPath, List<Bitmap> frames, int delayMillis) throws IOException { File outputFile = new File(outputPath); FileOutputStream fos = new FileOutputStream(outputFile); try { encoder = new AnimatedGifEncoder(); encoder.setRepeat(0); // 设置循环次数,0 表示无限循环 encoder.setDelay(delayMillis); // 延迟时间单位毫秒 encoder.start(fos); for (Bitmap frame : frames) { // 遍历每一帧片 encoder.addFrame(frame); // 添加单帧画面[^1] } encoder.finish(); // 完成编码过程 } finally { fos.close(); } } } ``` 上述代码展示了如何通过 `AnimatedGifEncoder` 将一系列位对象转换为 GIF 文件。需要注意的是,在实际项目开发过程中可能还需要引入第三方库来支持该功能,比如 Glide 或者其他开源框架。 #### 利用 Bilibili 提供的 BurstLinker 库 除了手操作外,还可以借助现成解决方案简化工作流程。例如 bilibili 推荐使用的 [BurstLinker](https://github.com/bilibili/BurstLinker)[^3] ,它是一个专门针对批量处理片资源而设计的轻量级 Java 库。下面给出一简单的例子说明其基本用法: ```java // 初始化参数配置 List<String> imagePaths = Arrays.asList("/path/to/image1.png", "/path/to/image2.png"); String outputFilePath = Environment.getExternalStorageDirectory().getPath() + "/output.gif"; int durationPerFrameMs = 500; try{ // 调用 API 方法完成任务 BurstLinker.build() .setImages(imagePaths) .setOutPutPath(outputFilePath) .setDuration(durationPerFrameMs) .executeSync(); }catch(Exception e){ Log.e("Error","Failed to generate gif.",e); } ``` 这里我们只需要准备好输入源路径列表(可以是网络链接或者本地文件地址),指定目标输出位置与播放速度即可调用相应接口执行整个制作环节。相比起自己编写底层逻辑来说更加便捷高效。 #### 注意事项 - **性能优化**: 当涉及大量高分辨率素材时可能会占用较多内存空间甚至引发 OOM 错误 。因此建议适当调整压缩级别减少体积大小的同时也要兼顾画质表现效果。 - **权限管理**: 如果计划访问外部储存器,则务必记得申请 READ_EXTERNAL_STORAGE 和 WRITE_EXTERNAL_STORAGE 权限以便顺利读写所需资料。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值