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

中国建设部网官方网站南通营销平台网站建设

中国建设部网官方网站,南通营销平台网站建设,网站开发的理解,网页升级访问正在跳转中python MP4视频转GIF动图 引言一、转换代码二、PyQt界面编写2.1 效果展示2.2 源码 三、打包成可执行文件(.exe) 一个相当于原视频三倍速的GIF动图 引言 将MP4格式的视频转为GIF动图可以方便地向他人展示动画效果。GIF是网络上广泛使用的图像格式之一#xff0c;几乎所有的网… python MP4视频转GIF动图 引言一、转换代码二、PyQt界面编写2.1 效果展示2.2 源码 三、打包成可执行文件(.exe) 一个相当于原视频三倍速的GIF动图 引言 将MP4格式的视频转为GIF动图可以方便地向他人展示动画效果。GIF是网络上广泛使用的图像格式之一几乎所有的网页浏览器和客户端都支持其兼容性较好。比如可以直接插入到PPT中、或是在微信上发给别人、或者直接插入到CSDN博客中但是MP4等视频格式的文件显然不行。 常用的免费在线转换网站上不去了好多其它网站需要注册本作者亲自写一个方便日常使用。 当然GIF也有其缺点将MP4视频同帧率转为GIF文件会变大占用更多内存 文心一言给出的理由将MP4视频转换为GIF后文件变大主要是因为GIF格式的编码方式和MP4不同。MP4文件内一般采用视频压缩的格式例如h264这种压缩方式利用时间上相邻两帧的相似性和人眼视觉上的冗余来做有损压缩从而压缩率很高。而GIF格式则单独保留了每一帧图片同时每张图片都是采用无损压缩的方式因此GIF尺寸比较大。 一、转换代码 使用moviepy库安装 pip install moviepy 英文文档https://zulko.github.io/moviepy/ 推荐方便Search 中文文档http://doc.moviepy.com.cn/ from moviepy.editor import * myClip VideoFileClip(xxx.mp4) myClip.write_gif(xxx.gif)write_gif默认与原视频时常一样只能更改帧速率默认帧率也与原视频一样)如果想更改播放速度可使用speedx函数如 放慢一半 myClip.speedx(0.5).write_gif(xxx.gif)二倍速播放 myClip.speedx(2).write_gif(xxx.gif)write_gif参数官方解释write_gif(self, filename, fpsNone, program‘imageio’, opt‘nq’, fuzz1, verboseTrue, loop0, disposeFalse, colorsNone, tempfilesFalse, logger‘bar’)write_gif参数解释moviepy音视频剪辑基类VideoClip的write_gif方法opt、fuzz、dispose、colors、loop等参数的作用转换代码也可参考: 使用Opencv将MP4文件转GIF图片 二、PyQt界面编写 2.1 效果展示 使用gif展示了一个将mp4转为gif动图的软件 2.2 源码 使用pyqt5-tool生成的ui界面转成py后增加了mp4_to_gif函数可直接运行 # -*- coding: utf-8 -*-from PyQt5 import QtCore, QtGui, QtWidgets from PyQt5.QtWidgets import * from PyQt5.QtCore import *def mp4_to_gif():dialog QFileDialog()dialog.setFileMode(QFileDialog.ExistingFile)dialog.setAcceptMode(QFileDialog.AcceptOpen)filename, _ dialog.getOpenFileName(dialog, Open file, , files (*.mp4);;(*.*))print(filename.replace(.mp4, .gif))from moviepy.editor import VideoFileClipmyClip VideoFileClip(filename)myClip.speedx(3).write_gif(filename.replace(.mp4, .gif))passclass Ui_MainWindow(object):def setupUi(self, MainWindow):MainWindow.setObjectName(MainWindow)MainWindow.resize(321, 71)MainWindow.setMaximumSize(QtCore.QSize(321, 71))self.centralwidget QtWidgets.QWidget(MainWindow)self.centralwidget.setObjectName(centralwidget)self.pushButton QtWidgets.QPushButton(self.centralwidget)self.pushButton.setGeometry(QtCore.QRect(0, 0, 321, 71))font QtGui.QFont()font.setFamily(微软雅黑)font.setPointSize(24)self.pushButton.setFont(font)self.pushButton.setObjectName(pushButton)MainWindow.setCentralWidget(self.centralwidget)self.retranslateUi(MainWindow)QtCore.QMetaObject.connectSlotsByName(MainWindow)def retranslateUi(self, MainWindow):_translate QtCore.QCoreApplication.translateMainWindow.setWindowTitle(_translate(MainWindow, MP4_to_GIF))self.pushButton.setText(_translate(MainWindow, 将MP4转为GIF))# 按钮事件self.pushButton.clicked.connect(mp4_to_gif)if __name__ __main__:import sysapp QtWidgets.QApplication(sys.argv)MainWindow QtWidgets.QMainWindow()ui Ui_MainWindow()ui.setupUi(MainWindow)MainWindow.show()sys.exit(app.exec_()) 还有个小bugfilename为空程序会奔溃 三、打包成可执行文件(.exe) 安装pyinstallerpip install pyinstaller 执行 pyinstaller -F -w main.py 打包生成100MB的exe文件… 结果如下
http://www.pierceye.com/news/464726/

相关文章:

  • 邢台网站建设免费做网站排名上海开发app
  • 沈阳网站建设设计企业网站设计与管理系统
  • 婚纱照网站制作梁山网站建设价格
  • 做现货去哪些网站营销好呢网站 服务报价
  • 网站建设渠道做网站前端和平面配合
  • 北京交友最好的网站建设wordpress 移动支付宝
  • 2015百度推广网站遭到攻击非遗网页设计作品欣赏
  • 网站空间需要多大网站推荐几个免费的
  • 做一个网站花多少钱建行系统
  • 滁州市住房城乡建设部网站wordpress title背景
  • 餐饮手机微网站怎么做wordpress 多语言建站
  • 企业信息系统案例东昌府聊城网站优化
  • 做美食直播哪个网站好php网站开发数据列表排重
  • 网站建设 职责网站分站加盟
  • 单页网站产品手机网站免费生成
  • 无锡电子商务网站建设公司德国网站的后缀名
  • 服务器做视频网站赣州企业做网站
  • 如何看出网站用dede做的网站百度快照
  • 做网站很难吗五种新型营销方式
  • 个人网站搭建模拟感想江西企业网站建设哪家好
  • 长春企业网站建设网站制作公司相关工作
  • 免费课程网站有哪些兼职网站项目建设报告
  • 建立网站免费dedecms网站地图制作
  • 网页设计公司网站制作做网站最主要是那个一类商标
  • 卫生局网站建设方案网站架构设计英文翻译
  • 学做衣服网站有哪些智能开发平台软件
  • wordpress 下载站插件wordpress清楚所有评论
  • 公司网站建设工作计划网站设置受信任
  • 网站如何做实名验证码深圳企业网站推广
  • 傻瓜式大型网站开发工具餐饮业手机php网站