使用FFMPEG将WebM转为MP4或MKV

2023-11-12

PS5 自带的录像功能导出的格式是WebM,同时视频是HDR默认60帧。我们有时需要转成其他格式保存。下面两个命令可以将其转成mkv或者mp4格式。

ffmpeg -i test.webm -vf zscale=t=linear:npl=100,format=gbrpf32le,zscale=p=bt709,tonemap=tonemap=hable:desat=0,zscale=t=bt709:m=bt709:r=tv,format=yuv420p -c:v libx264 -crf 17 -preset slower test2.mkv
或者
ffmpeg -i test.webm -vf zscale=t=linear:npl=100,format=gbrpf32le,zscale=p=bt709,tonemap=tonemap=hable:desat=0,zscale=t=bt709:m=bt709:r=tv,format=yuv420p -c:v libx264 -crf 17 -preset slower test2.mp4

这个转换的原理是把WebM容器内的HDR视频通过zscale滤波器转换成SDR的视频并且封装到mkv或者mp4的容器中。如果不使用滤波器映射色彩空间而直接转换的话,出来的视频会失色(color loss),效果是看上去灰蒙蒙的。

如果需要将视频从60帧转为30帧,可以加入 -r 命令如下

ffmpeg -i test.webm -vf zscale=t=linear:npl=100,format=gbrpf32le,zscale=p=bt709,tonemap=tonemap=hable:desat=0,zscale=t=bt709:m=bt709:r=tv,format=yuv420p -c:v libx264 -crf 17 -preset slower -r 30 test2.mkv

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用FFMPEG将WebM转为MP4或MKV 的相关文章

  • ios ffmpeg 保存mp4

    废话不说 直接上代码 header写入成功 void init mp4saving AVFormatContext pFormatCtx videoStreamin int videoStream savenamein NSString s
  • HEVC学习之码流分析

    一 从分层编解码框架到NAL单元 以H 264为例 H 264适应不同网络之间的传输 主要原因是引入了分层结构 分为视频编码层 VCL 与网络抽象层 NAL 从而实现压缩编码与网络传输分离 通过H 264算法压缩的后的数据通过NAL VCL
  • AndroidFFmpeg

    https github com appunite AndroidFFmpeg git 本地路径 这个比较全 四种播放方式都有 问题流媒体播放无控制 太快太慢都报错 lbg android ffmpeg AndroidFFmpeg http
  • H.264 入门篇 - 11 (帧间预测 - DPB 管理策略)

    DPB 对解码图像的存储有个策略 更倾向于存储对后面编码有用的图像 也就是参考图像 虽然说 DPB 中也可以存储非参考图像 在DPB没满的时候 会无差别地把参考图像与非参考图像一并插入DPB中 但是一旦DPB满了之后 如果新重建的图像为参考
  • 不使用采集卡,实现相机手机多机位直播

    背景 因为直播需求 现在想实现使用一台相机和一台手机完成直播的两个机位设定 搜了很多视频都是要购买采集卡 违背了性价比这一原则 搜索半天之后 根据当前的设备完成了任务 硬件材料 苹果手机一部 佳能单反 所需软件 1 OBS 主要是用来集成各
  • C++ opencv处理kinect红外数据和彩色数据

    kinect好像已是明日黄花 但现在需要用这个做交互的人还不少 要做手势识别 于是入手一枚二手kinect2 0 入坑玩玩 做手势识别 直觉上要用opencv 从网上搜的资料来看 大多是通过openNi来操作kinect 而且要openNi
  • 【分享NVIDIA GTC 23大会干货】在 GPU 上使用 Video Codec SDK,CV-CUDA 和 TensorRT 加速现代云上视频应用 [SE51229]

    在 GPU 上使用 Video Codec SDK CV CUDA 和 TensorRT 加速现代云上视频应用 前言 基于现代 的视频流水线架构与运用场景 NVIDIA 视频处理的工具集 1 视频编解码工具 2 前后处理部分 CV CUDA
  • 函数被声明为已否决

    函数被声明为已否决 尝试这个1 Project Properties gt Configuration Properties gt C C gt General gt SDL checks关掉 我的电脑这个方法可以其他方法 2 pragma
  • H.264 入门篇 - 07 (帧间预测 - 解码图像缓存 DPB)

    目录 1 DPB 的概念 2 DPB 最大深度 3 DPB 的行为 3 1 清空机制 3 2 内存分配过大 3 3 内存分配不足 前置文章 VideoCodec 入门篇 00 编解码简介 H 264 入门篇 00 简介 H 264 入门篇
  • web端播放视频之rtsp协议转HLS

    rtsp协议转HLS rtsp转hls协议 一 前言 1 传统安防行业 2 新兴直播行业 二 实现 1 rtsp转为HLS 2 提供http服务 3 组件封装dll 三 测试 1 使用vlc测试hls 2 使用nginx测试hls 3 实时
  • 流媒体服务器 客户端播放器方案推荐

    https github com jacke121 stream rtsp 使用说明 貌似把rtsp转为webrtc 但是没有把图片编码为webrtc Example config json server httpPort 8000 htt
  • 使用FFMPEG将WebM转为MP4或MKV

    PS5 自带的录像功能导出的格式是WebM 同时视频是HDR默认60帧 我们有时需要转成其他格式保存 下面两个命令可以将其转成mkv或者mp4格式 ffmpeg i test webm vf zscale t linear npl 100
  • H5之webcoekt播放JPEG图片流

    一 简介 既然webcoekt是基于tcp连接的 理论上讲所有的浏览器是可以私有协议处理二进制的 如果我们需要播放视频 我们可以将视频数据在后端解码后直接将图片推送到webcoekt前端 然后前端通过websocket接收图片然后将图片显示
  • ffpmeg相对无损转换mkv到mp4,保留标签、封面等元数据

    其实这个无损是相对无损 不是绝对无损 因为mkv封装支持的格式 标签等是比mp4封装要多的 比如mkv可以封装wav音频 mp4不能封装wav音频 所以这里的无损的前提是该mkv的媒体流 标签 TAG 封面图等 都是Mp4本身支持的 才能无
  • H264实时编码及NALU,RTP传输

    原文引用地址 http wmnmtm blog 163 com blog static 382457142011920102618122 fromdm fromSearch isFromSearchEngine yes H264实时编码及N
  • 【H.264/AVC视频编解码技术详解】八、 熵编码算法(2):H.264中的熵编码基本方法、指数哥伦布编码

    H 264 AVC视频编解码技术详解 视频教程已经在 CSDN学院 上线 视频中详述了H 264的背景 标准协议和实现 并通过一个实战工程的形式对H 264的标准进行解析和实现 欢迎观看 纸上得来终觉浅 绝知此事要躬行 只有自己按照标准文档
  • H5播放之Rtsp转Websocket点播录像抓拍

    H5播放之Rtsp转Websocket点播录像抓拍 HLS的延时 websocket播放 实现思路 广大网友们 很久没上CSDN了 暨上次RTSP转HLS文章发布以来 一直还有一个问题没有解决 如何避免HLS切片带来的不可避免的高延时 HL
  • ffmpeg提取视频分辨率输出为批处理变量

    在使用ffmpeg批处理编码视频时候 如果导入的素材尺寸不一样 得每次输入分辨率很麻烦 这里提供一个自动提取拖入的视频文件的分辨率的批处理脚本 另存为bat即可 需要文件夹下有ffprobe exe 原理是通过ffprobe exe把媒体信
  • ffmpeg最简单方式支持nvidia硬编解码

    提示 文章写完后 目录可以自动生成 如何生成可参考右边的帮助文档 文章目录 前言 一 nvidia硬编解码是什么 二 使用步骤 1 安装 2 确认 1 硬件解码器 2 硬件编码器 3 测试 总结 前言 因为工作内容的需要 之前写过一篇文章关
  • 【视频编码学习】VTM15.0编译运行

    VTM版本 15 0 操作系统 Win10 x64位 IDE Visual Studio 2019 编译器 cmake 利用VS2019运行VTM15 0 前言 一 下载VTM15 0 二 下载安装cmake 1 下载cmake并安装 2

随机推荐

  • Python_Logging日志模块(一)

    一 日志的作用 展现当前程序的活动情况 记录程序的运行轨迹 规范稳定的日志可以帮助开发者迅速定位程序的问题 二 日志的内容 正常情况下 一条完整的日志应该包含调用日志的时间戳 数字形式的日志级别 调用日志的实例化函数的路径 线程名 抛出的活
  • sheel脚本

    sheel脚本 sheel脚本 sheel脚本 sheel脚本的工作方式有两种 交互式和批处理 交互式 用户输入一条就立即执行 批处理 由用户实现编写好一个完整的sheel脚本 sheel会一次执行脚本中诸多命令 脚本中不仅会用到一般的li
  • 测试用例设计方法之等效类,边界值

    概念 等价类划分是一种黑盒测试方法 把无限的测试变成有限的测试 把所有可能的输入数据 即程序的输入域划分成若干等价类 然后从每一个等价类中选取少数具有代表性的数据作为测试用例 依据需求将输入 特殊情况下会考虑输出 划分为若干个等价类 从等价
  • 红帽linux认证有哪些方向

    红帽Linux认证有以下几个方向 RHCSA 红帽认证系统管理员 该认证是红帽认证中的初级认证 主要考察考生对Linux系统管理的掌握程度 包括系统安装 文件系统管理 用户和组管理 网络管理等 RHCE 红帽认证工程师 该认证是红帽认证中的
  • 高德地图定位

    高德地图开放平台 获取key 获取key值后 将其在index html中引入 然后来到App vue下 即根组件下 一进项目就可以获取定位 所以在钩子函数created 中实现定位功能
  • OpenAi 嵌入

    什么是嵌入 OpenAI 的文本嵌入衡量文本字符串的相关性 嵌入通常用于 搜索 结果按与查询字符串的相关性排序 聚类 其中文本字符串按相似性分组 推荐 推荐具有相关文本字符串的项目 异常检测 识别出相关性很小的异常值 多样性测量 分析相似性
  • 2018-2019-2 网络对抗技术 20165322 Exp2 后门原理与实践

    2018 2019 2 网络对抗技术 20165322 Exp2 后门原理与实践 目录 实验准备 后门概念 常用后门工具 实验内容与步骤 使用netcat获取主机操作Shell cron启动 使用socat获取主机操作Shell 任务计划启
  • 阿里带火的中台到底是什么?白话中台战略

    作者 王健 ThoughtWorks首席咨询师 十多年国内外大型企业软件设计开发 团队组织转型经验 一直保持着对技术的热爱 热衷于技术分享 目前专注在企业平台化转型 中台战略规划 微服务架构与实施 大型遗留系统服务化改造 敏捷精益转型 以及
  • IOS工程添加目录

    问题 ios工程和资源工程是分开的 需要将工程外的一个文件夹导入到ios工程中 以前是直接拷贝一份放在frameworks runtime src proj ios mac中 这样操作的缺点就是 修改了公共的资源后 还需要再修改ios工程下
  • 微信小程序的computed的使用

    1 官方参考地址 computed 微信开放文档 qq com 2 自定义组件component和behaviors component参考地址 自定义组件 微信开放文档 qq com behaviors参考地址 behaviors 微信开
  • Solidity中引入的SPDX是什么

    Solidity中引入的SPDX是什么 起因 Solidity 0 6 8 要求引入 SPDX 许可证 否则会出现警告 Warning SPDX license identifier not provided in source file
  • MyBatis万能插入语句

    MyBatis万能插入语句 前言 最近需要做一个动态新增数据的接口 表名 列名 数据都是动态传进来的 需要一个接口就可以把所有表数据新增成功 第一种方式 首先看Mapper dao层 接口 插入数据 param tableName 表名 p
  • linux 解压所有以zip结尾的文件_Linux的压缩/解压缩文件处理 zip & unzip

    Linux的压缩 解压缩命令详解及实例 压缩服务器上当前目录的内容为xxx zip文件 zip r xxx zip 解压zip文件到当前目录 unzip filename zip 另 有些服务器没有安装zip包执行不了zip命令 但基本上都
  • C++中vector的使用

    向量std vector是一种对象实体 能够容纳许多各种类型相同的元素 包括用户自定义的类 因此又被称为序列容器 与string相同 vector同属于STL Standard Template Library 中的一种自定义的数据类型 可
  • VTK“静态编译”与“动态编译”的区别:

    静态编译 与 动态编译 的区别 静态编译就是在编译的时候把所有的模块都编译进可执行文件 exe 里去 当启动这个可执行文件时所有的模块都已加载进来 动态编译则是编译的时候需要的模块都没有编译进去 一般情况下可以把这些模块都编译成动态链接库D
  • exec族函数配合fork使用(linux系统编程)

    execl 函数配合fork 函数 在执行A程序的过程中去执行B程序 代码B 用来改文件中的数值 include
  • Google签名证书和base64密钥

    keystore重点说明 1 打包aab时 需要自己创建当前应用的keystore 这个是开发者的应用的keystore 以后上传这个应用都使用这个keystore 2 Google的签名证书 作用是当应用上传Google商店后 Googl
  • 运行时链接

    基本概念 运行时链接 是在程序运行时 而非编译时或加载时 将程序代码与其依赖的库代码进行链接的过程 动态链接在程序启动时或实际运行过程中通过API函数完成 这种方式的主要优点是它允许程序在运行时加载和卸载不同的库模块 从而实现更高的模块化和
  • 敏捷开发“松结对编程”实践之三:共同估算篇(大型研发团队,学习型团队,139团队,师徒制度,敏捷设计,估算扑克,扑克牌估算)

    转载自 http blog csdn net cheny com article details 6587277 本文是 松结对编程 系列的第三篇 之一 之二 之三 之四 之五 之六 之七 之八 此系列之九及之后文章请见栏目总目录 估算是经
  • 使用FFMPEG将WebM转为MP4或MKV

    PS5 自带的录像功能导出的格式是WebM 同时视频是HDR默认60帧 我们有时需要转成其他格式保存 下面两个命令可以将其转成mkv或者mp4格式 ffmpeg i test webm vf zscale t linear npl 100