# 视频压缩第二版
import sys
import os
import zlib
import threading
import platform
from PIL import Image#python test.py D:\Users\weepal\Desktop view.mp4  view1.mp4class Compress_Pic_or_Video(object):def __init__(self,filePath,inputName,outName=""):self.filePath = filePath  #文件地址self.inputName = inputName  #输入的文件名字self.outName = outName  #输出的文件名字self.system_ = platform.platform().split("-",1)[0]if  self.system_ ==  "Windows":self.filePath = (self.filePath + "\\") if self.filePath.rsplit("\\",1)[-1] else self.filePathelif self.system_ == "Linux":self.filePath = (self.filePath + "/") if self.filePath.rsplit("/",1)[-1] else self.filePathself.fileInputPath = self.filePath + inputNameself.fileOutPath = self.filePath + outName@propertydef is_video(self):videoSuffixSet = {"WMV","ASF","ASX","RM","RMVB","MP4","3GP","MOV","M4V","AVI","DAT","MKV","FIV","VOB"}suffix = self.fileInputPath.rsplit(".",1)[-1].upper()if suffix in videoSuffixSet:return Trueelse:return Falsedef SaveVideo(self):fpsize = os.path.getsize(self.fileInputPath) / 1024if fpsize >= 150.0: #大于150KB的视频需要压缩if self.outName:compress = "ffmpeg -i {} -r 10 -pix_fmt yuv420p -vcodec libx264 -preset veryslow -profile:v baseline  -crf 23 -acodec aac -b:a 32k -strict -5 {}".format(self.fileInputPath,self.fileOutPath)isRun = os.system(compress)else:compress = "ffmpeg -i {} -r 10 -pix_fmt yuv420p -vcodec libx264 -preset veryslow -profile:v baseline  -crf 23 -acodec aac -b:a 32k -strict -5 {}".format(self.fileInputPath, self.fileInputPath)isRun = os.system(compress)if isRun != 0:return (isRun,"没有安装ffmpeg")return Trueelse:return Truedef Compress_Video(self):# 异步保存打开下面的代码,注释同步保存的代码thr = threading.Thread(target=self.SaveVideo)thr.start()#下面为同步代码# fpsize = os.path.getsize(self.fileInputPath) / 1024# if fpsize >= 150.0:  # 大于150KB的视频需要压缩#     compress = "ffmpeg -i {} -r 10 -pix_fmt yuv420p -vcodec libx264 -preset veryslow -profile:v baseline  -crf 23 -acodec aac -b:a 32k -strict -5 {}".format(#         self.fileInputPath, self.fileOutPath)#     isRun = os.system(compress)#     if isRun != 0:#         return (isRun, "没有安装ffmpeg")#     return True# else:#     return Trueif __name__ == "__main__":b = sys.argv[1:]    #测试压缩savevideo = Compress_Pic_or_Video(b[0],b[1],b[2])print(savevideo.Compress_Video())

python mp4 视频格式压缩相关推荐

  1. 怎么把MP4视频进行压缩

    视频有很多种的格式,MP4格式的视频只是其中的一种,那么想要对这个格式的视频进行压缩的话,有哪些方法呢?下面的介绍会告诉你怎么把MP4视频进行压缩,有需要的朋友可以来学习一下! 在线压缩视频文件 1: ...

  2. python实现视频格式转化、调节视频播放速度(仅需三行代码)

    python实现视频格式转化.调节视频速度 支持格式: MoviePy 能处理的视频是 ffmpeg 格式的,支持的文件类型:*.mp4 *.wmv *.rm *.avi *.flv *.webm * ...

  3. 怎么把avi文件转换成mp4视频格式,4个高能方法

    怎么把avi文件转换成mp4视频格式? 当您下载到avi格式的视频文件时,您可能会选择将其转换为MP4格式的文件. avi是一种由微软开发的多媒体容器格式,尽管现在已经被认为是老旧的技术,但由于其简单 ...

  4. iPadPro看电影之MKV转MP4视频格式教程

    拥有了苹果iPadPro如果不看高清电影那就有点可惜了,虽说在线看电影也不错,但就目前这种网络环境,还别说很多时候没有Wifi网络,即使能上网很多时候网速也无法支持流畅的在线播放普清电影,更不用说高清 ...

  5. 电脑视频压缩软件哪个好?分享:一款支持上千种视频格式压缩神器

    为了追求高清画质,现在的视频文件越来越大了.超大的文件虽然可以给人们带来更好的视觉效果,也给传输和发送带来了很大的麻烦.那有没有一款电脑视频压缩软件解决视频无损压缩问题呢?答案是肯定的! 当前, 视频 ...

  6. mp4视频格式转换器工具,万兴优转-多功能视音频处理软件

    MP4是一种大众熟知的视频格式其优势在于在所有的播放器上都能够基本适用因此对于一些较为特殊的视频格式往往都需要将其转换为MP4视频格式才能够在播放器上正常播放. 那么怎样才能将这些特殊的视频格式转换为 ...

  7. MP4视频格式转换器怎样转换MKV超清视频格式

    在日常生活中,看电视剧电影都是常有的事情,但是观看高清版的视频比一般的甚至模糊的体验肯定是不一样的.其实模糊的视频是可以转为高清乃至超清的文件,只不过需要使用到视频格式转换器,那么哪款视频转换器转换过 ...

  8. python视频转化_python实现m3u8格式转换为mp4视频格式

    开发动机:最近用手机QQ浏览器下载了一些视频,视频越来越多,占用了手机内存,于是想把下载的视频传到电脑上保存,可后来发现这些视频都是m3u8格式的,且这个格式的视频都切成了碎片,存在电脑里不方便查看, ...

  9. 如何将多张图片合成mp4视频格式,并加入背景音乐...

    [阅读全文] 实现的思路:将准备好的图片通过opencv读取出来,并将其设置好帧数等参数后合成为无声视频. 最后通过moviepy编辑视频将背景音乐加入到视频中. 开始之前还是需要说明一下非标准库的来 ...

最新文章

  1. 影像组学视频学习笔记(18)-使用MRIcroGL软件格式转换、勾画ROI、Li‘s have a solution and plan.
  2. jQuery中的$.getJSON
  3. 计算机视觉经典论文整理
  4. NumPy中的where()函数
  5. android 进程间通信数据(一)------parcel的起源
  6. python爬虫源码_Python—爬虫:王者荣耀全套皮肤【附源码】
  7. 进程通信:匿名管道和命名管道
  8. MyBatis使用小案例
  9. php 框架源码分析,Laravel框架源码解析之模型Model原理与用法解析
  10. 关于网络编程中MTU、TCP、UDP优化配置的一些总结
  11. oracle建立表语句 主键,oracle 创建表sql语句,主键,自增长
  12. 红米note3支持html,红米note3如何检测硬件信息?指令代码说明
  13. 国际版firefox安装方法
  14. Web CAD SDK 14.1.0 New Crack
  15. 磁力mysql搜索_求一份磁力链接搜索网站的源码,最好能来个大神讲一下这个搜索的原理...
  16. 分享:查重软件(免费)
  17. 纹波测试方法(收集整理)
  18. Linux软件更新时遇到的各种问题以及解决办法
  19. 【金猿产品展】智能媒体审校系统:内容安全生产的守护者
  20. 解决程序中出现小方块问题

热门文章

  1. QT Desinger设计程序主界面 PyUIC生成.py
  2. php文章相似度计算,PHP相似度算法
  3. 微信小程序加入企业微信群聊
  4. 视频直播源码_直播平台搭建_直播程序源码——技术架构解析
  5. win10更新至1909版本后,Primo Ramdisk失效的解决方案
  6. centos下rabbitmq启动失败:
  7. 全国计算机二级等级考试2017,2017年全国计算机二级考试科目及内容
  8. Android studio输入m自动提示成员变量名称
  9. cad考试题库绘图题答案_最新CAD考试题库及答案-cad考试题库绘图题答案
  10. 吴军,阅读与写作,06,如何突破阅读理解的瓶颈