解决视频转码后颜色有变化的问题
环境:
Ubuntu16.4 ffmpeg4.3.1 x264 1.60
视频转码时有时会遇到转码后视频的颜色与原始视频有些许差异的问题。问题的根源在于编码器的输出配置其实是有很多的,如果用户不手动配置,那就采用默认的配置。默认的配置虽然可以满足市面上绝大多数需求,但是一旦遇到比较偏的视频源时,往往会导致意想不到的问题
我们往往会忽视视频的色域编码。有关色域的知识,读者可以从下面这个连接做一个详细的了解
http://avisynth.nl/index.php/Convert
可以用ffmpeg查看视频的色域编码信息
ffmpeg -i xxx.mp4
也可以用potplay查看,播放视频–点击属性–文件信息
红色方框内的信息即为视频的色域编码信息(不同系统可能会有所不同)
其中smpte170m/bt470bg/smpte170m这三个参数的配置分别对应ffmpeg里面的
-colorspace、-color_primaries、-color_trc
在Linux系统中查看ffmpeg帮助文件
ffmpeg -h full >> ffmpeg_help.txt
找到上面三个参数所对应的位置
参数选择对应的名称和数字均可
设置参数转码,比如
ffmpeg -i xxx.mp4 -c:v libx264 -x264-params preset=veryslow:crf=18:tune=film:qcomp=0.6:profile=high:level=5:aq-mode=2:aq-strength=0.8 -c:a copy -color_primaries 5 -colorspace 6 -color_trc 6 xxx.mp4
经仔细对比播放可发现,颜色与原视频无差异
解决视频转码后颜色有变化的问题相关推荐
- 怎样才能提高视频转码后的清晰度?
怎样才能提高视频转码后的清晰度? 很多用户反应视频转码后不清晰,是因为视频转码的码率设置太低导致的. 演示版的码率默认设置为500,画面大小是480:-1,这样设置的目的是快速转码,超高的视频压缩率让 ...
- 解决ffmpeg视频转码后视频清晰度下降的问题
清晰度 Chrome不支持非h264编码的mp4视频播放,可通过ffmpeg将视频转码成h264编码: ffmpeg -i input.mp4 -vcodec h264 -b:v 0 output.m ...
- 关于视频转码后只有声音没有画面的问题
之前做项目的时候有遇到过这种问题,因为视频格式不对,想把视频转成MP4格式上传到服务器,之后发现转码后的视频在网页上播放都只剩下声音了.用播放器播放则完好,研究了一番之后才发现转码时应将视频编码改为[ ...
- 视频转码后,video只能播放声音,不能播放画面
最近用video来播放视频,用格式工厂把mov,mpg格式的视频转码成了MP4格式,结果video只能播放声音,不能播放画面,但是用视频播放器能播放出来. 解决方法:视频的编码格式不对, MP4有4种 ...
- 微云视频转码架构介绍
1. 背景 微云日上传视频数达到140万个,每日播放视频次数达到1000w次,在线播放视频成为强烈的需求.但是在PC WEB.H5的播放体验并不好,原因有两个: (1)播放组件支持的视频格式少,仅支持 ...
- 用FFMPEG SDK进行视频转码压缩时解决音视频不同步问题的方法(转) PTS DTS
用FFMPEG SDK进行视频转码压缩的时候,转码成功后去看视频的内容,发现音视频是不同步的.这个的确是一个恼火的事情.我在用FFMPEG SDK做h264格式的FLV文件编码Filter的时候就碰到 ...
- javaweb中ffmpeg视频转码h264出现卡住不执行的解决办法(看到最后面就是答案了)
郑文亮 专心地钻研编程,每天进步一点点 博客园 首页 新随笔 联系 管理 随笔-1610 文章-3 评论-570 Java+Windows+ffmpeg实现视频转换 最近由于项目需要,研究了一下 ...
- 【ArcGIS风暴】ArcGIS矢量数据分层设色后导出或裁剪后颜色分类丢失完美解决办法
在利用ArcGIS做土地利用现状图或者规划图时,事先费了好大劲把每个地类对应的图斑进行了符号化(用不同的颜色表示),后来把符号化好的数据导出,并进行加载,发现颜色分类完全丢失了,同样,在利用某个重点区 ...
- onchange监听input值变化及input隐藏后change事件不触发的原因与解决方法(设置readonly后onchange不起作用的解决方案)
onchange监听input值变化及input隐藏后change事件不触发的原因与解决方法(设置readonly后onchange不起作用的解决方案) 参考文章: (1)onchange监听inpu ...
最新文章
- jquery实现层级显示 效果图_php运用无限级分类实现评论及回复功能
- Ctrl + z 和 Linux jobs
- JS break语句和continue语句
- FPGA/ASIC初学者应该学习Verilog还是VHDL?
- [数字技巧]最大连续子序列和
- Mysql数据类型之浮点与二进制型数据使用案例总结
- excel打开2个独立窗口_谢楠称女性独立的不是钱是心 谢楠与吴京婚后生育2个儿子...
- 用java统计任一书名次数_Java入门第三季 借书系统源代码 加入了限制重输次数 欢迎指教交流...
- 很值得学习的java 画图板源码
- KM算法实现带权匹配C#版本和C++两个版本实现O^3
- 信号降噪方法——基于自适应神经模糊推理系统(ANFIS)的降噪处理
- 2022 年面向初学者的 10 大免费 3D 建模软件
- 8. 数仓开发之 DIM 层
- Java进阶-常用API
- OUTLOOK无法打开
- 解决COVID-19的7个开放硬件项目
- 安卓期末大作业——番茄小说APP
- 手机网站支付转Native支付--Android
- 计算机开机跳过硬盘检查,怎么跳过开机硬盘自检的三个方法
- shell循环loop