ffmpeg开发者视频剪辑器

news2024/11/24 14:30:25

5G 时代的来临,加速了视频类作品的创作,由于现在的流量越来越便宜,网速越来越快,特别是流量无限用套餐,大家更愿意去看视频作品,特别是抖音的兴起,更是加速了小视频的流量。不会剪辑的我们该如何来创作自己的短视频?

本期小编来介绍一下最简单的视频处理技术:

视频剪辑

win10自带的视频播放器可以进行剪辑,对于我们这些不是专业水平的人员,此剪辑软件足够我们使用了

首先我们使用win10的电视与电影播放器打开需要进行剪辑的视频,然后点击播放器右下角下的画笔工具

然后,选择裁剪,便可以进行视频的剪辑功能了,是不是特别简单,若想在视频中写文字,可以使用绘制功能,这些简单的功能便可以成功对一个视频进行剪辑,当然不能比拟现在大型的剪辑软件,但是对我们这些剪辑小白足够了,毕竟我们也买不起那么昂贵的剪辑软件。

视频合并

视频剪辑完成后,如何进行视频的合并,当然,有很多的方法,这里小编介绍一下ffmpeg

FFmpeg是一套领先的音视频多媒体处理开源框架,采用LGPL或GPL许可证。它提供了对音视频的采集、编码、解码、转码、音视频分离、合并、流化、过滤器等丰富的功能,包含了非常先进的音频/视频编解码库libavcodec,具有非常高的可移植性和编解码质量。FFmpeg在Linux平台下开发,但它同样也可以在其它操作系统环境中编译运行,包括Windows、Mac OS X等。

你可以到官网下载符合自己系统的软件
FFmpeg的功能主要包括视频采集功能、视频格式转换、视频抓图、给视频加水印等,主要包括如下几个命令行:

  1. fmpeg:一个命令行工具,可用于格式转换、解码或电视卡即时编码等;
  2. ffsever:一个 HTTP 、RTSP的实时广播流媒体服务器;
  3. ffplay:是一个简单的播放器,使用ffmpeg 库解析和解码,通过SDL显示;
  4. ffprobe : 一个多媒体流分析工具。 它从多媒体流中收集信息 并且以人类和机器可读的形式打印出来

视频剪辑

获取视频的信息
ffmpeg -i video.avi
采集usb摄像头视频命令:
ffmpeg -t 20 -f vfwcap -i 0 -r 8 -f mp4 cap1111.mp4
简单的抓屏:
ffmpeg -f gdigrab -i desktop out.mpg
将图片序列合成视频
ffmpeg -f image2 -i image%d.jpg video.mpg
把当前目录下的图片(image1.jpg. image2.jpg. 等...)合并成video.mpg
将视频分解成图片序列
ffmpeg -i video.mpg image%d.jpg
上面的命令生成image1.jpg. image2.jpg. ...
图片格式有:PGM. PPM. PAM. PGMYUV. JPEG. GIF. PNG. TIFF. SGI
将.avi转成gif动画
ffmpeg -i video_origine.avi gif_anime.gif
ffmpeg -i capx.mp4 -t 10 -s 320x240 -pix_fmt rgb24 jidu1.gif
从视频抽出声音
从avi提取mp3
ffmpeg -i source_video.avi -vn -ar 44100 -ac 2 -ab 192 -f mp3 sound.mp3
说明: 源视频:source_video.avi 音频位率:192kb/s 输出格式:mp3 生成的声音:sound.mp3
从flv提取mp3
ffmpeg -i source.flv -ab 128k dest.mp3
合成视频和音频
ffmpeg -i son.wav -i video_origine.avi video_finale.mpg
视频剪切
ffmpeg -ss 0:1:30 -t 0:0:20 -i input.avi -vcodec copy -acodec copy output.avi -r 提取图像的频率, -ss 开始时间, -t 持续时间

当然ffmpeg还有很多命令,大家可以参考官方教程

对于我们来讲,主要使用的功能便是视频合成,与视频添加背景音乐。

视频合成

首先我们需要下载ffmpeg到自己电脑上,并解压缩到本地,把需要合并的视频放入bin文件夹下并依次命名好:比如1.MP4,2.MP4.......等等,我们可以看到在bin文件夹下有3个exe文件,我们在此新建一个txt文件,这里便于我们输入命令,在txt里面输入如下:

以上顺序,便是我们我们视频合成的顺序,ok,在本文件夹下打开cmd命令框,输入如下命令:

ffmpeg -f concat -i filename.txt -c copy output.mp4
其中 filename.txt 便是我们新建的txt文件,里面写好了我们需要合并的小视频,然后输出output.mp4
这里最好统一一下视频的格式,不需要转码了

ok,以上,便可以成功的把我们的视频合并完成,可以上传到自己抖音或者头条了

视频添加背景音乐

有时候,需要我们添加背景音乐,虽然抖音或者其他平台都可以自动上传时,添加背景音乐,但是有些平台并不支持,且有些背景音乐我们并不喜欢,这里ffmpeg自然可以添加背景音乐

同样,把我们需要添加的背景音乐的视频与音频放到bin文件夹下,然后在本文件夹下打开cmd输入如下命令:

1、先去除源视频的音频轨,这里无论原始视频是否有背景音乐,都要执行如下命令
ffmpeg -i input.mp4 -c:v copy -an input-no-audio.mp4
2、再把新的音频混进去
ffmpeg -i input-no-audio.mp4 -i input.mp3 -c copy output.mp

原来使用ffmpeg来进行视频操作,如此简单,再也不用下载那么大的视频剪辑软件了,其他方面的命令行使用,小伙伴们可以参考以上命令行自行尝试。

当然当视频比较多时,我们便可以使用python+ffmpeg的方式来处理

更多transformer,VIT,swin tranformer
参考头条号:人工智能研究所
v号:启示AI科技
 

 动画详解transformer  在线教程

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2050471.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

windows安装android studio

下载 https://developer.android.google.cn/studio?hlzh-cn 安装 打开cmd输入如下命令 android-studio-2024.1.1.12-windows.exe /NCRC 注意 运行命令后可能还报错,但是会出现弹窗 如果还是报错可以选择zip 运行 不设置代理 等待下载即可,…

SAP LE学习笔记04 - MM与WM跨模块收货到仓库的流程中 如何既创建TR又同时立即在前台创建TO

上一章讲了在MM模块的IM(在库管理)中收货到仓库的流程,以及关联WM移动Type与IM移动Type。 SAP LE学习笔记03 - 在IM(在库管理)中收货到仓库的流程,关联 WM移动Type与IM移动Type-CSDN博客 本章继续将LE的其他知识。 - MM与WM跨模块收货到仓库的流程中,如…

深入探索Amazon EC2:解锁云端计算的无限可能

欢迎来到本次的实验教程,这将引导您在功能强大且充满活力的 Amazon Web Services (AWS) 云中启动并配置虚拟机。 在本次实验中,您将亲身体验如何利用 Amazon 机器映像 (AMI) 启动 Amazon EC2 实例,并掌握使用密钥对进行 SSH 认证登录实例的技…

第18 章探讨 C++新标准.可变参数模板,模板和函数参数包,展开参数包

第18 章探讨 C新标准.可变参数模板,模板和函数参数包,展开参数包 第18 章探讨 C新标准.可变参数模板,模板和函数参数包,展开参数包 文章目录 第18 章探讨 C新标准.可变参数模板,模板和函数参数包,展开参数包18.6 可变参数模板18.6.1 模板和函数参数包18.6.2 展开参数包18.6.3 …

Bootstrap个人技术博客响应式网页模板

Bootstrap个人技术博客响应式模板基于Bootstrap3.3.5制作,自适应分辨率,兼容PC端和移动端,全套模板,包括首页、关于、网页配色、内容页、友情链接、读者墙、标签云、点赞等网站模板页面。模板下载地址http://m.bokequ.com/moban/1…

我在高职教STM32——I2C通信之SHT20传感器(2)

大家好,我是老耿,高职青椒一枚,一直从事单片机、嵌入式、物联网等课程的教学。对于高职的学生层次,同行应该都懂的,老师在课堂上教学几乎是没什么成就感的。正是如此,才有了借助CSDN平台寻求认同感和成就感的想法。在这里,我准备陆续把自己花了很多心思设计的教学课件分…

ubuntu基于sealos搭建k8s集群,helm3安装配置自动化扩容Prometheus,grafana出图展示,以及动态web搭建

1.项目简介 大方向:k8s云原生方向,运维技术,配置问题解决 解决技术:ubuntu模板机安装,配置远程xshell连接ubuntu,设置静态ip,换ubuntu阿里云源,配置集群间域名解析,解决双IP冲突网…

I2C的10-bit地址空间

10-bit地址空间: I2C支持 10-bit的设备地址,此时的时序如下图所示: 在 10-bit地址的 I2C系统中,需要两个帧来传输 slave的地址。第一个帧的前 5个 bit固定为 b11110,后接 slave地址的高 2位,第 8位仍然是 …

牛客面经学习笔记(四)

这种拨码开关在PLC里面很是常用: 这种弧型线就很漂亮: 这个白色按键很漂亮: 快恢复保险丝: 继电器电路: 这里的续流二极管很重要,因为继电器是感性元件: 【【必考】5招搞清楚!单点接…

关于pytorch后续学习需要下载的包太慢怎么办?tensorboard为例

启发: anaconda python3.7安装TensorFlow 1.9.0(CPU版) 和这个佬的 我是CPU版本(好像是需要找anaconda对应版本,我不知道咋找版本,不知道不同版本的对应关系) 此时,我们可以浅浅pip…

民航网上订票系统设计和实现--论文pf

TOC springboot427民航网上订票系统设计和实现--论文pf 第1章 绪论 1.1选题动因 当前的网络技术,软件技术等都具备成熟的理论基础,市场上也出现各种技术开发的软件,这些软件都被用于各个领域,包括生活和工作的领域。随着电脑和…

【系统分析师】-综合知识-系统架构

1、设计模式 1)观察者模式定义了对象间的一种一对多依赖关系,使得每当一个对象改变状态,则所有依赖于它的对象都会得到通知并被自动更新【消息订阅】。在该模式中,发生改变的对象称为观察目标,被通知的对象称为观察者&…

泰坦尼克号 - 从灾难中学习机器学习/Titanic - Machine Learning from Disaster(kaggle竞赛)第二集(加载数据)

此次目的: hello大家好,俺是没事爱瞎捣鼓又分享欲爆棚的叶同学!!!准备出几期博客来记录我学习kaggle数据科学入门竞赛的过程,顺便也将其中所学习到的知识分享出来。这是第一集(了解赛题&#x…

Ansible可视化管理之web界面集成使用探究(未完待续)

一、前言 因某集成商管理的客户资源涉及4A接入管控要求,其中密码必须3个月更新一次,随着纳管主机的数量增多,手动去修改密码变得不现实,考虑无侵入性和资源耗用,便捷性等因素,首先选用Ansible作为此需求的…

武汉君耐营销策划有限公司员工信息管理系统pf

TOC springboot428武汉君耐营销策划有限公司员工信息管理系统pf 第1章 绪论 1.1 研究背景 互联网概念的产生到如今的蓬勃发展,用了短短的几十年时间就风靡全球,使得全球各个行业都进行了互联网的改造升级,标志着互联网浪潮的来临。在这个…

【Harmony OS 4.0】待办列表案例

src/main/ets/example1/Models.ets // 定义class类数据模型 export class TaskDataModel {// private 私有属性&#xff0c;在类对象外不允许随意更改数据&#xff0c;必须本地初始化。private tasks: Array<string> [早起晨练, 准备早餐, 阅读名著, 学习ArkTs, 玩游戏…

答题情况和每题得分

文章目录 1.提交答题情况1.PracticeDetailController.java2.PracticeDetailService.java3.PracticeDetailServiceImpl.java4.PracticeDetailDao.java5.PracticeDetailDao.xml6.reqSubmitSubjectDetailReq.java 7.dto1.SubjectDetailDTO.java2.SubjectDTO.java3.SubjectOptionDT…

算法的学习笔记—合并两个排序的链表(牛客JZ25)

&#x1f600;前言 在算法面试中&#xff0c;链表问题是经常遇到的考点之一&#xff0c;其中合并两个排序链表是一个非常经典的问题。本文将详细介绍如何通过递归和迭代两种方式实现两个有序链表的合并。 &#x1f3e0;个人主页&#xff1a;尘觉主页 文章目录 &#x1f600;合并…

大厂高频软件测试面试题和答案都帮你准备好啦,备战金九银十

还有两周时间就是金九银十求职招聘季了&#xff0c;每年的9月和10月&#xff0c;都是毕业生求职的大好时机&#xff0c;很多企业为招揽人才&#xff0c;会在每年的九十月份举办针对应届生的招聘会。接下来小编已为大家备好了多家大厂高频软件测试面试题和答案&#xff0c; 说下…

Zookeeper应用场景实战一

目录 1. Zookeeper Java客户端实战 1.1 Zookeeper 原生Java客户端使用 ZooKeeper常用构造器 示例代码&#xff1a; Zookeeper主要方法 1.2 Curator开源客户端使用 引入依赖 示例代码&#xff1a; 创建一个客户端实例 创建节点 一次性创建带层级结构的节点 获取数据 …