ffmpeg解码H264缺少帧的解决办法

最近用ffmpeg解码H264裸码流文件,发现解码总是少几帧。上网查了些资料,解决了。 当使用avcodec_decode_video2时,如果第三个参数的值为1,则表示完成一帧的解码,如果为0,表示没有解码完成。此时需要计算未解码的帧数,以便再次调用avcodec_decode_video2函数。如下getFrame函数,当解码成功一帧时返回,如果没有解码,则累加。另外实现getSkippedFrame函数,将之前未解码的数据再次解码。

阅读全文>>

记一下最近遇到的网络时断时连问题

前段时间搞完openwrt,就接着上级安排的任务:搞新CPU。但对于android我实在是新手,各种目录各种库,简单地拆分内核、文件系统,跑个helloworld程序,都搞了好久。刚刚看了几天,领导拿了一台X86的工控机给我,安排我测试其性能,要和之前搞的x86的设备对比。幕后安排事务是另外一个领导,我们老大也没发电子邮件,只是口头说。本来想具体写这个小小题外话,但想想还是算了。对于小兵来说,谁安排不是安排。

阅读全文>>

openwrt学习:make menuconfig的一些笔记

由于公司对于新CPU开发很着急,似乎明年2月份就能达到量产的目标。之前只有2个人在做平台级的开发,于是就另外抽调人手,而我就在其中。我之所心搞openwrt是因为硬件部门的样机一直未有时间表,而我总不能拿几篇网络搜索到的文章交给领导说已经完成储备了。鉴于事务的优先级,老大决定让我月底完成手上的活。于是我也光荣地跳进新平台这个无底坑中。去年开始,我一直担忧自己主攻方向的问题,从目前情况看,依然还是担忧。我也看开了,一切听从领导安排。而openwrt的学习,我不知道还会不会继续下去,只好尽量做点笔记,以备忘。本文记录openwrt编译配置的一些笔记,这些配置只是笔者的一个实践例子,当然,还有更多的配置选择,那是诸君之事了。

阅读全文>>

linux下iptables的编译及简单使用

前段时间搞openwrt,后来有另外的重要的部门任务安排,转行改公司经过几代迭代的架构的代码的警告,花了约一周时间,花这么久时间,一来代码多,二来绝大部分代码非小弟所写所熟,故个别地方要测试是否OK。改完后,就转行设置Linux防火墙。年初时某康公司曝了密码安全事件,股价大跌两天又涨回去了,前两天看新闻说当时写研报的某证券公司被人家给告了。但依然搞了我们心里不安,这不,要给设备做一套产品安全机制。其中一个小小方面是Linux的iptables。

阅读全文>>

继续收集gcc一些编译警告

大约半年前,写了篇关于gcc编译警告的文章《gcc较高版本的一些编译警告收集》,因为忍受不了当时做的项目的刷屏式的编译警告。没想到,现在又要进行此事。因为当前的代码分支实在太多,而且又各自为政,没法通用——与当初重构的初衷已背离,当然,这是架构师要做的事,即使公司现在正在推行“匠心精神”,我还是没权力和能力想去推架构。所以,注定是一个修正几年前代码遗留warning的小弟。在修正过程中,真正认为到代码编写的重要性。这份庞大的代码我只贡献不到2%吧,但还是好好总结一下,以免自己日后再犯。

阅读全文>>

初识openwrt(下)

上一篇文章只是分享openwrt移植过程的一些经验,但没有涉及具体的步骤、细节。本文简单讲述从下载、编译到修改配置的过程。openwrt十分庞大,短时间内无法深入了解。所以也只是介绍些皮毛,而且,这个东西只是为了应付部门任务而作。天知道哪一天又被中断而安排做其它优先级高的事务呢。从前文了解到,笔者所用的平台为Intel的片子,X86平台。

阅读全文>>

初识openwrt(上)

我接触openwrt,纯粹是因为部门任务。年初时,部门任务规划有交换机技术——忘了是因为这个原因派我出差搞网络问题,还是因为出差后再派任务。年中时,部门任务继续有交换机——因为上半年事务导致没做。老大说,搞好部门任务,年终分的钱会多多。但我深知,这个东西就是边沿化的,不是公司主管业务。(本段仅表示所做之事务的繁重,无其它目的)

阅读全文>>

完成一个H.265/HEVC码流分析工具

经过大约一个月左右的业余时间,终于初步完成一个H.265/HEVC码流分析工具。时间包括平时的周末、晚上,以及调休的集中时间。当然,中秋回家过节不写代码。截至今天,经过多种H.265序列测试,也有各种工具对比,基本上无大问题,v2.0版本终于释放出来。v1.x版本是去年年初做的,弹指间一年多的今天又继续做。但后面也不知道有没有时间和心情完善,随缘吧。

阅读全文>>

关于h264bitstream的bug修正及完善

最近学习HEVC,参考h264bitstream开源库重新写代码解析码流。在观察H264码流的分析结果时,发现该库分析的结果与商业工具有些不同。以前也遇到过,还写了篇文章《解决h264bitstream的一个bug》,经调试发现h264bitstream库实现上有些小问题,于是就修改修改,形成此文。

阅读全文>>

最近的一些事

上月底本月初,公司搬地方了,新办公点刚刚装修就搬了。听说甲醛对人体有害,虽然公司口口声声说测试过合格,但我还是买面罩带,在面子和健康前,我不选面子。天可怜见,这个月我调休请假特别多(我不会说为什么会有那么多假请的),有一半以上的时间不在那里吸有害气体。趁着这可能一辈子都不会有的大假学点东西。当然,在休息中学习,效率不是一般的差。

阅读全文>>