我的研究 | 迟思堂工作室

FFMPEG基于内存的转码实例——输入输出视频均在内存

FFMPEG基于内存的转码实例——输入输出视频均在内存

我在6月份写了篇文章《FFMPEG基于内存的转码实例》,讲如何把视频转码后放到内存,然后通过网络发送出去。但该文章只完成了一半,即输入的数据依然是从磁盘文件中读取。在实际应用中,有很多数据是放到内存的,比如播放从服务器接收到的视频,就是在内存中的。时隔2个月,项目终于完成了,虽然在收尾阶段会花费大量时间,但也算空闲了点。于是就继续完善。

让Linux使用malloc申请更多的内存

让Linux使用malloc申请更多的内存

项目遇到一个问题,程序跑着跑着就会挂掉,从多方信息分析来看,发现在设备的linux系统中,一个进程申请的内存最大只能达到1GB,而设备所用的物理内存是2GB的。我们的程序有多个进程,但主进程只有一个,里面包括几十个线程,有的线程使用了如opencv的模块,占用内存有几百兆。而之前在文章提到的H.264转AVI,也必须将转码后的AVI格式内容放在内存,由于某些原因,系统中的内存使用峰值会达到1GB。但由于我正在搞其它的bug,这个实际是同事研究出来的,我也只是再次多方面地验证了一下。还是在这里记录一下吧。

遇到一个因socket未关闭引发的文件句柄用完问题

遇到一个因socket未关闭引发的文件句柄用完问题

“爱提踢斯”项目最近遇到一个问题,当FTP服务器磁盘没有空间时,设备会不断复位——这是测试人员反馈的。我们拿到log后,看到一个通信所用的文件打开失败。不断打印Too many open file,然后超时设备复位。同时我们看到数据库文件打开失败,无法写入数据。一个现象,看到好几处问题。还是从最初的表现来入手。虽然把bug指派给别人,但从时间、进度上考虑,周末还是去加班。而最后,解决了问题。根据老夫目测,是FTP的socket未关闭引起的。

记最近遇到的几个小问题(字符串转整型溢出,汉字乱码,双网卡双默认IP)

记最近遇到的几个小问题(字符串转整型溢出,汉字乱码,双网卡双默认IP)

这个月很少写文章,因为做着项目。说来惭愧,人当项目经理,我当项目经理,我却既像爹又像娘,似乎凡事亲力,同志们太依赖项目经理了。什么编译环境、SVN提交代码,周报提交,无一不是问过于我。我想不理这事,无奈有的领导太忙,有的开发人员太懒,而我又是“老好人”,只想项目快点结束,于是就出现这种情况了。不过,最主要还是有人推我下坑,说我以前做项目的管理能力行,所以叫我做项目经理了。我都没当过项目经理,哪来的管理能力。

FFMPEG基于内存的转码实例

FFMPEG基于内存的转码实例

前面有文章写道,尝试在FFMPEG里面直接使用FTP协议将H.264祼码流封装为AVI视频格式存储到FTP服务器上,遗憾的是以失败告终。然此事须解决,在多方考虑之后,决定使用内存临时存储,而不是写入磁盘文件,一来不必要,二来对磁盘有损耗。
FFMPEG支持内存转码的,但没有现成可用的封装得很好的接口。几经翻阅网络文章,找到了些许方法,结合自己的实验,完成既定目标。网络上暂未发现有此类应用,写出来,尽一人绵薄之力。至于经常偷窃他人成果,亦于此略聊表心意。

记一次FFMPEG转avi视频保存到ftp服务器的失败尝试

记一次FFMPEG转avi视频保存到ftp服务器的失败尝试
项目中有一需求,将存储在硬盘上的h264码流转成Avi文件,并上传到FTP服务器。首先想到是用ffmpeg将h264转换成avi格式的文件,保存到本地磁盘,一切正常,很快完成了。 正当以为结束时,突然发现,需求方是要求保存到FTP服务器的,我一想,要将将转换好的视频放到内存中,再使用FTP客户端接口上传到服务器,这样做有点麻烦。于是上官网找了一下资料,发现FFMPEG支持FTP、HTTP、UDP、TCP、RTSP等等众多协议。...

记一次由PCI BAR配置不正确引发的硬盘IO调度io_schedule阻塞的经历

记一次由PCI BAR配置不正确引发的硬盘IO调度io_schedule阻塞的经历
五一前,接到一个bug,大意是说设备接固态硬盘时跑新内核会出现卡死导致WDT复位,使用旧内核没问题。新内核是去年年底别人编译的,旧内核是3年前现在已离职2年的人编译的,现在安排我解决这个问题。但其时正在进行其他部门的紧急测试任务,于是请求节后解决。我最近的计划是学习以太网驱动,而五一没什么计划就去看了,本来想研究SCSI的,但先等查问题后再说吧。 一、问题定位 从信息分析,内核启动后在打...

H3C三层交换机划分VLAN示例

H3C三层交换机划分VLAN示例

很久很久之前搞Linux端口转发时,借了一台三层交换机,我拿到手还没拆包装箱。不知道是不是因为工作上的这个原因而买的。不过后来实现的端口转发和三层交换机完全不搭边,就不了了之了。现在领导安排我查查广播风暴的事情,在同一网段里测试过了,就想在不同网段里试试,于是又借了这一台。这次是认真学习了一些配置命令,不过网上大把这类的资料,这里根据资料结合自己的实践,记录一下。