文章目录

  • 视频转图片
  • 视频转音频
  • 播放音频
  • 图片+音频 转 视频
  • 多个视频合成一个视频
  • 改变视频播放速度

视频转图片

#!/usr/bin/env python
# -*- encoding: utf-8 -*-
"""
@Introduce :
@File      : video2image.py
@Time      : 2020-11-13 11:06
@Author    : xia hua dong
@Tel       : 173 179 76823
@Email     : 17317976823@163.com
@pip       : pip install
"""import osdef video2image(ffmpegPath, videoPath, frameNumber, imgPath, imgFormat):"""视频转图片(请使用绝对路径):param ffmpegPath: ffmpeg.exe路径:param videoPath: 视频路径,可以是mp4或avi等:param frameNumber: 每秒提取的图片数,即帧数:param imgPath: 输出图片存放的文件夹:param imgFormat: 输出图片格式,可以是jpg、png或jepg等:return: 多张图片"""if not os.path.exists(imgPath):  # 如果图片文件夹不存在os.mkdir(imgPath)  # 创建图片文件夹路径command1 = "{} -i {} -r {} {}\%d .{} -y".format(ffmpegPath, videoPath, frameNumber, imgPath, imgFormat)os.system(command1)if __name__ == '__main__':ffmpegPath = r"C:\Users\xiahuadong\Desktop\xiahuadongCode\number_humen_web\number_humen_front_back_end\ffmpey安装包\ffmpeg-20200628-4cfcfb3-win64-static\ffmpeg-20200628-4cfcfb3-win64-static\bin\ffmpeg"imgPath = r"C:\Users\xiahuadong\Desktop\xiahuadongCode\number_humen_web\number_humen_web\img2"  # 图片文件夹路径videoPath = r"C:\Users\xiahuadong\Desktop\xiahuadongCode\number_humen_web\number_humen_web\video\1.mp4"frameNumber = 30imgFormat = "png"video2image(ffmpegPath, videoPath, frameNumber, imgPath, imgFormat)
#!/usr/bin/env python
# -*- encoding: utf-8 -*-
"""
@Introduce : 视频转图片
@File      : video2audio.py
@Time      : 2020-11-13 14:13
@Author    : xia hua dong
@Tel       : 173 179 76823
@Email     : 17317976823@163.com
@pip       : pip install ffmpy
"""from ffmpy import FFmpegff = FFmpeg(# ffmpeg.exe的路径executable=r"C:\Users\xiahuadong\Desktop\xiahuadongCode\number_humen_web\number_humen_front_back_end\ffmpey安装包\ffmpeg-20200628-4cfcfb3-win64-static\ffmpeg-20200628-4cfcfb3-win64-static\bin\ffmpeg",inputs={'video/1.mp4': None},  # 视频路径outputs={'img2/%d.png': None}  # 音频路径 -ar 采样率 -y 覆盖同名文件
)
# print(ff.cmd)
ff.run()

-i 输入
./video/face/w1.mp4 : 输入视频路径
-r 25 :1秒25张
./w1/image-%3d.jpeg:输出图片路径

视频转音频

#!/usr/bin/env python
# -*- encoding: utf-8 -*-
"""
@Introduce : 视频转音频
@File      : video2audio.py
@Time      : 2020-11-13 11:06
@Author    : xia hua dong
@Tel       : 173 179 76823
@Email     : 17317976823@163.com
@pip       : pip install
"""import osdef video2audio(ffmpegPath, videoPath, sampleRate, audioPath):"""视频转音频(请使用绝对路径):param ffmpegPath: ffmpeg.exe路径:param videoPath: 视频路径,可以是mp4或avi等:param audioFormat: 音频格式:param sampleRate: 采样率:param audioPath: 音频保存路径,可以是mp3或wav:return:"""command1 = "{} -i {} -ar {} {} -y".format(ffmpegPath, videoPath, sampleRate, audioPath)os.system(command1)if __name__ == '__main__':ffmpegPath = r"C:\Users\xiahuadong\Desktop\xiahuadongCode\number_humen_web\number_humen_front_back_end\ffmpey安装包\ffmpeg-20200628-4cfcfb3-win64-static\ffmpeg-20200628-4cfcfb3-win64-static\bin\ffmpeg"videoPath = r"C:\Users\xiahuadong\Desktop\xiahuadongCode\number_humen_web\number_humen_web\video\1.mp4"sampleRate = 16000audioPath = r"C:\Users\xiahuadong\Desktop\xiahuadongCode\number_humen_web\number_humen_web\1.wav"video2audio(ffmpegPath, videoPath, sampleRate, audioPath)
#!/usr/bin/env python
# -*- encoding: utf-8 -*-
"""
@Introduce : 视频转音频
@File      : video2audio.py
@Time      : 2020-11-13 14:13
@Author    : xia hua dong
@Tel       : 173 179 76823
@Email     : 17317976823@163.com
@pip       : pip install ffmpy
"""from ffmpy import FFmpegff = FFmpeg(# ffmpeg.exe的路径executable=r"C:\Users\xiahuadong\Desktop\xiahuadongCode\number_humen_web\number_humen_front_back_end\ffmpey安装包\ffmpeg-20200628-4cfcfb3-win64-static\ffmpeg-20200628-4cfcfb3-win64-static\bin\ffmpeg",inputs={'video/1.mp4': None},  # 视频路径outputs={'1.wav': '-ar 16000 -y'}  # 音频路径 -ar 采样率 -y 覆盖同名文件
)
# print(ff.cmd)
ff.run()

-ar 16000:采样率为16K

播放音频

import os
def playAudio(path):""" playAudio:播放音频path:音频路径"""os.system("ffplay %s" % path)playAudio("./w1/w1.mp3")

图片+音频 转 视频

#!/usr/bin/env python
# -*- encoding: utf-8 -*-
"""
@Introduce : 图片+音频 转 视频 (请使用绝对路径)
@File      : imageAudio2video.py
@Time      : 2020-11-13 15:33
@Author    : xia hua dong
@Tel       : 173 179 76823
@Email     : 17317976823@163.com
@pip       : pip install
"""import osdef imageAudio2video(ffmpegPath, frameNumber, imgPath, audioPath, videoPath):"""图片+音频 转 视频 (请使用绝对路径):param ffmpegPath: ffmpeg.exe路径:param frameNumber: 每秒提取的图片数,即帧数:param imgPath: 图片路径:param audioPath: 音频路径:param videoPath: 视频路径:return: 视频""""ffmpeg - r 30 - i img2 / % d.png - i 1.wav test.mp4 - y"command1 = "{} -r {} -i {} -i {} {} -y".format(ffmpegPath, frameNumber, imgPath, audioPath, videoPath)os.system(command1)if __name__ == '__main__':ffmpegPath = r"C:\Users\xiahuadong\Desktop\xiahuadongCode\number_humen_web\number_humen_front_back_end\ffmpey安装包\ffmpeg-20200628-4cfcfb3-win64-static\ffmpeg-20200628-4cfcfb3-win64-static\bin\ffmpeg"frameNumber = 30imgPath = r"C:\Users\xiahuadong\Desktop\xiahuadongCode\number_humen_web\number_humen_web\img2\%d.png"  # 图片文件夹路径audioPath = r"C:\Users\xiahuadong\Desktop\xiahuadongCode\number_humen_web\number_humen_web\1.wav"videoPath = r"C:\Users\xiahuadong\Desktop\xiahuadongCode\number_humen_web\number_humen_web\video\output.mp4"imageAudio2video(ffmpegPath, frameNumber, imgPath, audioPath, videoPath)

多个视频合成一个视频

FFmpeg concat 分离器
注意 : FFmpeg 1.1 以上版本。先创建一个文本文件filelist.txt:

file ‘input.mp4’
file ‘1.mp4’
file ‘2.mp4’

然后

#!/usr/bin/env python
# -*- encoding: utf-8 -*-
"""
@Introduce : 多视频合并成同一视频 (请使用绝对路径)
@File      : mergeVideo.py
@Time      : 2020-11-13 15:33
@Author    : xia hua dong
@Tel       : 173 179 76823
@Email     : 17317976823@163.com
@pip       : pip install
"""import osdef mergeVideo(ffmpegPath, txtPath, videoPath):"""多视频合并成同一视频 (请使用绝对路径):param ffmpegPath: ffmpeg.exe路径V:param txtPath: 多视频输入路径写入txt:param videoPath: 视频路径:return: 视频"""command1 = "{} -f concat -i {} -c copy {} -y".format(ffmpegPath, txtPath, videoPath)os.system(command1)if __name__ == '__main__':import time# 时间测试start = time.time()ffmpegPath = r"C:\Users\xiahuadong\Desktop\xiahuadongCode\number_humen_web\number_humen_front_back_end\ffmpey安装包\ffmpeg-20200628-4cfcfb3-win64-static\ffmpeg-20200628-4cfcfb3-win64-static\bin\ffmpeg"txtPath = r"C:\Users\xiahuadong\Desktop\xiahuadongCode\number_humen_web\number_humen_web\video\filelist.txt"videoPath = r"C:\Users\xiahuadong\Desktop\xiahuadongCode\number_humen_web\number_humen_web\video\merge.mp4"mergeVideo(ffmpegPath, txtPath, videoPath)end = time.time()print('运行时间: {} 秒'.format(end - start))

改变视频播放速度

#!/usr/bin/env python
# -*- encoding: utf-8 -*-
"""
@Introduce : 改变视频播放速度(注意:如果视频中有声音,声音速度不会改变)
@File      : speedVideo.py
@Time      : 2020-11-13 15:33
@Author    : xia hua dong
@Tel       : 173 179 76823
@Email     : 17317976823@163.com
@pip       : pip install
"""import osdef speedVideo(ffmpegPath, inputVideoPath, speed, outputVideoPath):"""改变视频播放速度(注意:如果视频中有声音,声音速度不会改变):param ffmpegPath:  ffmpeg.exe的路径:param inputVideoPath: 输入视频路径:param speed: 输出速度:输入速度:param outputVideoPath: 输出视频速度:return:"""command1 = '{} -i {} -filter:v "setpts= {}*PTS" {} -y'.format(ffmpegPath, inputVideoPath, speed, outputVideoPath)os.system(command1)if __name__ == '__main__':ffmpegPath = r"C:\Users\xiahuadong\Desktop\xiahuadongCode\number_humen_web\number_humen_front_back_end\ffmpey安装包\ffmpeg-20200628-4cfcfb3-win64-static\ffmpeg-20200628-4cfcfb3-win64-static\bin\ffmpeg"inputVideoPath = r"C:\Users\xiahuadong\Desktop\xiahuadongCode\number_humen_web\number_humen_web\video\merge.mp4"speed = 0.5outputVideoPath = r"C:\Users\xiahuadong\Desktop\xiahuadongCode\number_humen_web\number_humen_web\video\speed.mp4"speedVideo(ffmpegPath, inputVideoPath, speed, outputVideoPath)

python ffmpeg 视频转图片 视频转音频 播放音频 多张图片+音频转视频 多个视频合成一个视频 改变视频播放速度相关推荐

  1. ffmpeg 将多个视频片段合成一个视频

    ffmpeg 将多个视频片段合成一个视频 网络视频 6 分钟的诅咒. 1. 新建文本文件 filelist.txt filelist.txt file 'output_train_video_0.mp ...

  2. 安卓开发,拼接屏幕、大屏幕、户外广告无人值守循环播放视频,图片。开机自动播放,断电后自动播放,重起后自动播放功能

    安卓开发,拼接屏幕.大屏幕.户外广告无人值守循环播放视频,图片.开机自动播放,断电后自动播放,重起后自动播放功能 因客户要求,开机自动播放视频,不需要电脑控制,通电自动循环播放视频. 电脑成本太高,最 ...

  3. ffmeg将多段视频合成一个视频

    ffmeg将多段视频合成一个视频 文章目录: 一.方法一:利用文件列表 二.方法二:不利用文件列表 三. 方法三:拼接不同编码格式的文件 四.注意事项 要处理多段视频太费劲啦,如果直接把多段小视频合成 ...

  4. 怎么把几个视频合成一个视频?这些合并方法很简单

    怎么把几个视频合成一个视频呢?将多个视频合成为一个视频,可以将不同的场景和情节串联起来,增强整个视频的故事性和连贯性.通过合理的剪辑和安排,我们可以将不同的视频片段组合成一个完整的故事,从而让观众更加 ...

  5. 想要将多个视频拼接在一起?如何把三个视频合成一个视频

    从事短视频创作行业以来,总是存在着各种挑战.最开始,因为主要负责视频素材的搜集,所以每天虽忙但充实,最近逐步开始学习视频的剪辑工作,可把我难到了!想要将多个视频拼接在一起?如何把三个视频合成一个视频? ...

  6. 两段视频合成一个视频用什么软件 怎么把两段视频合成一段看不出来

    两段视频合成一个视频用什么软件?无论是两段视频的合成,还是三段视频的合成,用视频编辑软件都能轻松搞定.但怎么把两段视频合成一段看不出来?这就比较考验制作者的功力了,不过我们还是有捷径的,下面一起来看看 ...

  7. 如何将多个视频合成一个视频,轻松把多个视频拼接合成一个视频

    如何将多个视频合成一个视频?对于视频的合并,其实很多软件都可以办到,尤其是视频剪辑工具,往往都有着很多的功能可以使我们剪辑出好看的视频文件.轻松把多个视频拼接合成一个视频?小编整理了三款比较常见的视频 ...

  8. 多个视频怎么合成一个视频?教你几种视频合并方法

    将多个视频合成一个视频,可以让我们更好地记录和呈现某个事件或者经历的完整过程.比如,我们可以将旅行的点滴片段合成一个完整的旅行视频,或者将孩子成长的点滴合成一个成长记录视频.很多小伙伴不知道如何将多个 ...

  9. 多个视频如何合成一个视频?

    多个视频如何合成一个视频?想必大家都有录制视频的经历,在录视频的时候,我们总会挑一些比较经典,比较重要的场景进行录制,这样到最后我们就得到了几段不同的视频文件.如果后期我们要分享这几段视频,大家说是一 ...

最新文章

  1. Struts详细用法
  2. 软件构建之链接应用--链接脚本
  3. 回溯——伯努利装错信封问题
  4. Python:字典列表字符串方法测试
  5. 产品采用的即时通讯软件是本地云架构
  6. HetSANN:基于注意力模型,自动挖掘异质网络语义信息 AAAI2020
  7. python控制结构实验结果分析_实验1_Python语法及控制结构
  8. 中国节能电梯市场趋势报告、技术动态创新及市场预测
  9. 为 Notepad++ 安装 NppFTP 插件,查看修改虚拟机上的文本文件
  10. 二叉树的递归与非递归
  11. 建立 arm-linux 交叉编译环境
  12. 仿真技术在控制系统中的应用 ---飞机姿态控制仿真( 俯仰角)
  13. led的伏安特性曲线 matlab实现_Matlab在伏安特性实验中的应用
  14. tp6 支付宝沙箱支付
  15. linux awk 打印最后一列,使用awk打印从第n个到最后一个的所有列
  16. 浅谈临床研究中随机化
  17. 怎么做无线路由跟服务器一个网段,一个宽带装两个路由器怎么设置?
  18. 表格进阶03——简历制作(用表格布局)
  19. 向量旋转(或矢量旋转或坐标轴旋转)后xy坐标重定位(vivado+cordic ip核+matlab) - 适用于数学爱好者
  20. 致远OA合并处理策略

热门文章

  1. J. Cheminform. | 基于化学基因组学中深度和浅层学习预测药物特异性
  2. RDKit | 通过Lipinski规则了解如何在RDKit中处理描述符
  3. Nat. Methods | 学习微生物与代谢产物之间相互作用的神经网络
  4. Excel VBA林木冠幅、分枝胸径字符串的拆解
  5. 堆排序算法的java实现_堆排序算法的JAVA实现
  6. mysql cluster mysql 节点无法关闭_Mysql Cluster 非root用户启动ndbd节点报错
  7. python高阶面试题_Python 爬虫面试题 170 道:2019 版
  8. JIPB:白洋组综述根系微生物组群落构建及其对植物适应性的贡献
  9. Microbiome:中外合作揭示微生物群落降解复杂微生物聚合物的酶(视频导读)
  10. AI打败外科医生:机器人做手术,你敢来一刀吗?