使用opencv及FFmpeg编辑视频

这篇具有很好参考价值的文章主要介绍了使用opencv及FFmpeg编辑视频。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

帮朋友做了一个小作业,具体实现分为几个过程:

  • 将两个mp4格式视频融合到一起
  • 为新视频添加声音

1.融合两个视频

其中一个视频为背景。

p="E:/test"

import cv2
import os 

#%%
cap =  cv2.VideoCapture(os.path.join(p,"bkg.mp4"))
cap2 =  cv2.VideoCapture(os.path.join(p,"fg.mp4"))

fourcc = cv2.VideoWriter_fourcc(*'MP4V')  
fps = cap2.get(cv2.CAP_PROP_FPS) 
width, height = int(cap.get(cv2.CAP_PROP_FRAME_WIDTH)), int(cap.get(cv2.CAP_PROP_FRAME_HEIGHT)-560) 
out = cv2.VideoWriter('result2.mp4', fourcc, fps, (width, height)) 

width2, height2 = 270,480


while(True):
    # 3.获取每一帧图像
    ret, frame = cap.read()
    ret2, frame2 = cap2.read()

    if ret2 == True:
        frame_new=frame[280:-280]    
        frame2 = cv2.resize(frame2, (width2,height2))
        frame_new[160:600,160:410]=frame2[40:,:250]
        out.write(frame_new)
    else:
        break
    if cv2.waitKey(25) & 0xFF == ord('q'):
        break
cap.release()
out.release()

cv2.destroyAllWindows()

此时保存的视频没有声音。

2.为视频添加声音

2.1 安装ffmpy Python包

pip install ffmpy

2.2 下载ffmpeg

从官网下载安装包,跳转到链接:
使用opencv及FFmpeg编辑视频,numpy matplotlib opencv pandas,python,opencv,ffmpeg,音视频
我使用的是第一个压缩包。剪切到自定义位置,并设置好系统路径。

我这里的路径是'D:/Program Files/ffmpeg/bin/ffmpeg.exe'

2.3 代码实现

在这之前音频文件要准备好。

from ffmpy import FFmpeg

video_path=os.path.join(p,'result1.mp4')
audio_path=os.path.join(p,'audio.mp3')
_codec = 'aac'
result="res.mp4"

ff = FFmpeg(executable='D:/Program Files/ffmpeg/bin/ffmpeg.exe',inputs={video_path: None, audio_path: None},outputs={result: '-map 0:v -map 1:a -c:v copy -c:a {} -shortest'.format(_codec)})     
ff.run()

3.效果

使用opencv及FFmpeg编辑视频,numpy matplotlib opencv pandas,python,opencv,ffmpeg,音视频

参考文献

[1] https://ffmpeg.org/download.html#build-windows
[2] csdn博客:【实操】python opencv将图片合成视频,并插入音频
[3] csdn博客:Python 视频添加音频(附代码) | Python工具
[4] csdn博客:OpenCV保存摄像头视频和视频文件操作实战(附Python源码)文章来源地址https://www.toymoban.com/news/detail-727880.html

到了这里,关于使用opencv及FFmpeg编辑视频的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • python数据分析学习笔记之matplotlib、numpy、pandas

    为了学习机器学习,在此先学习以下数据分析的matplotlib,numpy,pandas,主要是为自己的学习做个记录,如有不会的可以随时查阅。希望大家可以一起学习共同进步,我们最终都可以说:功不唐捐,玉汝于成。就算遇到困难也不要气馁,大声说:我不怕,我敏而好学!! 把大量

    2024年02月08日
    浏览(59)
  • Python 数据分析入门教程:Numpy、Pandas、Matplotlib和Scikit-Learn详解

    NumPy是一个Python的科学计算基础模块,提供了多维数组和矩阵操作功能。 NumPy中的数组比Python自带的列表更适合进行数值计算和数据分析。 Pandas建立在NumPy之上,提供了更高级的数据分析功能。 Pandas中的DataFrame可以看成是一个二维表格,便于加载和分析数据。 Matplotlib可以用来绘

    2024年02月07日
    浏览(54)
  • 【数据分析】matplotlib、numpy、pandas速通

    教程链接:【python教程】数据分析——numpy、pandas、matplotlib 资料:https://github.com/TheisTrue/DataAnalysis 官网链接:可查询各种图的使用及代码 对比常用统计图 (1)引入 (2) 示例 (3) 设置图片大小 figsize: 图片的 (长, 宽) dpi: 每英寸像素点的个数,例如选定为 80 (图像模糊

    2024年01月24日
    浏览(35)
  • Python视频编辑神器:全面分析ffmpeg-python库的安装与使用方法

    Python视频编辑神器:全面分析ffmpeg-python库的安装与使用方法 在Python中进行视频编辑是一件令人兴奋的事情,它能够让你深入了解和控制你想要的任何一帧视频。而在Python视频编辑工具中,ffmpeg-python库可以说是至关重要的一员。它能够让你轻松地处理视频、音频等多媒体数据

    2024年02月10日
    浏览(64)
  • 郭炜老师mooc第十一章数据分析和展示(numpy,pandas, matplotlib)

    numpy创建数组的常用函数  numpy数组常用属性和函数  numpy数组元素的增删 在numpy数组中查找元素  np.argwhere( a ):返回非0的数组元组的索引,其中a是要索引数组的条件。 np.where(condition) 当where内只有一个参数时,那个参数表示条件,当条件成立时,           where返回的是每个

    2024年03月15日
    浏览(79)
  • 【JS】纯web端使用ffmpeg实现的视频编辑器

    废话不多,先上视频。 ffmpeg编辑器 这是一个纯前端实现的视频编辑器,用的ffmpeg的wasm,web框架用的vue3。界面手撸。 用vite的vue3模板创建一个就可以。 package.json 创建页面和路由,用的vue-router,简单的添加一下。 router.js 主要项目结构 组件代码 progress-dialog.vue resource-item.vue t

    2024年02月12日
    浏览(47)
  • ffmpeg与opencv-python处理视频

    1.下载 FFmpeg 访问FFmpeg官方网站。 选择 “Windows builds from gyan.dev” 链接,这会带您到一个包含最新版本 FFmpeg Windows 构建的页面。 选择一个适合您系统的版本(例如,32位或64位),并下载 ZIP 文件。 2.解压文件 将下载的 ZIP 文件解压到选择的文件夹中。 3.添加 FFmpeg 到您的环境

    2024年01月22日
    浏览(42)
  • 第2课 使用FFmpeg读取rtmp流并用openCV显示视频

     本课对应源文件下载链接: https://download.csdn.net/download/XiBuQiuChong/88680079 这节课我们开始利用ffmpeg和opencv来实现一个rtmp播放器。播放器的最基本功能其实就两个:显示画面和播放声音。在实现这两个功能前,我们需要先用ffmpeg连接到rtmp服务器,当然也可以打开一个文件。 1.压

    2024年02月04日
    浏览(42)
  • anaconda 安装matplotlib 、PIL 、opencv、numpy、mediapipe、skimage、torch torchvision torchaudio、imutils、onnx

    【安装matplotlib】 pip install -i https://pypi.tuna.tsinghua.edu.cn/simple matplotlib==3.5.2 【安装PIL】(如果已经安装了matplotlib,则无需单独安装) pip install pillow 【安装opencv】 pip install -i https://mirrors.aliyun.com/pypi/simple/ opencv-python==3.4.11.45 pip install -i https://mirrors.aliyun.com/pypi/simple/ opencv-contrib-

    2024年01月24日
    浏览(44)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包