随笔分类 -  视频图像

[原]很多时候, 错误源于自己
摘要:很多时候, 错误源于自身, 因此当觉得什么地方不对了, 认为是别人的错误之前, 还是先在自己这里找找原因吧... 做了近一周的***(名字略去)集成, 单独用测试程序跑了许多遍, 也没见有多大问题, 心里还挺美的, 结果今天集成到业务版本里连上中间件和EPG, 一切台死机的概率比不死的还高. 想着既然测试程序基本不死, 死机应该与中间件的调用有关, 或是某处资源冲突或不足, 顺着这个思路抓了十几个... 阅读全文

posted @ 2009-07-25 00:07 techsunny 阅读(265) 评论(0) 推荐(0)

[原]音视频播放笔记
摘要:缓冲区管理 缓冲区管理在视频播放器中有重要作用。实时在线播放中,为了减小网络流量波动性的影响,使播放流畅,需要缓存一定的数据。缓冲区管理bug导致的丢包和重包可能会使播放器产生各种莫名其妙的错误。 缓冲区溢出 -- 视频服务器交错发送音、视频数据,一种缓冲区满(音频或视频)停止接收时会导致另一种数据亦无法接收,因此,如缓冲区大小设置不当,可能会产生一种缓冲区满而另一种缓冲区空的状况。满的缓冲区由于... 阅读全文

posted @ 2008-08-29 17:12 techsunny 阅读(427) 评论(0) 推荐(0)

[原]编程手记--2008.08.28
摘要:经过一天多的努力,疑神疑鬼了一大圈,终于稀里糊涂地找到播放速度变慢的原因了。。。先说一下发现的过程: 开始一直感觉是buf写入过快导致的,因为所有的证据都反映出当buf写入速度放慢时播放速度趋于正常,但又实在是想不出个所以然来。。。 由于不管buf写入快慢,写入前都要检测buf的WAVEHDR->dwFlags确定buf是否可写入。但。。。,反正就是怀疑到了检测正在播放中的buf的WAVEH... 阅读全文

posted @ 2008-08-28 15:49 techsunny 阅读(246) 评论(0) 推荐(0)

[原]编程手记--2008.08.26
摘要:很多时候,探索的结果仅仅是验证某些做法不可行。 播放器中有个步骤是将每帧YUV420的解码数据拷贝到一个输出缓冲区中,然后转换成RGB32、缩放、AlphaBlend、显示。为了优化性能,考虑将那个帧拷贝的步骤去掉,让解码器直接将解码图像写入输出缓冲。 ffmpeg的avcodec_decode_video()在解码时传入一个AVFrame的指针,解码数据存在AVFrame->data[]里。... 阅读全文

posted @ 2008-08-27 09:07 techsunny 阅读(899) 评论(1) 推荐(0)

[原]DirectDraw视频播放要点
摘要:[本文于2008.08.29更新,增加了实际验证部分] 最近在写一个用DirectDraw播放视频的程序,用DirectDraw的目的是要减小图像显示过程的CPU占用。在网上看了不少教程、例子,大都是介绍一下各个结构、变量的含义,基本用法。对于如何正确的应用、高效的显示方面的资料却较难找到。经过反复试验、揣摩,总结如下: 阅读全文

posted @ 2008-08-20 10:30 techsunny 阅读(1820) 评论(1) 推荐(1)

[原]fopen打开文件方式错误引发的bug
摘要:学习ffmpeg sdk编程,将解码后的帧写入yuv文件,观看写入的yuv文件发现,图像有正确的趋势,但总是有歪歪斜斜的问题。感觉有些不像解码方面的问题,有问题的话很可能彻底就解不出来了。怀疑是写文件时没写对,写文件的几行代码来来回回看了不知多少遍,再也找不出问题来。一直从早上奋斗到晚上,邻近下班时终于偶然地发现,fopen打开文件时的参数设成了"w",以文本方式打开的,代码是从网上拷来修改的,根... 阅读全文

posted @ 2008-04-11 18:13 techsunny 阅读(2616) 评论(0) 推荐(0)

[原]代码优化学习笔记
摘要:以下对程序性能优化的相关知识做了总结。应注意的是没有放之四海皆准的方法。 1.策略 1.1.最重要的原则:尽量少用代码优化 (1) 相对于精细的代码优化,程序架构、数据结构、算法和细节设计更重要。 (2) 不成熟的代码优化会危及程序的正确性、功能性和可维护性。 (3) 有时充满技巧的代码不利于编译程序做优化。 因此,优化前要先确定代码优化的必要性。 1.2.最关键的环节:剖析 (1) 8... 阅读全文

posted @ 2008-03-24 22:24 techsunny 阅读(477) 评论(0) 推荐(1)

[转]程序优化的三个级别
摘要:HouSisong@263.net 2004.11.07整理文章来源于abp论坛中的一篇帖子:http://bbs.allaboutprogram.com/viewtopic.php?t=1063(原文章写于2003.10.14晚)到了allaboutprogram后被人叫做"性能狂人",我也不知道为什么会有这个称号,其实我并不是一个偏激的人,相反我很随和,平易近人...(哈哈)。为了与新的身份大... 阅读全文

posted @ 2008-03-24 21:20 techsunny 阅读(337) 评论(0) 推荐(0)

导航