【ffmpeg命令入门】视频剪切,倍速与倒放

文章目录

    • 前言
    • 1. 视频剪切
    • 2. 视频倍速
      • 公式说明
      • 例子
    • 3. 视频倒放
    • 总结


前言

在视频编辑中,剪切、倍速和倒放是常见的操作,能够帮助我们调整视频的长度、播放速度以及播放顺序。掌握 FFmpeg 命令中的相关参数和用法将使视频处理变得更加高效。在这篇文章中,我们将介绍如何使用 FFmpeg 进行视频剪切、调整倍速和实现倒放效果,并解释每个命令的含义。

1. 视频剪切

视频剪切用于从视频中提取特定的片段。可以使用 FFmpeg 的 -ss-t 参数来实现视频剪切。

示例命令:

ffmpeg -i input.mp4 -ss 00:01:00 -t 00:00:30 -c copy output.mp4
  • ffmpeg:调用 FFmpeg 命令行工具。
  • -i input.mp4:指定输入文件为 input.mp4
  • -ss 00:01:00:指定剪切的起始时间为 1 分钟。该参数决定了从视频的哪个时间点开始剪切。
  • -t 00:00:30:指定剪切的持续时间为 30 秒。这个参数定义了从起始时间点开始剪切的片段长度。
  • -c copy:在剪切时复制视频流,避免重新编码,保留原视频质量。
  • output.mp4:输出文件名。

2. 视频倍速

视频倍速用于调整视频的播放速度。使用 FFmpeg 的 -filter:v "setpts=PTS/2" 参数可以实现倍速播放。setpts 滤镜改变视频的时间戳,从而调整播放速度。

示例命令:

ffmpeg -i input.mp4 -filter:v "setpts=PTS/2" -an output.mp4
  • ffmpeg:调用 FFmpeg 命令行工具。

  • -i input.mp4:指定输入文件为 input.mp4

  • -filter:v "setpts=PTS/2":使用 setpts 滤镜将视频的播放速度加倍。PTS 是视频帧的显示时间戳,PTS/2 意味着时间戳减少一半,从而使播放速度加倍。

  • -an:在处理时不处理音频流。

  • output.mp4:输出文件名。
    如果你想要设置其他倍速播放,可以使用以下公式来调整 PTS(Presentation Time Stamp)值:

  • 加速倍数:如果你希望将视频的播放速度加速为 N 倍,那么你应该使用 PTS/(N)

  • 减速倍数:如果你希望将视频的播放速度减速为 N 倍,那么你应该使用 PTS*(N)

公式说明

  • 加速

    • 倍速 = PTS / N
    • 例如,如果你想将视频的播放速度加速 3 倍,那么你应该使用 PTS/3。这意味着每帧的显示时间将减少到原来的 1/3,从而使视频的播放速度加快 3 倍。
      在这里插入图片描述
  • 减速

    • 倍速 = PTS * N
    • 例如,如果你想将视频的播放速度减速 0.5 倍(即将速度减半),你应该使用 PTS*2。这意味着每帧的显示时间将增加到原来的 2 倍,从而使视频的播放速度减慢 0.5 倍。
      在这里插入图片描述

例子

1. 加速 4 倍:

ffmpeg -i input.mp4 -filter:v "setpts=PTS/4" -an output.mp4

2. 减速 0.25 倍:

ffmpeg -i input.mp4 -filter:v "setpts=PTS*4" -an output.mp4

3. 加速 1.5 倍:

ffmpeg -i input.mp4 -filter:v "setpts=PTS/1.5" -an output.mp4

4. 减速 0.75 倍:

ffmpeg -i input.mp4 -filter:v "setpts=PTS*1.333" -an output.mp4

通过这些公式,你可以计算出所需的 PTS 值,从而调整视频的播放速度以符合你的需求。

3. 视频倒放

视频倒放用于将视频播放顺序倒转。使用 FFmpeg 的 -filter:v "reverse" 参数可以实现倒放效果。reverse 滤镜反转视频的帧顺序。

示例命令:

ffmpeg -i input.mp4 -filter:v "reverse" -an output.mp4
  • ffmpeg:调用 FFmpeg 命令行工具。
  • -i input.mp4:指定输入文件为 input.mp4
  • -filter:v "reverse":使用 reverse 滤镜将视频帧顺序倒转,实现倒放效果。
  • -an:在处理时不处理音频流。
  • output.mp4:输出文件名。

总结

通过这篇文章,我们学习了如何使用 FFmpeg 命令进行视频剪切、调整倍速和实现倒放效果。视频剪切使用 -ss-t 参数来提取特定片段,倍速播放通过 -filter:v "setpts=PTS/2" 调整播放速度,而倒放效果则通过 -filter:v "reverse" 实现。了解这些命令的含义和用法,将使我们能够更灵活地处理视频,满足不同的编辑需求。

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

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

相关文章

日本的便利店真的“无所不能”?!简直不要太方便了

众所周知,日本便利店可谓是日本人离不来的存在了!真真是“要啥有啥”,可以说日本的便利店才是真正意义上的“便利”~ 那日本的便利店到底有什么与众不同呢??今天小编来带大家盘点一下日本便利店的那些服务。 一、购票…

Redis:未授权访问

Redis Redis(Remote Dictionary Server)是一个开源的高性能键值对(key-value)数据库,支持多种类型的数据结构。 核心特性 内存存储:Redis将所有数据存储在内存中,能够提供极高的读写性能。 …

【Python面试题收录】Python编程基础练习题②(数据类型+文件操作+时间操作)

本文所有代码打包在Gitee仓库中https://gitee.com/wx114/Python-Interview-Questions 一、数据类型 第一题 编写一个函数,实现:先去除左右空白符,自动检测输入的数据类型,如果是整数就转换成二进制形式并返回出结果&#xff1b…

【知识图谱】深入理解 Cypher 查询语言中的查询

💝💝💝欢迎来到我的博客,很高兴能够在这里和您见面!希望您在这里可以感受到一份轻松愉快的氛围,不仅可以获得有趣的内容和知识,也可以畅所欲言、分享您的想法和见解。 推荐:kwan 的首页,持续学…

解锁人工智能学习中的数学密钥

一、启航:奠定数学基础 1. 线性代数:AI的入门语言 学习目标:掌握向量、矩阵的基本概念及运算,理解线性空间、线性变换及特征值、特征向量的意义。学习建议:从基础教材入手,如《线性代数及其应用》&#x…

vue3前端开发-小兔鲜项目-登录组件的开发表单验证

vue3前端开发-小兔鲜项目-登录组件的开发表单验证&#xff01;现在开始写登录页面的内容。首先这一次完成基础的首页按钮点击跳转&#xff0c;以及初始化一些简单的表单的输入验证。后期还会继续完善内容。 1&#xff1a;首先还是准备好login页面的组件代码内容。 <script …

巴黎奥运观赛AI新体验来了!通义App上线“赛事百事通”等多款新功能

巴黎奥运会期间&#xff0c;通义App上线赛事百事通、全民云运动、AI运动写真等多款新功能。这些新功能基于通义大模型打造&#xff0c;让国内体育迷们看奥运、聊奥运的同时&#xff0c;也能体验AI技术带来的观赛新体验。 据了解&#xff0c;打开通义App&#xff0c;进入“巴黎2…

每日OJ_牛客_求最小公倍数

目录 牛客_求最小公倍数 解析代码 牛客_求最小公倍数 求最小公倍数__牛客网 解析代码 最小公倍数 两数之积除以最大公约数&#xff0c;这里使用碾转相除法进行最大公约数的求解&#xff1a;即a与b的最大公约数可以转化为a、b之间的余数为两者之间最小的数之间的公约数。所以…

Linux云计算 |【第二阶段】AUTOMATION-DAY3

主要内容&#xff1a; Jenkins项目管理、构建分发服务器、自动化上线的案例部署 补充&#xff1a;yum与dnf只是做了快捷方式&#xff0c;用法一样 [rootnode1 ~]# ll /bin/yum lrwxrwxrwx. 1 root root 5 Feb 18 2020 /bin/yum -> dnf-3 [rootnode1 ~]# ll /bin/dnf lrwx…

deepseek-vl 论文阅读笔记

目录 一、已有模型性能差距分析 二、创新点 数据集构建 模型架构 训练策略 实验与评估 三、细节 数据构建 内部SFT数据的分类体系 模型架构 训练流程包括三个阶段 系统包含三个模块 混合视觉编码器 视觉-语言适配器 语言模型 训练策略 阶段一&#xff1a;训练…

基于MediaPipe的手部特征点识别

基于MediaPipe的手部特征点识别 MediaPipe简介 MediaPipe Solutions 提供了一套库和工具&#xff0c;可以在安卓或者windows应用中快速应用人工智能 (AI) 和机器学习 (ML) 技术。 MediaPipe 手部地标任务可检测图片中手部的特征点。识别效果如下 环境配置 python -m pip ins…

PandasDataFrame知识点(巨详细)

15.Pandas&#xff1a; Pandas是基于NumPy的一种工具&#xff0c;该工具是为解决数据分析任务而创建的&#xff0c;Pandas提供了大量能使我们快速便携地处理数据的功能。Pandas的主要数据结构是Series与DataFrame。 16.Series&#xff08;可以看作有序的字典&#xff09; 类…

函数图像是如何画出来的(LiveCharts2)

大火的人工智能本质上就是一些简单的函数的组合&#xff0c;比如f(x)kxb&#xff0c;只是可能不只有x,还会x1&#xff0c;x2&#xff0c;…xn&#xff0c;只是维数不同&#xff0c;当维数很多的时候自然就需要方程组才能求解&#xff0c;维数越多自然需要的算力就越多。于是就有…

使用python中的特殊字典——defaultdict

专栏总目录 一、defaultdict说明 在Python中是一个特殊类型的字典&#xff0c;它是collections模块中的一个类defaultdict的实例。这个字典与普通的字典dict不同之处在于&#xff0c;当你试图访问一个不存在的键时&#xff0c;defaultdict会自动创建一个新条目&#xff0c;其值…

9步带你完全了解FPC柔性电路板,一文搞懂什么是FPC!

FPC你所要了解的— 01 FPC软板&#xff0c;是一种神奇的电子元件&#xff0c;它能够随心所欲地弯曲、折叠、缠绕&#xff0c;像一条灵活的蛇&#xff0c;在狭小的空间里穿梭自如。它是怎么做到的呢&#xff1f; 随着社会的不断进步&#xff0c;电子行业的不断更新换代&#xff…

02 USB_JTAG驱动安装

1 概述 一般安装vitis(vivado)的过程中勾选了安装JTAG cable驱动就会默认安装好JTAG驱动&#xff0c;但是如果vivado无法正确识别到JTAG&#xff0c;那么可以试下重新手动安装驱动 2 准备工作 安装驱动前&#xff0c;必须关闭所有的vivado,vitis-sdk并且拔掉USB JTAG 以免导…

【机器学习】用Jupyter Notebook实现并探索单变量线性回归的代价函数以及遇到的一些问题

引言 在机器学习中&#xff0c;代价函数&#xff08;Cost Function&#xff09;是一个用于衡量模型预测值与实际值之间差异的函数。在监督学习中&#xff0c;代价函数是评估模型性能的关键工具&#xff0c;它可以帮助我们了解模型在训练数据上的表现&#xff0c;并通过优化过程…

OLLaMA搭建本地大模型

LLMChain是一个简单的链&#xff0c;接受一个提示模板&#xff0c;使用用户输入格式化它并从LLM返回响应。 其中&#xff0c;prompt_template是一个非常关键的组件&#xff0c;可以让你创建一个非常简单的链&#xff0c;它将接收用户输入&#xff0c;使用它格式化提示&#xff…

Mybatis(三) 查询不同数据封装的方式

实体类&#xff1a; 数据库&#xff1a; 1、查询一个实体类对象 /** * 根据用户id查询用户信息* param id * return */User getUserById(Param("id") int id);<select id"getUserById" resultType"User">select * from t_user where id …

【数据结构初阶】单链表经典算法题十二道——得道飞升(上篇)

目录 1、移除元素 2、反转链表 3、链表的中间节点 4、合并两个有序链表 Relaxing Time&#xff01;&#xff01;&#xff01; ———————————————— 天气之子幻 ———————————————— 1、移除元素 思路&#xff1a; 创建一个新链表&#xff0…