自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

心之所向,身之所往

专注于多媒体技术(H264、HEVC、流媒体、ffmpeg、DirectShow、DXVA、MediaFundation)

  • 博客(312)
  • 资源 (4)
  • 收藏
  • 关注

转载 nginx源码分析(1)- 缘起

nginx是一个开源的高性能web服务器系统,事件驱动的请求处理方式和极其苛刻的资源使用方式,使得nginx成为名副其实的高性能服务器。nginx的源码质量也相当高,作者“家酿”了许多代码,自造了不少轮子,诸如内存池、缓冲区、字符串、链表、红黑树等经典数据结构,事件驱动模型,http解析,各种子处理模块,甚至是自动编译脚本都是作者根据自己的理解写出来的,也正因为这样,才使得nginx比其他的web

2014-08-10 22:08:08 600

转载 Windows环境下进行Nginx安装和配置的介绍

Nginx 是一个轻量级的高性能 Http WebServer,以事件驱动方式编写,因此相比 Apache 而言,Nginx 更加稳定、性能更好,而且配置简单,资源占用较低。 1. 安装 Nginx 从 v0.7.52 开始,Nginx 开始发布 Windows 版本的 Nginx,你可以在其官方网站上面下载:http://nginx.net 下载后直接解压即可,这里解压缩到c:\

2014-08-10 16:56:31 1286

转载 IOCP编程小结(上)

目录(?)[+]http://www.cnblogs.com/Hybird3D/archive/2012/02/02/2335000.html前段时间接手了一个网络游戏前端连接服务器的开发工作,由于服务器需要在windows平台上部署,并且需要处理大量的客户端连接,因此采用IOCP来做为服务器端的编程模型就成了不二选择。虽然我对服务器开发并不陌生,但我一直以

2014-08-10 13:15:40 6193 1

转载 Nginx(二)通过SVN获得Nginx源码

下载SVN工具TortoiseSVN-1.7.6.22632-win32-svn-1.7.4.msihttp://tortoisesvn.net/downloads.html安装完成后,右击键中选择Repo-browser 在URL中输入 svn://svn.nginx.org/nginx/trunk 接下来把代码Export下来了.

2014-08-10 11:37:30 810

转载 从头到尾彻底解析Hash 表算法

作者:July、wuliming、pkuoliver  出处:http://blog.csdn.net/v_JULY_v。  说明:本文分为三部分内容,    第一部分为一道百度面试题Top K算法的详解;第二部分为关于Hash表算法的详细阐述;第三部分为打造一个最快的Hash表算法。------------------------------------ 第一部分

2014-08-10 11:01:55 616

转载 教你透彻了解红黑树

转载自:http://blog.csdn.net/v_JULY_v/article/details/6105630教你透彻了解红黑树 作者:July、saturnman   2010年12月29日本文参考:Google、算法导论、STL源码剖析、计算机程序设计艺术。本人声明:个人原创,转载请注明出处。推荐阅读:Left-Leaning Red-Black Trees

2014-08-10 10:58:32 634

原创 CSDN积分排名记录

1、2014年8月7日       积分:1168         排名:13264

2014-08-07 23:41:02 699

原创 vs2010编译live555源码

1.下载live555源码,下载地址:http://www.live555.com/liveMedia/public/live555-latest.tar.gz1、live55简介Live555 是一个为流媒体提供解决方案的跨平台的C++开源项目,它实现了对标准流媒体传输协议如RTP/RTCP、RTSP、SIP等的支持。Live555实现了对多种音视频编码格式的音视频数据的流化、接收和处理

2014-08-03 21:55:42 1051

转载 live555—VS2010 下live555编译、使用及测试

Ⅰ live555简介  Live555 是一个为流媒体提供解决方案的跨平台的C++开源项目,它实现了对标准流媒体传输协议如RTP/RTCP、RTSP、SIP等的支持。Live555实现了对多种音视频编码格式的音视频数据的流化、接收和处理等支持,包括MPEG、H.263+、DV、JPEG视频和多种音频编码。同时由于良好的设计,Live555非常容易扩展对其他格式的支持。目前,Live555已经

2014-07-20 23:16:02 857

转载 X264编码

前面讲到了关于NAL打包成RTP后进行发送,那么这些NAL应该怎么得到呢?当然如果有现成的H264数据就可以直接用了,但是一般我们的摄像头采集的数据都不是H264格式的,那就需要编码。而且在我们这个项目中是需要进行图像算法处理的,在这些opencv中用到的图基本上都是BGR格式的Mat图,所以处理完后的图像需要重新进行X264编码,生成一个个的NAL后打包成RTP发送出去,这样就会在实现高清的同时

2014-07-20 20:45:38 11937 4

转载 rtp h264注意点(FU-A分包方式说明)

之前写过一篇文章,分析了h264使用rtp进行封包的格式介绍:RTP封装h264。但里面好像没有把拆分以及一些需要注意的情况说清楚,因此这里做补充,也作为自己的备忘(自己记性好像不太好)。关于时间戳,需要注意的是h264的采样率为90000HZ,因此时间戳的单位为1(秒)/90000,因此如果当前视频帧率为25fps,那时间戳间隔或者说增量应该为3600,如果帧率为30fps,则增量为

2014-07-20 20:18:18 2251 2

转载 android 多媒体封装格式详解---MKV

anMatroska 开源多媒体容器标准。MKV属于其中的一部分。Matroska常见的有.MKV视频格式、MKA音频格式、.MKS字幕格式、.MK3D files (stereoscopic/3D video).1.EBML(Extensible Binary Meta Language)MKV是建立在EBML这种语言的基础上,所以要了解MKV格式需要先了解EBML这

2014-07-20 16:45:19 4644 1

原创 H264码流结构分析

1、码流总体结构:h264的功能分为两层,视频编码层(VCL)和网络提取层(NAL)。H.264 的编码视频序列包括一系列的NAL 单元,每个NAL 单元包含一个RBSP。一个原始的H.264 NALU 单元常由 [StartCode] [NALU Header] [NALU Payload] 三部分组成,其中 Start Code 用于标示这是一个NALU 单元的开始,必须是"00 00 0

2014-07-20 11:57:18 60148 5

原创 JRTPLIB注意事项

JRTPLIB 是一个高度封装后的RTP库,程序员在使用它时很多时候并不用关心RTCP数据报是如何被发送和接收的,因为这些都可以由 JRTPLIB自己来完成。只要PollData()或者SendPacket()方法被成功调用,JRTPLIB就能够自动对到达的RTCP数据报进行处理,并且还会在需要的时候发送RTCP数据报,从而能够确保整个RTP会话过程的正确性。      而另一方面,通过调

2014-07-20 00:43:25 1318 1

转载 3GP文件格式分析

现在很多智能手机都支持多媒体功能,特别是音频和视频播放功能,而3GP文件格式是手机端普遍支持的视频文件格式。 目前很多手机都支持h263视频编码格式的视频文件播放,还有些手机支持h264。音频文件格式普遍支持amr,有些手机还支持AAC音频格式。 鉴于凤凰卫视节目主要以新闻类为主,音频压缩采用AMR标准,视频压缩采用H263和H264标准。 编号

2014-07-18 23:58:02 813

转载 FLVParse工具使用说明

上一篇博文“FLV文件格式解析”提到的小工具FLVParse,是由于工作需要,我自己写的一个小程序。这个工具的主要功能是查看FLV的文件结构,帮助我们理解FLV格式。另外,如果涉及到处理FLV文件的开发,这个工具对于查看处理结果非常有帮助。因此我觉得有必要写一个使用说明,希望这个工具能够给大家提供帮助。       打开后的界面如下图所示。    先说一下界面布

2014-07-18 23:55:09 3086

原创 剑指offer

http://zhedahht.blog.163.com/

2014-07-17 22:17:19 647

转载 实现RTP协议的H.264视频传输系统

1.  引言       随着信息产业的发展,人们对信息资源的要求已经逐渐由文字和图片过渡到音频和视频,并越来越强调获取资源的实时性和互动性。但人们又面临着另外一种不可避免的尴尬,就是在网络上看到生动清晰的媒体演示的同时,不得不为等待传输文件而花费大量时间。为了解决这个矛盾,一种新的媒体技术应运而生,这就是流媒体技术。流媒体由于具有启动时延小、节省客户端存储空间等优势,逐渐成为人们的首选,

2014-07-16 23:09:50 1044

原创 Ngnix学习

http://blog.csdn.net/column/details/nginxroad.html

2014-07-13 23:48:18 583

转载 jrtplib—VS2010下RTP开源协议库JRTPLIB3.9.1编译

jrtplib—VS2010下RTP开源协议库JRTPLIB3.9.1编译SkySeraph Apr 7th 2012Email:skyseraph00@163.com 一、JRTPLIB简介  老外用C++编写的开源RTP协议库,用来进行实时数据传输,可以运行在 Windows、Linux、 FreeBSD、Solaris、Unix和VxWorks 等

2014-07-13 16:31:04 773

转载 CMake使用教程

CMake使用教程CMake是一个比make更高级的编译配置工具,它可以根据不同平台、不同的编译器,生成相应的Makefile或者vcproj项目。通过编写CMakeLists.txt,可以控制生成的Makefile,从而控制编译过程。CMake自动生成的Makefile不仅可以通过make命令构建项目生成目标文件,还支持安装(make install)、测试安装的程序是否能正确执

2014-07-13 15:33:54 6470

原创 流媒体各种环境搭建方法

http://blog.csdn.net/funkri/article/category/1314184

2014-07-13 09:33:19 2175

转载 如何用nginx+ffmpeg实现苹果HLS协议

今年用三个月时间做了一个支持HLS的视频服务,用了三个月时间,对于一个视频处理的门外汉来说,是一个相当痛苦和漫长的过程,因此想抽时间将开发过程重新梳理一边,顺边形成一个不多篇幅但是足够细致的回顾和说明文档。当前只是一个草稿,不做任何整理,所以不会强调文章的连贯和呼应关系。大致叙述的内容包括:HLS协议的理解nginx ffmpeg的编译 安装

2014-07-13 09:23:50 1190

转载 自己动手写RTP服务器——传输所有格式的视频

自己动手写RTP服务器——传输所有格式的视频上一篇文章我们介绍了如何用一个简单的UDP socket搭建一个RTP服务器。我把这份80行的代码呈现到客户面前的时候,就有人不满意了。还有人在参考的时候会问:“楼主你的TS格式的文件是哪里来的?应该去哪里下载?”“这也太简单了吧,不就是用UDP把TS文件发过去么?就这么几十行代码也算个大作业?”“平时看的视频格式哪有TS的呀,不是avi

2014-07-12 23:29:03 1051

转载 各种常规排序算法总结

1.插入排序        基本思想是:每次将一个待排序的记录,按其关键字大小插入到前面已经排好序的子表中的适当位置,直到全部记录插入完成为止。常规插入排序分两种,即直接插入排序和希尔排序。1.1直接插入排序        假设待排序的记录放在数组R[0...n-1]中,排序过程的某一中间时刻,R被划分成两个子区间R[0..i-1]和R[i..n-1

2014-07-12 14:57:49 845

转载 各种音视频编解码学习详解 h264 ,mpeg4 ,aac 等所有音视频格式

各种音视频编解码学习详解 h264 ,mpeg4 ,aac 等所有音视频格式分编解码学习笔记(一):基本概念媒体业务是网络的主要业务之间。尤其移动互联网业务的兴起,在运营商和应用开发商中,媒体业务份量极重,其中媒体的编解码服务涉及需求分析、应用开发、释放license收费等等。最近因为项目的关系,需要理清媒体的codec,比较搞的是,在豆丁网上看运营商的规范 标

2014-07-12 09:25:08 2314

转载 3GP文件格式分析

3GP文件格式分析2007-12-29 17:31 10169人阅读 评论(18) 收藏 举报referencematrixheaderstring手机encoding 1.      概述现在很多智能手机都支持多媒体功能,特别是音频和视频播放功能,而3GP文件格式是手机端普遍支持的视频文件格式。 目前很多手机都支持h263视频编码格式的视频文件播放

2014-07-12 09:22:42 926

转载 数据结构与算法面试题80道

数据结构与算法面试题80道分类: 算法与数据结构2011-12-14 15:11 5469人阅读 评论(1) 收藏 举报面试算法数据结构structgoogle微软转自:http://hi.baidu.com/geogre_jsj/blog/item/e4b98fd2aab5aa3611df9b92.html由于这些题,实在太火了。所以,应广

2014-07-10 23:26:50 1360

转载 AAC ADTS格式分析

AAC ADTS格式分析ADTS全称是(Audio Data Transport Stream),是AAC的一种十分常见的传输格式。记得第一次做demux的时候,把AAC音频的ES流从FLV封装格式中抽出来送给硬件解码器时,不能播;保存到本地用pc的播放器播时,我靠也不能播。当时崩溃了,后来通过查找资料才知道。一般的AAC解码器都需要把AAC的ES流打包成ADTS的格式,一

2014-07-05 23:23:18 660

转载 视频编码格式详解

在高清视频编码格式方面,我们可以经常会见到以下这几个命名:MPEG-2 TS、Divx、Xvid、H.264、WMV-HD和VC-1。目前发展过程中,MPEG-2、H.264、VC-1是其中最为关注的。由于在高清视频格式后来发展过程中,由于两家公司,东芝与sony的竞争中,就是HD-DVD与蓝光的较量中,虽然最后HD-DVD退出了竞争,以蓝光的胜利结束,但是他们都选择支持这三种编码格式,也说明

2014-07-05 21:19:58 6291

转载 Linux网络编程 五种I/O 模式及select、epoll方法的理解

近期一次面试机会让我觉得有很多地方理解可能不到位,翻翻谷歌的资料加深对一些技术的理解五种I/O 模式:【1】 阻塞 I/O (Linux下的I/O操作默认是阻塞I/O,即open和socket创建的I/O都是阻塞I/O)【2】 非阻塞 I/O (可以通过fcntl或者open时使用O_NONBLOCK参数,将fd设置为非阻塞的I/O)【3】 I/O 多路复用 (I/O多路复用,

2014-06-29 20:48:42 2724

转载 【重要】Linux I/O模型

socket阻塞与非阻塞,同步与异步、I/O模型分类: c/c++ socket网络编程2012-04-12 16:35 32926人阅读 评论(22) 收藏 举报socketsocketswindowsapi服务器目录(?)[+]socket阻塞与非阻塞,同步与异步作者:huangguisu1. 概念理解

2014-06-29 15:10:37 2107

转载 编写高效的C++程序方法之使用对象池

对象池技术可以避免在程序的生命期中创建和删除大量对象。如果知道程序需要同一类型的大量对象,而且对象的生命周期都很短,就可以为这些对象创建一个池(pool)进行缓存。只要代码中需要一个对象,就可以向对象池请求.用完此对象时,要把它放回池中。对象池只创建一次对象,因此它们的构造函数只调用一次,而不是每次使用时都调用。因此,当构造函数要完成一些设置动作,而且这些设置可以应用与该对象的多次使用时,对象池就

2014-06-22 22:17:43 681

转载 高性能服务器底层网络通信模块的设计方法

高性能服务器底层网络通信模块的设计方法在对I/O完成端口进行底层封装的基础上,本文提出一种具有高性能的、可扩展性的通用网络通信模块设计方案。该方案采用多种系统性能优化技术,如线程池、对象池和环形缓存区等。该模块在Win32平台上用c++开发完成,经过严格的压力和性能测试后,实验结果表明该模块能够支持海量并发连接,具有较高的数据吞吐量,在实际项目应用中也取得了良好的表现。  

2014-06-22 22:15:51 1453

原创 进程间通信 —— 命名管道(实例)

1、最简单的例子:

2014-06-22 11:01:28 5784

转载 完成端口(CompletionPort)详解 - 手把手教你玩转网络编程系列之三

[置顶] 完成端口(CompletionPort)详解 - 手把手教你玩转网络编程系列之三分类: VC网络编程基础2011-11-01 08:17 78679人阅读 评论(375) 收藏 举报网络编程socketnull服务器windows    手把手叫你玩转网络编程系列之三   完成端口(Completion Port)详解             

2014-06-21 22:26:12 1431 1

原创 服务编程——给一个服务发控制码

1、OpenSCManager2、OpenService3、Con

2014-06-18 22:13:08 586

转载 进程间通信 —— 命名管道

要点:1、引子好,到这里呢,就需要介绍实现进程间通信的第四种方式了,也就是通过命名管道来实现,前面介绍的那三种方式呢,都是有缺陷或者说局限性太强,而这里介绍的命名管道相对来说,在这方面就做得好很多了,比如,剪贴板的话只能实现本机上进程之间的通信,而邮槽的话虽然是可以实现跨网络之间的进程的通信,但麻烦的是邮槽的服务端只能接收数据,邮槽的客户端只

2014-06-15 22:51:51 1279

转载 进程间通信——匿名管道

要点:1、进程间通信 - 匿名管道实现引子前面的两篇博文分别介绍了通过剪贴板和通过邮槽来实现进程之间的通信,其中剪贴板呢,是用来实现本地两个进程之间的通信,而邮槽则既可以实现本地两个进程之间的通信,也可以实现本地进程和服务器进程的通信,当然,上面这两种方式都是有局限性的,比如剪贴板就只能实现本地进程之间的通信,而在邮槽中,虽然是既可以实现

2014-06-15 22:42:43 609

转载 进程间通信 - 邮槽实现

要点:1、引子前面的一篇博文介绍了进程之间通信的一种最为简单的方式,也就是在本地进程之间通过剪贴板来实现进程间通信,而剪贴板自有其缺陷,很显然的是,剪贴板只能在本地机器上实现,无法实现本地进程与远程服务器上的进程之间的通信,那么有没有办法实现本地进程和远程进程的通信呢?办法自然是有的,要是实在搞不出,我拿 Socket 来

2014-06-15 22:27:59 928

H264码流NALU分析

H264码流,NALU结构分析,可以进行二进制分析

2014-07-20

计算机专业各大公司面试题

计算机专业各大公司笔试、面试题,包括百度、腾讯、华为、中心、微软、迅雷、搜狐、网易、盛大等。

2011-04-19

腾讯面试算法,体验设计高效算法重要性

腾讯面试算法,体验设计高效算法重要性,当数据量很大时,效果更为明显,有图!

2011-04-19

纯正美语发音100个秘籍

纯正美语发音100个秘籍,介绍美语发音特点,如何发说纯正口语。呵呵!

2010-06-22

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

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