当前位置: 首页 > news >正文

【强烈推荐】视频转gif、图片拼gif,嘎嘎好用,免费免费真的免费,亲测有效,无效过来打我

问题描述

        最近遇到一个需求是需要将视频生成gif,这个看上去不是很难,所以有了以下的解决办法

解决办法

        首先想到的当然是自己写一个,用了两套代码:

from moviepy.editor import *# 读取视频文件
video_clip = VideoFileClip("280361337.mp4")# 将视频转为gif格式
gif_clip = video_clip.to_gif("output.gif")# 关闭视频文件
video_clip.close()

        运行这个的话可能会遇到的问题就是没有moviepy这个module,pip install一下就可以了,但是安装完之后会报错提示有些依赖包没有,只需要按提示逐个安装就行了。

        但是上述的代码不能够控制帧率和大小,于是又完善了一下。

import imageio
from PIL import Imagedef convert_video_to_gif(input_path, output_path, fps=10, scale=0.5):# 读取视频文件video = imageio.get_reader(input_path)# 获取视频的帧率、宽度和高度fps_video = video.get_meta_data()['fps']width, height = video.get_meta_data()['source_size']# 设置输出的帧率和尺寸output_fps = min(fps, fps_video)output_width = int(scale * width)output_height = int(scale * height)# 创建一个Image对象列表,用于保存每一帧的图像frames = []for frame in video:# 调整帧的尺寸frame_img = Image.fromarray(frame).resize((output_width, output_height), Image.ANTIALIAS)frames.append(frame_img)# 保存为gif动图frames[0].save(output_path, format='GIF', append_images=frames[1:], save_all=True, duration=1000/output_fps, loop=0, optimize=True)# 关闭视频文件video.close()# 调用函数进行视频转换为gif
convert_video_to_gif("studio_video_1698138576505.mp4", "output4.gif", fps=20, scale=1)

        这样一来就能比较控制帧率和大小了,但相比来说只压缩了一半,还是有点大,也正因为这个原因,没有办法在这里展示效果,简单来说,效果还是可以的,只是太大了超过了5M,所以不能上传。

更好的办法        

        像这种都有现成的工具,比如本次推荐的这个就是,效果挺好的,

        压缩比大概为1/5

        可以自己指定宽度

        也可以进行压缩,只是这个过程有点曼,能再压缩1/2,效果几乎无变化

        还支持其他的功能

相关文章:

【强烈推荐】视频转gif、图片拼gif,嘎嘎好用,免费免费真的免费,亲测有效,无效过来打我

问题描述 最近遇到一个需求是需要将视频生成gif,这个看上去不是很难,所以有了以下的解决办法 解决办法 首先想到的当然是自己写一个,用了两套代码: from moviepy.editor import *# 读取视频文件 video_clip VideoFileClip(&quo…...

C# Onnx Yolov8 Detect 印章 指纹捺印 检测

应用场景 检测文件中的印章和指纹捺印,用于判断文件是否合规(是否盖章,是否按印) 效果 项目 代码 using Microsoft.ML.OnnxRuntime; using Microsoft.ML.OnnxRuntime.Tensors; using OpenCvSharp; using System; using System.…...

0034【Edabit ★☆☆☆☆☆】【修改Bug4】Buggy Code (Part 4)

0034【Edabit ★☆☆☆☆☆】【修改Bug4】Buggy Code (Part 4) bugs conditions strings Instructions Emmy has written a function that returns a greeting to users. However, she’s in love with Mubashir, and would like to greet him slightly differently. She add…...

第十五篇-推荐-Huggingface-镜像-2023-10

推荐一个Huggingface-镜像网站 可下载模型和数据集,解决Huggingface无法访问问题,希望可以一直使用 https://hf-mirror.com/ 举个栗子 https://hf-mirror.com/models?searchqwen 有时需要验证,按要求点就好 域名 hf-mirror.com&#xf…...

Macos文件图像比较工具:Kaleidoscope for Mac

Kaleidoscope是一款文件图像比较工具,它可以方便地比较两个文本或者图片文件的差异。这个工具可以在Mac系统上使用,并且支持多种文件格式,包括文本文件、图片文件、PDF文件等等。 Kaleidoscope有一个直观的用户界面,可以让用户轻…...

Docker搭建Plex流媒体服务并播放自己本地视频

Docker搭建Plex流媒体服务 安装Docker创建存储配置文件的目录创建Plex容器配置Plex设置媒体库访问Plex 1 介绍 Plex是一个流媒体服务器,可以轻松地将你的媒体文件库(如电影、电视节目和音乐)通过网络流式传输到各种设备上。 Plex 是一套媒体…...

idea + Docker-Compose 实现自动化打包部署(仅限测试环境)

一、修改docker.service文件,添加监听端口 vi /usr/lib/systemd/system/docker.service ExecStart/usr/bin/dockerd -H fd:// --containerd/run/containerd/containerd.sock -H tcp://0.0.0.0:2375 -H unix://var/run/docker.sock重启docker服务 systemctl daemo…...

ubuntu 下载Python

目前为止,Python 3.11 是最新版本的 Python。要在 Ubuntu 中下载和安装 Python 3.11,可以按照以下步骤进行: 安装编译所需的依赖项: sudo apt update sudo apt install -y build-essential zlib1g-dev libffi-dev libssl-dev libl…...

python 使用json包在json格式字符串和python对象之间的变化

起因:使用python json包时,将键值对均为数字的字典存入txt文件后重新加载进字典后出现“字典key值不唯一”的神奇现象。 相关代码: 字典添加数据部分 def xuhao_chuti(self):rand random.randint(1, 908)if rand in self.memery.keys() an…...

【C++】继承 ⑫ ( 继承的二义性 | virtual 虚继承 )

文章目录 一、继承的二义性1、场景说明 - 继承的二义性2、继承中的二义性报错3、完整代码示例 二、virtual 虚继承1、虚继承引入2、虚继承语法3、代码示例 - 虚继承 一、继承的二义性 1、场景说明 - 继承的二义性 A 类 是 父类 , B 类 和 C 类 继承 A 类 , 是 子类 , D 类 多…...

Linux网络流量监控iftop

在 Linux 系统下即时监控服务器的网络带宽使用情况,有很多工具,比如 iptraf、nethogs 等等,但是推荐使用小巧但功能很强大的 iftop 工具【官网:http://www.ex-parrot.com/~pdw/iftop/】。iftop 是 Linux 系统一个免费的网卡实时流…...

【虚幻引擎UE】UE4/UE5 基于2D屏幕坐标获取场景3D坐标 射线检测(蓝图/C++)

UE4/UE5 基于2D屏幕坐标获取场景3D坐标 一、射线检测1)定义1)射线与3D场景中的物体交互的流程2)射线检测蓝图函数3)蓝图实现根据鼠标点击位置获取场景中的坐标值4)根据相机中心点获取场景中的坐标值5)射线检…...

【OpenHarmony】系统编译环境搭建笔记

0、安装WSL 一定要安装WSL 2否则编译慢到怀疑人生。 1、将WSL从C盘迁移到其他盘 2、安装编译依赖库 按照上述流程,安装会提示一些错误,直接使用如下命令: sudo apt-get update && sudo apt-get install binutils binutils-dev g…...

深入理解JVM虚拟机第十二篇:JVM中的线程说明

文章目录 一:线程说明 1:线程概述 2:后台虚拟机主要线程 (一):虚拟机线程...

synchronized 、ReentrantLock

synchronized 和 ReentrantLock 都是用于实现多线程同步的机制: 锁的获取方式: synchronized 是内置的 Java 关键字,它通过对象的内置监视器来获取锁。每个对象都有一个关联的监视器,只有一个线程可以获得对象的监视器,其他线程必须等待。ReentrantLock 是一个类,它提供了…...

用VSCODE启动Java项目

下载插件 推荐下载插件 启动 在vscode中打开项目或将项目拖进vscode,等进度条加载完成即成启动项目...

最简单的修改linux系统上Docker的镜像源

前言 是不是从docker上下载镜像总是很慢 我有两个物理服务器,两个都在本地不能访问国际网络,那只能使用国内网络,就是下载docker镜像太慢了,慢的我心情都不好了,所以就出了这篇文章用来解决docker下载慢的问题 正文 1.首先你得下载好docker,在Linux上,下载Docker的命令是下面这…...

layui移除(删除)table表格的一行

表格里添加删除按钮&#xff1a; , {field: wealth, width: 150, title: 操作, align: center, fixed: right,templet: function (item) {return <a style"margin:0px 5px; color:red; cursor: pointer;" lay-event"delete" id"DeleteTr" >…...

67 跳跃游戏 II

跳跃游戏 II 题解1 贪心1 正向题解2 贪心2 反向题解3 DP 给定一个长度为 n 的 0 索引整数数组 nums。初始位置为 nums[0]。 每个元素 nums[i] 表示从索引 i 向前跳转的最大长度。换句话说&#xff0c;如果你在 nums[i] 处&#xff0c;你可以跳转到任意 nums[i j] 处: 0 &…...

客户中心模拟(Queue and A, ACM/ICPC World Finals 2000, UVa822)rust解法

你的任务是模拟一个客户中心运作情况。客服请求一共有n&#xff08;1≤n≤20&#xff09;种主题&#xff0c;每种主题用5个整数描述&#xff1a;tid, num, t0, t, dt&#xff0c;其中tid为主题的唯一标识符&#xff0c;num为该主题的请求个数&#xff0c;t0为第一个请求的时刻&…...

Simulink仿真速度太慢?试试用C Mex S函数给模型“提提速”

Simulink性能优化实战&#xff1a;用C Mex S函数突破仿真速度瓶颈 当Simulink模型运行缓慢时&#xff0c;工程师们常常陷入漫长的等待。本文将揭示如何通过C Mex S函数这一利器&#xff0c;将仿真速度提升10倍以上&#xff0c;特别适合处理复杂算法、图像处理和大规模系统仿真等…...

Copilot 插入广告引担忧,AI 工具商业化边界受考

Copilot 拉取请求中惊现广告插入团队成员使用 Copilot 纠正拉取请求&#xff08;PR&#xff09;中的拼写错误时&#xff0c;出现了令人意想不到的情况。Copilot 不仅修改了 PR 描述&#xff0c;还插入了它自身以及 Raycast 的广告。这一行为引发了用户的强烈反应&#xff0c;有…...

从云中心到边缘节点,Java Runtime冷启动优化全解析,将延迟压至87ms以内

第一章&#xff1a;Java边缘运行时部署的演进与挑战随着物联网、5G和实时AI推理场景的爆发式增长&#xff0c;Java应用正加速向边缘侧迁移。然而&#xff0c;传统JVM设计面向服务器长期运行环境&#xff0c;其启动延迟高、内存占用大、冷启动慢等特性与边缘设备资源受限、事件驱…...

保姆级避坑指南:在Windows上用VirtualBox 6.0.24跑Ubuntu,从开机报错到完美显示的完整流程

从开机报错到完美显示&#xff1a;VirtualBox 6.0.24运行Ubuntu全流程实战手册 当你第一次在Windows上用VirtualBox启动Ubuntu虚拟机时&#xff0c;那个刺眼的报错提示可能会让你措手不及。别担心&#xff0c;这几乎是每个虚拟化新手都会经历的"成人礼"。本文将带你完…...

AI大模型进化地图:小白也能看懂的技术架构与未来趋势(收藏版)

本文深入剖析AI模型的技术架构、能力瓶颈及商业压力&#xff0c;揭示未来AI模型的四类形态&#xff1a;通用基础大模型、深度推理模型、边缘轻量模型和垂直领域专业模型。文章通过DeepSeek-R1和Google Gemini的案例&#xff0c;量化分析不同模型类型的业务逻辑差异&#xff0c;…...

从卡顿到流畅:Win11Debloat开源工具3步解决Windows系统优化难题

从卡顿到流畅&#xff1a;Win11Debloat开源工具3步解决Windows系统优化难题 【免费下载链接】Win11Debloat 一个简单的PowerShell脚本&#xff0c;用于从Windows中移除预装的无用软件&#xff0c;禁用遥测&#xff0c;从Windows搜索中移除Bing&#xff0c;以及执行各种其他更改…...

Stable Diffusion工作流升级:Pixel Fashion Atelier预设Prompt库详解

Stable Diffusion工作流升级&#xff1a;Pixel Fashion Atelier预设Prompt库详解 1. 项目概述 像素时装锻造坊&#xff08;Pixel Fashion Atelier&#xff09;是一款基于Stable Diffusion与Anything-v5模型的图像生成工作站。这个创新工具将复古日系RPG的视觉风格与现代AI图像…...

DeepSeek-R1-Distill-Qwen-7B实测:推理能力超强的7B小模型

DeepSeek-R1-Distill-Qwen-7B实测&#xff1a;推理能力超强的7B小模型 1. 模型概述 DeepSeek-R1-Distill-Qwen-7B是DeepSeek团队推出的轻量级推理模型&#xff0c;基于Qwen架构蒸馏而来。这个7B参数规模的模型在保持较小体积的同时&#xff0c;展现了令人印象深刻的推理能力。…...

小白友好:InstructPix2Pix极速推理,秒级响应你的修图指令

小白友好&#xff1a;InstructPix2Pix极速推理&#xff0c;秒级响应你的修图指令 你有没有过这样的经历&#xff1f;手机里存着一张照片&#xff0c;风景很美&#xff0c;但天空灰蒙蒙的&#xff1b;或者朋友聚会合影&#xff0c;大家都笑得很开心&#xff0c;就是背景有点乱。…...

嵌入式开发中回调函数的解耦实践与高级应用

1. 回调函数在嵌入式开发中的解耦实践在嵌入式系统开发中&#xff0c;模块间的耦合度直接影响着代码的可维护性和可扩展性。最近我在重构一个智能家居项目时&#xff0c;就遇到了模块间强耦合导致修改困难的问题。通过引入回调函数机制&#xff0c;成功将原本紧密交织的代码逻辑…...