使用FFmpeg filter v360 进行全景视频格式转换

  • 1. FFmpeg v360介绍
  • 2. 用法和参数
  • 3. v360支持的视频格式
  • 4. 立方体(cubemap)额外参数设置
    • 4.1 Padding
    • 4.2 设置不同面输出顺序
    • 4.3 分别设置每个面的旋转角度
    • 4.4 设置欧拉角旋转

1. FFmpeg v360介绍

FFmpeg在目前最新版4.3中加入了一个新的filter v360,功能是对不同投影格式的360度全景视频做格式转换。在此之前据我了解只有很多小的第三方的实现,现在FFmpeg终于加入了这个功能。
官方文档: FFmpeg v360 filter.

2. 用法和参数

官方示例:实现从ERP到立方体的转换:

ffmpeg -i input.mkv -vf v360=e:c3x2:cubic:out_pad=0.01 output.mkv

解释一下参数的含义:
最基本的参数格式如下:

v360=input_format:output_format

其中input_format和output_format分别是原始投影格式和目标投影格式。
e: ERP 投影格式
c: 立方体投影格式
c3x2: c后面加3x2指的是输出立方体视频的排列方式。目前支持三种:3x2, 1x6, 6x1
如果对于输入输出中的格式还有额外的参数要求,使用如下格式:

v360=input_format:output_format:format_1:arg_name=value

这里format_1指某个你要具体设置的格式,在冒号后面用arg_name= value的格式加具体参数。
在这个官方示例中,对于立方体还有额外的参数设置: cubic:out_pad=0.01, 这个是指立方体每个面要向外padding的像素数量是边长的1%。具体实现方式还不清楚。

3. v360支持的视频格式

全部支持的格式可以参考文档,这里总结几个我常用的格式。

Format argument Full name Notes
‘e’, ‘equirect’ Equirectangular
‘c3x2’, ‘c6x1’, ‘c1x6’ Cubemap with 3x2/6x1/1x6 layout 大量额外设置可选
‘eac’ Equi-Angular Cubemap
‘tsp’ Truncated square pyramid

4. 立方体(cubemap)额外参数设置

4.1 Padding

4.2 设置不同面输出顺序

使用参数out_forder设置六个用何种顺序排列。对于c3x2, 各个面按从左到右,从上到下排列:
举例:

ffmpeg -i input.mkv -vf v360=e:c3x2:cubic:out_forder='rludfb' output.mkv

这个命令是指立方体的六个面按right, left, up, down, front, back的顺序输出。这个也是默认顺序。
注意,如果输入的视频不是默认顺序,则需要用in_forder来声明输入的顺序。举例:

ffmpeg -i input.mkv -vf v360=c3x2:e:cubic:in_forder='rludfb' output.mkv

4.3 分别设置每个面的旋转角度

使用参数in_frot和out_frot设置每个面的顺时针旋转角度。举例:

ffmpeg -i input.mkv -vf v360=e:c3x2:cubic:out_frot='000012' output.mkv

这个命令会将输出的第五个面旋转90度,第六个面旋转180度。
默认是’000000’, 使用0 1 2 3 代表0 90 180 270度的旋转

4.4 设置欧拉角旋转

使用参数yaw, pitch, roll 可以对输出的视频做指定的旋转。
举例:如果要将视角向右偏移90度,即yaw=90,可以使用如下命令:

ffmpeg -i input.mkv -vf v360=e:c3x2:cubic:yaw=90 output.mkv

使用FFmpeg进行360全景视频格式转换:filter v360相关推荐

  1. 利用ffmpeg将.m4s的视频格式转换成.mp4

    下载ffmpeg 下载地址:https://www.gyan.dev/ffmpeg/builds/ 点击红色链接就可以下载,一般下载.zip格式就好,当然也可以选择.7z 题外话:什么是ffmpeg ...

  2. php视频格式转换---------ffmpeg-php扩展与ffmpeg.exe安装与使用

    HP转换视频格式这个问题, 找了一下午的ffmpeg-php扩展的安装与使用方法,都是千篇一律转载的. 下面是我整理的步骤,希望能帮助大家这个问题. 1.下载ffmpeg-php扩展包和ffmpeg. ...

  3. 【FFmpeg】使用 FFmpeg 处理音视频格式转换流程 ( 解复用 | 解码 | 帧处理 | 编码 | 复用 )

    FFmpeg 系列文章目录 [FFmpeg]Windows 搭建 FFmpeg 命令行运行环境 [FFmpeg]FFmpeg 相关术语简介 [FFmpeg]FFmpeg 相关术语简介 二 [FFmpe ...

  4. linux下ts转mp4,ffmpeg安装及实现视频格式的转换、分片(ts m3u8)

    1.简介 FFmpeg是一套可以用来记录.转换数字音频.视频,并能将其转化为流的开源计算机程序.采用LGPL或GPL许可证.它提供了录制.转换以及流化音视频的完整解决方案 2.相关 系统版本:Cent ...

  5. 【JAVA】JAVA使用ffmpeg进行视频格式转换以及截图

    JAVA 处理视频文件,需要用到 ffmpeg  这个工具.不需要依赖jar包.无论是在windows服务器还是linux服务器,想要使用 ffmpeg 都需要先安装. 附上Linux下  *.tar ...

  6. Ffmpeg,mencoder视频格式转换

    一. Ffmpeg,mencoder视频格式转换 Mencoder 转 flv  mencoder -ffourcc FLV1 -lavfopts i_certify_that_my_video_st ...

  7. Java使用ffmpeg进行视频格式转换、音视频合并、播放、截图

    封装类: ffplay.ffmpeg.ffprobe是安装的ffmpeg路径. import java.io.BufferedReader; import java.io.File; import j ...

  8. 在线js视频格式转换截图翻转编辑ffmpeg等操作

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="utf-8&quo ...

  9. ffmpeg 视频格式转换和宽高转换 制作自己想要的数据格式

    ffmpeg 视频格式转换和宽高转换 制作自己想要的数据格式 命令如下: ffmpeg -y -i Titanic.mkv -s 640*480 out.h264 运行效果: 一般的 使用 ffmpe ...

  10. 利用FFmpeg实现录屏、直播推流、音频视频格式转换、剪裁等功能

    一.FFmpeg简介. 二.FFmpeg常用参数及命令. 三.FFmpeg在Unity 3D中的使用. 1.FFmpeg 录屏. 2.FFmpeg 推流. 3.FFmpeg 其他功能简述. 一.FFm ...

最新文章

  1. innodb force recovery
  2. Git系列之git log高级命令
  3. 基于Springboot实现宠物医院综合管理系统
  4. java web基础1Tomcat服务器基本知识
  5. 多重if,嵌套if和switch case如何区别使用
  6. 多重继承与虚继承编程实验
  7. 链计算:构建信任网络,致力无边界协同
  8. python socket发送16进制数据_python socket以16进制的数据进行传递与解析
  9. 编程学习好去处:35 个快速学习的编程网站
  10. 查看sql_一键查看Oracle数据库当前SQL_WORKAREA_ACTIVE的相关操作
  11. 获取数组中的所有非唯一值(即:重复/多次出现)
  12. C#通过NOPI读写Excel,并插入图片,VS2019
  13. 用极致业务基础平台研发的族谱管理软件
  14. python标点符号换成空格_产品:“这输入框所有标点符号替换成空格!”
  15. SQL Server 2005“备份集中的数据库备份与现有的数据库不同”解决方法 详细出处参考:http://www.jb51.net/article/19233.htm
  16. 批量修改文件夹中文件的后缀名
  17. ――关于几个著名小说的胡思乱想
  18. stp文件怎么变文件夹_PDPS教程之数模数据格式转换-stp文件怎么打开
  19. FFT 快速傅里叶变换 初探
  20. 耳机重装系统后服务器坏了,Win7重装后耳机没声音|重装系统后耳机没声音怎么办?...

热门文章

  1. java端口扫描器_简单端口扫描器java的设计与实现.doc
  2. 7个简单步骤解释区块链挖掘和交易如何工作
  3. MyBatis-Plus之面向Mapper编程
  4. 加快 apk 的编译速度
  5. 源自神话的写作要义之英雄之旅
  6. bzoj 4134: ljw和lzr的hack比赛 sg函数+字典树
  7. flashgot免费下载音乐
  8. ubuntu16.04的WPS不识别jpeg图片格式
  9. React 语法之let和const命令
  10. Unity3D入门(三):游戏场景制作 3D 模型基础