欢迎来到 Electron FFmpeg Video to GIF 项目!这个开源项目旨在提供一个简单,直接且免费的工具,将视频文件转换为 GIF 文件。利用 Electron 和 FFmpeg,我们成功实现了这个想法,并希望它能对您的需求有所帮助。这个项目也能帮助初学者了解如何使用前端技术开发 Electron 桌面端应用。请随时查看我们的代码,提出问题或建议,并分享您的使用体验。我们真诚欢迎所有的反馈,包括代码改进的建议,新特性的建议,或是任何其他形式的贡献。
当我想要把一个 video 转换成 gif 图片的时候,竟然找不到好用且免费的网站或者应用,故动手写一个免费开源的送给大家,同时,帮助想要入门 electron 的同学了解如何使用前端的技术开发 electron 桌面端应用。
- ffmpeg 下载可以执行安装包
- 使用 node.js child_process 执行 ffmpeg 命令
- 此时,传入文件路径,和输出目录 ffmpeg 把视频直接转换成 gif 图片
- 使用 electron 打包可执行的安装包
- electron,ipc,tray
- node.js,fs,path
- html,css,javascript,vue3
- vue-cli,vue-cli-plugin-electron-builder,electron-builder
- electron-log
- element-plus,pinia
- ffmpeg
- eslint,prettier,commitlint,.husky
- sudo-prompt
- 项目模版electron-template
- 如何把 ffmpeg 集成到 electron 应用中
- 并发限制,使用队列控制并发任务
- Mac 权限问题,如何提升权限
- electron 进程之间的通信
- Mac Resources 目录执行权限不足问题
- Mac 系统托盘图标失真问题
- Mac 或者 Windows 不显示系统托盘图标问题(清除系统图标缓存-重启电脑)
- Mac 开发环境不显示任务栏图标
- ffmpeg 可执行文件-打包后变成文本文件 - 改成 zip 包
- 如何解决 ffmpeg 集成到我们的应用中 asarUnpack
- electron 版本问题,20 版本以上不支持直接在 preload.js 引入 node.js 相关模块
- 当数据量达到500条的时候出现卡顿、延迟和更新状态失败等问题
npm install --force
安装过程中遇到问题?
npm install --ignore-engines --legacy-peer-deps
npm start
npm run electron:build
npm run lint
Vue Cli https://cli.vuejs.org/config/
vue-cli-plugin-electron-builder https://github.com/nklayman/vue-cli-plugin-electron-builder
https://www.npmjs.com/package/electron-icon-builder
把 public/logo.png 换成你自己的,运行下面命令
npm run logo
Copyright (c) 李钟意.
Licensed under the MIT license.
这份指南将帮助你在 Mac 和 Windows 上安装 FFmpeg,并使用它将视频文件转换为 GIF 文件。
-
访问 FFmpeg 官网,下载适合你的 Mac 版本的 FFmpeg。
-
解压下载的文件,并将解压后的文件夹放在一个你方便找到的位置,比如
/project/ffmpeg/
。 -
设置环境变量以让系统能找到 FFmpeg。在终端运行:
vim ~/.zshrc
在文件末尾添加一行:
export PATH=$PATH:/project/ffmpeg/
保存并关闭文件。然后,使更改生效:
source ~/.zshrc
这个操作将把你的 FFmpeg 文件夹路径添加到 PATH 环境变量中。
-
访问 FFmpeg 官网,下载适合你的 Windows 版本的 FFmpeg。
-
下载 ZIP 文件并解压到你想要放置的位置,比如
C:\
目录。 -
在 "系统属性" -> "高级" -> "环境变量" 中添加 FFmpeg 到系统环境变量。在系统变量中找到 "Path",点击 "编辑",然后 "新建",把 FFmpeg 的 bin 目录路径添加进去,例如
C:\ffmpeg\bin
。 -
点击确认,关闭所有窗口。
-
打开一个新的命令行窗口,输入
ffmpeg -version
。如果能看到 FFmpeg 的版本信息,说明安装成功。
以下命令都是在命令行终端中执行的,无论是 Mac 的终端还是 Windows 的命令提示符。
你可以通过运行 ffmpeg -version
来测试 FFmpeg 是否正确安装。如果看到关于 FFmpeg 版本的信息,那么表示 FFmpeg 已经正确安装。
你可以使用以下命令将视频文件(例如 MP4 文件)转换为 GIF:
- 使用 FFmpeg 直接将视频文件转换为 GIF。以下命令将把名为
video.mp4
的视频转换为名为video.gif
的 GIF 文件:
# ffmpeg -i video.mp4 video.gif
ffmpeg -i 520.mp4 520.gif
- 如果你想生成高质量的 GIF 文件,你可以先生成一个调色板。这是因为 GIF 格式只支持最多 256 种颜色,而生成一个调色板可以帮助 FFmpeg 选择最合适的颜色集来最大化 GIF 的质量。
# ffmpeg -i video.mp4 -vf "fps=10,scale=-1:-1:flags=lanczos,palettegen" palette.png
ffmpeg -i 520.mp4 -vf "fps=10,scale=-1:-1:flags=lanczos,palettegen" palette.png
- 然后,你可以使用以下命令与调色板一起生成 GIF:
# ffmpeg -i video.mp4 -i palette.png -filter_complex "fps=10,scale=-1:-1:flags=lanczos[x];[x][1:v]paletteuse" high_quality.gif
ffmpeg -i 520.mp4 -i palette.png -filter_complex "fps=10,scale=-1:-1:flags=lanczos[x];[x][1:v]paletteuse" high_quality.gif
在这些命令中,fps=10
是 GIF 的帧率,scale=-1:-1
使 GIF 的大小和输入视频的大小相同。你可以根据需求调整这些参数。
这些命令可能会生成大文件,但是如果你不关心文件大小,那么这应该能够提供很高的质量。你也可以调整 fps
参数来改变 GIF 的帧率,以达到你的期望效果。
非常感谢您对我的开源项目的关注和使用!如果您觉得这个项目对您有所帮助,并且想要支持它的发展,您可以考虑赞赏一下。您的赞赏将鼓励我不断改进项目并提供更多的功能。赞赏是完全自愿的,无论您是否赞赏,我都会继续致力于提供优质的开源项目。
请注意,赞赏是作为对我工作的认可和鼓励。我将继续努力提供高质量的开源项目,感谢您对我的支持和理解!