自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

天涯角落的专栏

所谓危机,本质就是危险和机遇伴生

  • 博客(79)
  • 资源 (2)

原创 NGINX原子操作

nginx实现了一个跨平台的原子操作接口。它分别实现了LIBATOMIC,DARWIN_ATOMIC,GCC_ATOMIC等原子操作。LIBATOMIC是一套平台无关原子操作库。DARWIN_ATOMIC苹果平台原子操作库。GCC_ATOMIC GCC内置的原子操作接口。如果实现了上述任意一种原子操作接口,则定义:#define NGX_HAVE_ATOMIC_

2012-03-23 18:15:07 2474

原创 CURL多线程处理需要注意问题

最近用到CURL,在开启多个线程同时下载,并且又设置了timeout的时候,程序随机报如下段错误。(gdb) bt#0  0x00002ac0a97a2ec2 in ?? () from /usr/lib64/libcurl.so.3#1  0x00002ac0a97a37dd in ?? () from /usr/lib64/libcurl.so.3#2  0x00002ac0a

2012-03-18 10:53:15 6049 1

原创 nginx HTTP发送数据过程

1. epoll write事件, 执行写数据处理。2. wev->handler回调函数进入:3. 执行写数据回调函数4. 进入写数据回调函数体内5. 真正发送数据的函数

2012-03-07 12:04:03 1119

原创 nginx事件处理过程

1. 首先设置断点:ngx_epoll_process_events at src/event/modules/ngx_epoll_module.c:5752. 请求http://ip3. nginx接收的客户端的请求,进行accept事件处理,调用堆栈如下图。4. accept处理完毕后,进行http的请求处理,如下图:5. 上一步处理完毕后,执行到如

2012-03-06 10:22:06 701

原创 nginx配置文件解析

以启动过程中设置worker_processes的值为例,分析nginx加载配置的过程,代码版本1.1.15。1. 首先创建所有模块配置的上下文,代码调用栈如下:ngx_init_cycle (old_cycle=0xbffff5b0) at src/core/ngx_cycle.c:223调用对应模块的create_conf指针函数创建默认的配置项。由于worker_proc

2012-03-05 18:50:34 721

原创 OMA DRM代理安全性思考

在思考这个问题之前,我们先考虑一下DRM代理的功能是什么?两点:1. 保护数据的安全。2. 执行保护数据安全的算法和流程。这两点可以看出,DRM代理实际是版权管理的规则实现者和执行者,任何想破解数字版权的黑客都要获得DRM的控制权。        怎奈DRM代理运行的环境土壤是不安全的,这给黑客提供了很多的便利。所以要保护DRM代理的安全性,应该从如下几个方面来考虑:

2012-03-01 09:46:47 922 1

转载 PKI体系及常见证书

http://blog.chinaunix.net/space.php?uid=23637692&do=blog&id=30579881.PKI体系 1.1 PKI(Public Key Infrastructure,公钥基础架构)PKI是一套以公钥技术为基础、提供安全服务的架构, 由认证机构(CA), 数字证书库, 密钥备份和恢复, 证书作废系统, 应用接口等组成。CA是PK

2012-02-21 17:38:03 1173

转载 一致性哈希算法(Consistent Hashing)

应用场景这里我先描述一个极其简单的业务场景:用4台Cache服务器缓存所有Object。那么我将如何把一个Object映射至对应的Cache服务器呢?最简单的方法设置缓存规则:object.hashCode() % 4。Cache 0:object.hashCode() % 4 == 0Cache 1:object.hashCode() % 4

2012-02-19 21:02:54 706

原创 ROAP协议流程

ROAP协议基于PKI的,流程如下:1.客户端和版权发行者采用ROAP协议进行相互验证,双方都获得了对方的公钥数字证书。2.版权发行者发送版权对象(RO)之前,做如下处理:  采用客户端的公钥对关键数据进行加密;  采用HASH算法,对报文完整性进行鉴别;  采用自己的私钥对报文进行签名。3.DRM Agent接收到版权对象(RO),做如下处理:  采用版权发行者的公钥

2012-02-17 12:17:15 3233

原创 编译Darwin Stream Server6.0.3

wget http://static.macosforge.org/dss/downloads/DarwinStreamingSrvr6.0.3-Source.tarwget http://dss.macosforge.org/trac/raw-attachment/ticket/6/dss-6.0.3.patchwget http://dss.macosforge.org/trac/ra

2012-02-09 17:49:13 1519

转载 Darwin Streaming Server 6.0.3 Introduction

原文链接:http://www.codeproject.com/Articles/41874/Darwin-Streaming-Server-6-0-3-setup-customizationIntroductionDarwin Streaming Server is Apple's open source streaming server for

2012-02-06 21:21:37 2357

原创 ffmpeg打包TS代码分析

最近在研究利用ffmpeg的源码打包TS的问题,将研究的过程记录下来备忘。1. 先测试以下ffmpeg的录制屏幕的功能  ffmpeg -f x11grab -y -r 24 -s 800x600 -i :0.0+100,100 -vcodec mpeg2video -f mpegts  ./output.ts  ffmpeg -f alsa -i hw:0 -f x11grab -y

2011-12-19 17:37:56 4344

原创 vim标签功能

最近在看代码,由于代码比较庞大,经常由于目录树跟踪的太深,不能快速回到指定位置,于是研究了一下vim的bookmark功能,记录如下:书签 (Mark)书签是vim中非常强大的一个功能,书签分为文件书签跟全局书签。文件书签是你标记文件中的不同位置,然后可以

2011-10-08 16:18:53 5225

原创 EABI和OABI

1。什么是ABIABI,application binary interface (ABI),应用程序二进制接口。既然是 接口,那就是某两种东西之间的沟通桥梁,此处有这些种情况:A. 应用程序  操作系统;B. 应用程序 (应用程序所用到的)库类似于AP

2011-09-02 11:16:42 540

原创 宏定义中#和##

#define A(x) T_##x  #define B(x) #@x  #define C(x) #x    我们假设:x为1,则有:    A(1) ---> T_1  B(1) ---> '1'  C(1) ---> "1"

2011-08-22 22:17:52 373

原创 嵌入式开发交叉调试环境搭建

1. wget http://ftp.gnu.org/gnu/gdb/gdb-7.3.tar.bz22. tar -xvf tar -xvf gdb-7.3.tar.bz23. 接下来分2步,第一步编译编译gdb,这个不是宿主机上那个gdb,必须用如下方式编译:# .

2011-08-20 14:37:52 556

原创 数码相机里的光学变焦和数字变焦的区别

【光学变焦要点】光学变焦倍数越大,能拍摄的景物就越远。 一些镜头越长的数码相机,内部的镜片和感光器移动空间更大,所以变焦倍数也更大。我们看到市面上的一些超薄型数码相机,一般没有光学变焦功能,因为其机身内根部不允许感光器件的移动,而像索尼F828、富士S7000这些

2011-08-20 12:00:30 811

转载 ctags使用详解

一.         ctags 是干什么的ctags 的功能:扫描指定的源文件,找出其中所包含的语法元素,并将找到的相关内容记录下来。我用的是 Exuberant Ctags ,在 Windows 上使用,就一个可执行文件,非常绿色,可在 sourceforge

2011-08-13 18:40:33 610

原创 中国内地城市CA分布

地市: 运营商名称: CA厂商:天津: 天津广播电视网络有限公司: CONAX、NDS重庆: 重庆有线电视网络有限公司: NDS/永新同方/DTVIA河北: 河北省广播电视信息网络股份有限公司: Nagra/Conax石家庄: 河北省广播电视信息网络股份有限公

2011-08-07 10:17:45 18445 4

转载 转篇文章:项目经理和部门经理的区别

管理的认识和理念管理,它是一种什么东西?是一种工具吗,还是一种方法,还是一种思维?如果认为管理只不过是一种工具,那么你的脑袋里就充满了两个字,叫作业。作业就是一套的技术、一套的模式,只要按着去做就是了。如果认为是一种方法,那么基本上是进入了管理的层次,但是如果再提升一点的

2011-08-07 10:15:31 869

转载 转篇CSDN的文章-职场随笔-走好那段路

回望走过的这半年,沟沟坎坎遇到过很多问题,历经各种挫折与困难,终于算告一段落。在这样短暂的时光中,我们郁闷过、痛苦过,也高兴过,几个月的沟沟坎坎,风风雨雨一起蹚过。我怀念这段时光,我享受这风雨中的美丽。几点总结,留此为念:1.路是“蹚”出来的。也许你走过荆棘草丛,走过

2011-08-07 10:12:35 731

原创 wav文件格式分析详解和解析代码

wav文件格式分析详解和解析代码

2011-08-05 18:26:03 1288

原创 #pragma pack 用法详解

1. #pragma pack(show)以警告信息的形式显示当前字节对齐的值.2. #pragma pack(n)将当前字节对齐值设为 n .3. #pragma pack()将当前字节对齐值设为默认值(通常是8) .4. #pragma pack(pu

2011-08-05 17:54:07 1851 1

原创 Fedora14配置NFS服务

Fedora14配置NFS服务

2011-08-04 11:30:24 1062

原创 Gstreamer 调度模式

翻译自part-scheduling.txt

2011-07-21 15:27:32 862

原创 ISTV中基于HTTP的VOD缺陷分析和优化

1. 流媒体应用项目的介绍    目前应用到ISTV项目的流媒体技术主要有RTSP和HTTP,目前绝大部分项目都是基于HTTP来做在线点播的,只有黄龙项目的在线点播是基于RTSP的,RTSP源来自于华数。2. HTTP应用流媒体分析    严格意义上,基于HTTP的VOD不算是真

2011-07-18 17:37:41 1737

原创 关于CAM卡(大卡)和智能卡(小卡)

最近有同事在问关于大卡的问题,我整理了一下他的问题。1. 什么是大卡,什么是小卡?    大卡就是CAM卡,是基于PCMCIA接口(笔记本扩展接口),小卡就是智能卡。至于大小之分,可能根据体积大小大家都这么习惯称呼了。2. 关于深圳国威的CAM卡介绍见国威的官网:http://w

2011-07-18 17:36:24 9700

原创 Gstreamer part-progress.txt翻译

进度报告------------------        这篇文章描述了进度报告消息的设计和使用场景。        进度消息被post到总线(BUS)上,用来通知应用程序针对PIPELINE进行的异步操作的进度,不应该与异步状态状态改变混同。    应该满足如下条件:

2011-07-18 17:31:55 1025 1

原创 Gstreamer 预滚(Preroll)

预滚 翻译自part-preroll.txt预滚(Preroll)-----------------    一个sink元素只有当有一个buffer被缓冲到sink pad里面时,才能够完成到PAUSED状态的改变,这个过程就被称为预滚(Preroll),这样做是为了能够尽快的进

2011-07-18 17:31:16 2512

原创 Gstreamer Segments

Segments 翻译自part-segments.txtSegments----------------------    一个segment是指媒体流的一部分,一个segment有一个开始时间(start),一个停止时间(stop)和一个处理速率。    一个媒体流有一个起始

2011-07-18 17:30:38 1168

原创 Gstreamer流

Gstreamer流 翻译自part-streams.txtStreams----------------------    这篇文档描述在流线程中从一个元素传递到另一个元素的对象。Stream objects ~~~~~~~~~~~~~~    如下的对象可能会出现在流线程中。

2011-07-18 17:30:05 881

原创 Gstreamer GstPipeline管道

GstPipeline管道 翻译自part-gstpipeline.txtGstPipeline------------------------------    GstPipeline是一个顶级的bin,给所有的子元素提供时钟。    GstPipeline也提供一个顶级的Gs

2011-07-18 17:29:47 2557

原创 Gstreamer时钟

时钟 翻译自part-clocks.txtClocks-----------    GstClock用_get_time()返回单调递增的时间,它的精度和base time取决于时钟实现,但总是以纳秒为单位。既然时钟的基线没有被定义,时钟返回的值本身毫无意义,只有两个时钟之间的差

2011-07-18 17:29:22 1418

原创 Gstreamer PUSH和PULL模式

gstreamer PUSH和PULL模式,翻译自part-push-pull.txtPUSH-PULL--------------    通畅情况下,一个source element用gst_pad_push()方法推送(push)数据到下游的element。下游对应的pad(

2011-07-18 17:28:55 2723

原创 Gstreamer多路流同步

Gstreamer多路流同步(翻译自part-synchronisation.txt)    该篇文档描述了gstreamer多路流的同步技术的概要。    GstPipeline的同步用如下的3个组件完成:    1)GstClock,在GstPipeline中对所有元素来说是

2011-07-18 17:28:33 2432

原创 Gstreamer的PAD激活机制

Gstreamer的PAD激活机制(翻译自part-activation.txt)激活    当状态改变时,PIPELINE将按照从sink->source的顺序设置它的元素的状态。当元素从READY -> PAUSED状态转变时,它们的PAD将被激活来准备处理数据流,一些PAD

2011-07-18 17:28:00 2585

原创 Gstreamer资源

一个简单的播放ts流的demo程序。Fluendo公司提供的gstreamer的插件下载地址http://core.fluendo.com/gstreamer/src/老外怎么那么牛呢,整理得这么好,一些和gstreamer相关的网站http://www.oz9aec.net/i

2011-07-18 17:13:07 1166

原创 Gstreamer分析

1. linux下开源播放器    目前linux下比较出名的播放器有mplayer,vlc,xine,gstreamer,其中mplayer和vlc是两个完整的播放器,xine和gstreamer同为播放器后端,但gstreamer更加灵活。2. gstreamer的优势

2011-07-18 17:09:18 4051

原创 MPlayer视频输出框架分析

最近要在离子二代平台上移植数字电视播放器,采用NVIDIA的VDPAU硬解码,视频输出采用VDPAU,由于VDPAU不光有视频硬解码功能,还有HW Scale的功能,所以可以基于VDPAU做浮动OSD层(频道列表)。源于这个,最近仔细地分析了一下MPlayer的视频输出框架,着重

2011-07-18 17:02:38 2697

原创 编译可单步跟踪调试的mplayer

<br />1. 准备两份mplayer,一份为$MPLAYER-WORK,一份为$MPLAYER- BAK;<br /> <br />2. 执行$MPLAYER-BAK/configure;<br /> <br />3. vim $MPLAYER-WORK/configure,去掉里面所有的优化选项,-O2 -O3 -O4;<br /> <br />4. $MPLAYER-WORK/configure --enable-debug;<br /> <br />5. cp -f $MPLAYER-BAK/co

2010-12-07 10:56:00 1659 1

Wav(PCM)文件解析代码

解析Wav(PCM)文件,提取Wav文件的头部信息

2011-08-08

DVB标准深入分析和实际应用.pdf

DVB标准深入分析和实际应用:关于PSI表的介绍, 分析比较透彻。

2009-05-07

空空如也

空空如也
提示
确定要删除当前文章?
取消 删除