应用场景: windows屏幕截屏写mp4文件。

但播放出的图像是倾斜的

解决思路过程:

1.  截屏出来的数据是RGB的,写MP4文件需要经过RGB24->YUV420转换。 怀疑RGB数据本身存在点问题。

2. 尝试将RBG数据写bmp文件, 写完的文件无论如何也打不开, 为此我特意研究了BMP包头, 确定是没问题的。 但问题是画图软件根本就是打不开, 问题到底出在那呢?既然

mp4文件能播放出来证明整个截屏调用过程,数据内容本身是不存在问题的。

3. 后来我想到我改了开源代码, 分辨率由原来1920 改为1366 (因为电脑分辨率就是1366*768)

4. 尝试在1920分辨率的机器运行,同样代码, 写的bmp文件, mp4文件均是正确的。    结论证明, 问题跟分辨率有关

5. 在网上搜索1366分辨率下写bmp文件失败的问题, 才知道图像以行来扫描的且必须是4的倍数。不够的就以0来填充。

6. 我一真没理解怎么个填充法。 通过实际尝试,如下操作可以让图片正常显示。

每个字段代表含义就不此描述了, 网上很多。 重点关注  3148800这个是RGB图像的长度,但实际RGB写的长度是1366*768*3=3147264, 其它的就用00或者FF来填充。保证整个文件的大小是3138854。

无意中尝试解决此问题的. (我直接用系统截屏软件搞了个bmp文件,对比后才发现我的长度比windows少1536个字节, 我用FF填充,就一切正常了,oh, my god, 5天时间就这样白白浪费了

java bmp rgb_RGB保存 .bmp文件踩坑记相关推荐

  1. oracle vm 加载ova,vmware导入ova文件踩坑记小结

    问题来源 众所周知,所有的网络行为都会产生相应的网络流量,那么所有的网络攻击行为也有其对应的流量特点,那么是否能根据流量特点进而分析出其对应的是什么攻击行为呢? 我在虚拟机上使用vulnhub的靶场环 ...

  2. Spark踩坑记——数据库(Hbase+Mysql)转

    转自:http://www.cnblogs.com/xlturing/p/spark.html 前言 在使用Spark Streaming的过程中对于计算产生结果的进行持久化时,我们往往需要操作数据库 ...

  3. Vue + TypeScript + Element 搭建简洁时尚的博客网站及踩坑记

    前言 本文讲解如何在 Vue 项目中使用 TypeScript 来搭建并开发项目,并在此过程中踩过的坑 . TypeScript 具有类型系统,且是 JavaScript 的超集,TypeScript ...

  4. spug上线服务踩坑记

    spug是一款优秀的自动化运维平台,  这让我们想自动化又向前迈了一步. 在过程中遇到的问题,记录在这里供各位看官参考. 目录 一.远程执行命令问题 二.软连接的问题 三.jdk 版本问题 四.ssh ...

  5. 安装sql server踩坑记【sql2000程序安装配置服务器失败】

    安装sql server踩坑记 安装程序配置服务器失败.参考服务器错误日志和 C:\WINDOWS\sqlstp.log 了解更多信息. 在C:\Program Files\Microsoft SQL ...

  6. 口罩、安全帽识别比赛踩坑记(二) 比赛流程及 SSD / YOLO V3 两版本实现

    本篇文章主要对比赛流程中的各个环节进行展开说明,并对笔者践行过的代码及更改的地方进行记录.如哪里有侵权请联系笔者进行删除.另外在这里对比赛举办方表示感谢 ~ ~ 其中开源代码会在整理后放在github ...

  7. Go 语言踩坑记——panic 与 recover

    题记 Go 语言自发布以来,一直以高性能.高并发著称.因为标准库提供了 http 包,即使刚学不久的程序员,也能轻松写出 http 服务程序. 不过,任何事情都有两面性.一门语言,有它值得骄傲的优点, ...

  8. python从入门到实践django看不懂_Python编程:从入门到实践踩坑记 Django

    <>踩坑记 Django Django Python 19.1.1.5 模板new_topic 做完书上的步骤后,对主题添加页面经行测试,但是浏览器显示 服务器异常. 个人采用的开发环境是 ...

  9. 东八区转为0时区_踩坑记 | Flink 天级别窗口中存在的时区问题

    ❝ 本系列每篇文章都是从一些实际的 case 出发,分析一些生产环境中经常会遇到的问题,抛砖引玉,以帮助小伙伴们解决一些实际问题.本文介绍 Flink 时间以及时区问题,分析了在天级别的窗口时会遇到的 ...

最新文章

  1. php java sql_java如何连接sql数据库?
  2. swift_043(Swift 懒加载(lazy) )
  3. android shape 按钮背景_Android button, xml文件定义形状,代码中修改背景颜色
  4. linux c之出现warning: implicit declaration of function ‘exit’ [-Wimplicit-function-declaration]这个问题
  5. Nginx主配置文件nginx.conf中文详解
  6. C与C++的区别简答
  7. 计算机水平考试模拟,计算机水平考试模拟试题(doc 23页)
  8. 一次linux root密码错修改历程
  9. thinkpad s5黑将摄像头最新驱动_第一款以iOS方式运行的安卓手机:联想新机S5黑科技震撼来袭!...
  10. 魔术命令python_魔术命令_利用Python进行数据分析_红黑联盟读书频道
  11. 华为freelace耳机修整详录
  12. 【完美解决】用python自带IDLE 进行turtle画图时,老是报错 AttributeError: module 'turtle' has no attribute 'fd'等问题
  13. 初学者也能看懂的Ray March体积云
  14. 如何批量删除pdf中的批注
  15. Google翻译API使用案例
  16. 手机编程python可以实现吗?有哪些软件值得推荐?
  17. 大数据学习有哪些难度
  18. 编译原理 —— 字母表
  19. Android 源码 输入系统之 InputReader
  20. 青岛财政局计算机专家招聘,中共青岛市财政局委员会关于丁莉萍等9名同志续聘职务的通知...

热门文章

  1. 关于中国省市的一份js代码
  2. 利用opencv进行圆形标志提取和质心计算
  3. 如何用php制作博客网页,博客网页制作的网站
  4. 浅谈Alpha Go所涉及的深度学习技术
  5. 新版Edge插件安装位置
  6. Nacos+Nginx集群配置
  7. maven本地仓库打包jar包
  8. 基于Python的学生考勤签到管理系统
  9. 极大似然估计 伯努利分布 高斯分布 正态分布
  10. 三维荧光平行因子学习记录--(三)使用DOMfluor工具箱进行平行因子分析--(二)