自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

BSPLover的专栏

专注流媒体编解码与网络通讯

  • 博客(11)
  • 资源 (26)
  • 收藏
  • 关注

转载 From C++ to Objective-C

点击打开链接

2012-11-16 18:07:18 701

转载 iOS并发编程指南

点击打开链接

2012-11-16 17:54:47 657

转载 KVO/KVC 实现机理分析

转帖请注明转之 苹果开发中文网(http://www.cocoadev.cn/Objective-C/KVO-20100222-0627.asp) 以上说明是本文不可分割的一部分。 Objective-C里面的Key-Value Observing (KVO)机制,非常不错,可以很好的减少浇水代码。关于KVO的学习,可以参考文章:《Key-Value Observing快速入门》:http

2012-11-15 16:47:45 612

转载 各种排序方法总结

冒泡法:   这是最原始,也是众所周知的最慢的算法了。他的名字的由来因为它的工作看来象是冒泡:  复杂度为O(n*n)。当数据为正序,将不会有交换。复杂度为O(0)。 直接插入排序:O(n*n) 选择排序:O(n*n) 快速排序:平均时间复杂度log2(n)*n,所有内部排序方法中最高好的,大多数情况下总是最好的。 归并排序:log2(n)*n 堆排序:log2(n

2012-11-13 12:08:38 827

转载 白话经典算法系列之七 堆与堆排序

堆排序与快速排序,归并排序一样都是时间复杂度为O(N*logN)的几种常见排序方法。学习堆排序前,先讲解下什么是数据结构中的二叉堆。 二叉堆的定义 二叉堆是完全二叉树或者是近似完全二叉树。 二叉堆满足二个特性: 1.父结点的键值总是大于或等于(小于或等于)任何一个子节点的键值。 2.每个结点的左子树和右子树都是一个二叉堆(都是最大堆或最小堆)。 当父结点的键值总是大于或等于任何一个子节

2012-11-13 11:04:17 737

转载 白话经典算法系列之六 快速排序 快速搞定

快速排序由于排序效率在同为O(N*logN)的几种排序方法中效率较高,因此经常被采用,再加上快速排序思想----分治法也确实实用,因此很多软件公司的笔试面试,包括像腾讯,微软等知名IT公司都喜欢考这个,还有大大小的程序方面的考试如软考,考研中也常常出现快速排序的身影。 总的说来,要直接默写出快速排序还是有一定难度的,因为本人就自己的理解对快速排序作了下白话解释,希望对大家理解有帮助,达到快速排序

2012-11-13 11:03:26 574

转载 白话经典算法系列之五 归并排序的实现

归并排序是建立在归并操作上的一种有效的排序算法。该算法是采用分治法(Divide and Conquer)的一个非常典型的应用。 首先考虑下如何将将二个有序数列合并。这个非常简单,只要从比较二个数列的第一个数,谁小就先取谁,取了后就在对应数列中删除这个数。然后再进行比较,如果有数列为空,那直接将另一个数列的数据依次取出即可。 //将有序数组a[]和b[]合并到c[]中 void Meme

2012-11-13 11:02:03 696

转载 白话经典算法系列之四 直接选择排序及交换二个数据的正确实现

直接选择排序和直接插入排序类似,都将数据分为有序区和无序区,所不同的是直接播放排序是将无序区的第一个元素直接插入到有序区以形成一个更大的有序区,而直接选择排序是从无序区选一个最小的元素直接放到有序区的最后。 设数组为a[0…n-1]。 1.   初始时,数组全为无序区为a[0..n-1]。令i=0 2.   在无序区a[i…n-1]中选取一个最小的元素,将其与a[i]交换。交换之后a[0…i

2012-11-13 11:01:14 633

转载 白话经典算法系列之三 希尔排序的实现

希尔排序的实质就是分组插入排序,该方法又称缩小增量排序,因DL.Shell于1959年提出而得名。 该方法的基本思想是:先将整个待排元素序列分割成若干个子序列(由相隔某个“增量”的元素组成的)分别进行直接插入排序,然后依次缩减增量再进行排序,待整个序列中的元素基本有序(增量足够小)时,再对全体元素进行一次直接插入排序。因为直接插入排序在元素基本有序的情况下(接近最好情况),效率是很高的,因此希尔

2012-11-13 11:00:37 828

转载 白话经典算法系列之二 直接插入排序的三种实现

直接插入排序(Insertion Sort)的基本思想是:每次将一个待排序的记录,按其关键字大小插入到前面已经排好序的子序列中的适当位置,直到全部记录插入完成为止。   设数组为a[0…n-1]。 1.      初始时,a[0]自成1个有序区,无序区为a[1..n-1]。令i=1 2.      将a[i]并入当前的有序区a[0…i-1]中形成a[0…i]的有序区间。 3.

2012-11-13 11:00:00 701

转载 白话经典算法系列之一 冒泡排序的三种实现

冒泡排序是非常容易理解和实现,以从小到大排序举例: 设数组长度为N。 1.比较相邻的前后二个数据,如果前面数据大于后面的数据,就将二个数据交换。 2.这样对数组的第0个数据到N-1个数据进行一次遍历后,最大的一个数据就“沉”到数组第N-1个位置。 3.N=N-1,如果N不为0就重复前面二步,否则排序完成。   按照定义很容易写出代码: //冒泡排序1 void BubbleSo

2012-11-13 10:59:07 693

Charles3.8.3 For Mac 破解版

这个工具是Mac 系统下的HttpWatch, 能够对网页的交互数据进行查看以了解网络交互过程. 资源不好找啊. 使用很简单的

2014-06-05

H.264句法和语法总结

H.264句法和语法总结。

2012-04-20

H.264码流结构.pdf

H.264码流结构

2012-02-28

myseelite源码(完整的三个版本)

myseelite共计三个版本源码,包括v1.0 v2.0 v2.1,比较难找,希望对做P2P流媒体研究的各位有所帮助!

2012-02-21

VC++ 利用CANNY 算子实现边缘检测

在VC++平台中 CANNY算子实现了图像的边缘检测 经调试 程序准确无误

2012-02-02

scite源代码 带scintilla

scite 源代码 带scintilla

2012-02-02

H264流媒体源代码和相关资料.rar

本示例代码在我的电脑上实现了对标准H264码流的RTP打包发送到本机的1234端口,用VLC播放器从1234端口能接收到该码流并实时播放。代码附有详细的注释,应该很容易理解(前提是大家稍微对RFC3550 RFC3984协议有了解)。使用方法:直接在VC6上打开工程,编译。(需要注意的是大家要把IP地址改为自己的。在h264.h的#define DEST_IP "192.168.0.30"和#define DEST_PORT 1234这两行修改就行了。同时w.sdp文件里也要改成一致的IP和端口号,不然VLC是接受不到数据的。在c=IN IP4 192.168.0.30 和m=video 1234 RTP/AVP 96这两行。中间的1234是我设置的端口号。)在执行程序之前,先用VLC打开w.sdp文件,然后执行程序,就可以看到画面了:)

2012-02-02

皮肤滚动条(SkinSB_1.2)

皮肤滚动条库源代码(1.2版),使用方便只需要调用几个函数就能完成控件滚动条的美化。以C语言编译通过,导出了标准API函数,可供其它语言使用只需要将链接方式修改为动态链接库即可以。

2012-02-02

BCGControlbar 12 Sources 2

BCGControlbar 12 源代码版,这是第二个压缩包,第一个压缩包地址如下: http://download.csdn.net/source/2115149 解压密码:gameuser

2012-02-02

BCGControlbar 12 Sources

BCGControlbar 12,不用多说了,源代码版,如何安装请参考以前的热心朋友发的帖子。 解压密码:gameuser 一共2个压缩包,这是第一个压缩包。 第二个压缩包地址: http://download.csdn.net/source/2115199

2012-02-02

VC++写的手机QQ聊天记录导出工具

本程序用vc++编写,功能只负责将聊天记录导出到文本文档中,其实稍加修改就可以做到将2008和2009的聊天记录相互转换

2012-02-02

AGG与GDI两种图形库在MFC下的图形绘制

AGG与GDI两种图形库在MFC下的图形绘制,开发工具是vc2005,实现了AGG下的各种属性设置,透明度的设置,以及在两种不同库下的编辑图形和显示图形。

2012-02-02

DFT+IDFT+FFT+IFFT的c++实现

DFT+IDFT+FFT+IFFT的c++实现 void dft() { double pi=3.1415926; double Q=2*pi/2048; double s,c,ss; for(int k=0;k<=2047;k++) { A[k]=0;B[k]=0; for(int n=0;n<=2047;n++) { ss=Q*n*k; c=cos(ss); s=sin(ss); A[k]+=a[n]*c+b[n]*s; B[k]+=b[n]*c-a[n]*s; } } ofstream out3("\\c++\\dft.dat"); if(!out3) { cout<<"创建文件失败,程序将退出!"<<endl; return; } else { for(int i=0;i<2048;i++) { out3<<A[i]<<" "<<B[i]; out3<<endl; } } out3.close(); }

2012-02-02

vc++备忘录管理系统

包括家庭成员基本信息、备忘录配置信息、备忘录信息、备忘录信息查询的管理(生日提示、备忘录提示、大事记等),对学习VC+Oracle帮助很大,其中大部分代码摘自《Visusl C++与Oracle数据库编程案例》

2012-02-02

mingw+msys已配置好,移植直接用

Msys: 1.0.10 MinGW:5.1.4 make: 3.81.90 gcc: 4.3.2 w32api: 3.13 SDL: 1.2.1 MinGW-Runtime: 3.15 这是我自己根据一篇比较新的blog搭建的mingw+msys环境,用来编译ffmpeg的,各种版本都可以编译。 基本上解决了常出现的各种问题。移植可用! 文章地址: http://blog.csdn.net/bihaichentian/archive/2010/08/20/5826859.aspx MINGW+MSYS环境已经配置完成。 移植到其他电脑上时需要根据情况做修改: 若msys文件夹放在D盘根目录下,找到D:\msys\1.0\etc\fstab,以记事本或写字板打开, 将以下所示部分改为现在实际所在的路径,即D:/msys/1.0/mingw。若在C盘,则无需更改。 #Win32_Path Mount_Point c:/msys/1.0/mingw /mingw 注意是/,不是\,因为linux下的路径都是用/的。 若电脑上安装了VC++,找到c:\msys\1.0\msys.bat并以记事本或写字板或notepad打开,在第一行添加: call "C:\Program Files\Microsoft Visual Studio\VC98\Bin\VCVARS32.BAT" 双引号内的路径不固定,以VC安装的路径为准。 msys使用技巧: 复制:选中一段文字,就将这段文字复制到剪贴板。 粘贴:shift+鼠标左键,就将剪贴板的内容粘贴到命令行了。

2012-02-02

x264最新版,2010年05月24日更新,H.264快速编码器,VS2005

H.264 视频编码器 x264 最新版 2010-5-24更新 x264是迄今用于H264编码的最先进也最实用的开源代码自由软件库,是Laurent Aimar和Loren Merritt等人在2003年发布的,并由来自世界各地的程序员进行开发和维护,每天都会有支持新功能的版本诞生。X264从2003年诞生,现在最新的版本是x264 revision 1583,并且仍在不断更新与完善中。目前x264己经支持了大部分H.264编码工具,而且有多个产品和开源项目己经采用了x264编码器,包括VLC mediaPlayer、ffmpeg等。x264针对H.264编码采取了多种优化方案,包括支持快速搜索方案(例如六边形搜索、菱形搜索等)、多参考帧优化以及代码的汇编优化。相对于JM编码器,x264在编码性能方面有很大的提高,这将会促进H.264标准在实际中的应用。

2012-02-02

windows 可编译的openrtsp源码

windows 可编译的openrtsp源码,调试研究live555库的好工具。

2012-02-02

live555 RTSP RTCP RTP。live555类关系图,RTSP笔记,H264流传输

只传有用的,鄙视上传垃圾。项目之后的总结 live555 RTSP RTCP RTP。包括live555类关系结构图,客户端/服务器传输流程,RTSP学习笔记,及RFC中文规范,H264流传输等。 还有项目之后的代码在我的上传空间中,支持移植

2012-02-02

基于MFC对话框的UDP客户端服务器端程序

2011年8月1日 16:15:23 基于MFC对话框的MFC UPD客户端以及服务器端程序 1.服务器端 1.1服务器端点击create按钮后,程序读取设置的服务器端端口,默认端口为100,创建服务器端socket,将create的按钮变换成close按钮,并且将服务器端的地址及端口与socket bind.开启读取数据线程. 1.2当服务器读取线程接收到数据时,将保存数据源的ip地址以及端口,将数据以及数据的源在receive edit控件中显示出来,并将数据源在client中显示出来.如果是第一次接收到数据,将使能send按钮. 1.3当点击send时,将读取send edit控件中的内容并且发送. 1.4当关闭对话框时将终止读取线程. 2.客户端 2.1输入服务器端ip以及端口号后reset,即可设置发送数据的目标地址,并且开启读取数据线程读取数据,使能send按钮. 2.2按下send按钮后将读取send edit控件中的数据发送至服务器端. 2.3当接收到数据时,将在receive edit控件中显示接收的数据. 2.4当关闭对话框时,将终止读取数据线程

2012-01-05

全套视频会议

用视频、音频会议原理来简化公司员工交流的方式,从而提高企业的信息传播效率,能满足简洁流畅的会议过程,支持语音聊天,文字聊天,共享白板,传输文件等功能。包括通信和用户管理两大模块,通信模块主要是实现语音、视频的网络传输,采用了DirectShow的音视频处理及mpeg4的编解码技术;用户管理模块主要是实现用户管理、用户分组、会议管理等,用户管理主要是实现对系统的使用者的管理,包括注册用户,用户验证,用户密码管理,用户信息存储等,会议管理主要是实现会议的创建,邀请与会者加入会议,取消与会者的会议资格,主持会议,请求发言,授权发言等,会议邀请通过发送邮件的方式来通知,并采用SQL数据库对会议信息进行管理。

2011-11-11

vc文件拷贝程序(显示拷贝进度)

是一个在VC下实现文件拷贝的程序,包括浏览文件夹、拷贝进度显示功能,文家拷贝主要使用win32函数CopyFileEx,进度显示则通过其回调函数CopyProgressRoutine实现。

2011-10-17

类似QQ的全套聊天系统[极品]

类似QQ的全套聊天系统[极品]

2011-09-20

0.6版ffmpeg.c在vs2005下编译

我比较笨,用了2天的时间将ffmpeg.c改在vs2005下编译. ---------------------------------- 粗略说说过程吧. 1.ffmpeg.c,牵涉的的文件有audioconvert.h,audioconvert.c,cmdutils.h,cmdutils.c,将c文件改为cpp文件 2.mingw下inttypes.h在ffmpeg.c里主要是一些int32_t的类型定义.弄出来 3.c99的语法(AVRational){1,2}在VC下不支持,我弄了个函数_AVRational()... 这样所有的地方改为_AVRational(1,2)改动不大, 4.几个msys的函数lrintf,llrintf,这是4舍5入 奇怪VC本身没有round的函数,所以我宏替代 #define lrintf(f) (f>=0?(int32_t)(f+(float)0.5)int32_t)(f-0.4) ); 查手册4舍5入法则: 20.4---->20 20.5---->21 -20.5---->-20 -20.6---->-21 --------------------------- 5.还有一个地方 gcc充许除以0,结果为正负最大值,我直接定义了最大值的宏. 6.linux下的函数usleep()精确到微秒,而VC的Sleep,sleep只能是秒,豪秒,这个差距不知道怎么解决.暂时我就让错差存在. 7.其实编的时候,里面很多include的头文件没用着的,我就注释了. 8.加上extern "C"{};规范 =========================== 总的说来,这样调试跟踪顺序是对的.对学习帮助较大.

2011-09-12

基于IOCP的高性能服务器架构与聊天程序

基于IOCP的高性能服务器架构与聊天程序,可以学习IOCP架构

2011-08-10

menu使用INI配置文件实现多国语言

menu使用INI配置文件实现多国语言,推荐下载

2011-07-14

空空如也

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

TA关注的人

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