自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

多媒体编程、网络编程、系统编程、网络安全编程、驱动编程

多媒体编程、网络编程、系统编程、网络安全编程、驱动编程

转载 为什么C程序一定要从main开始执行???

main只是开发工具所规定的一个特殊函数名称而已。它既不是程序的入口,也不是必须要有的函数。 程序的入口点记录在可执行文件中的一个数据,该数据标明程序从哪个位置开始执行,这个数据是连接程序的时候由link.exe确定的,可以把程序的入口点 指定为任意函数,甚至可以自己编辑可执行文件修改程序...

2012-05-31 15:43:54

阅读数 1107

评论数 0

转载 c c++ include机制简述

1.引言 做c/c++编程的对#include指令都不会陌生,绝大多数也都知道如何使用,但我相信仍有人对此是一知半解, C: #include C++: #include 表示包含C/C++标准输入头文件。包含指令不仅仅限于.h头文件,可以包含任何编译器能识别的C/C++代码文件,...

2012-05-31 14:32:23

阅读数 404

评论数 0

转载 ffmpeg分析系列

hello,各位好,本人是一名嵌入式软件工程师,目前正使用ffmpeg开发一款嵌入式多媒体播放器,《ffmpeg分析》系列博文是本人在阅读ffmpeg源代码时所做的笔记,希望对各位有点帮助。分析过程结合下面的例程:     http://dranger.com/ffmpeg/tutorial05...

2012-05-31 11:14:14

阅读数 840

评论数 0

转载 H264码流打包分析(精华)

H264码流打包分析 SODB 数据比特串-->最原始的编码数据 RBSP 原始字节序列载荷-->在SODB的后面填加了结尾比特(RBSP trailing bits 一个bit“1”)若干比特“0”,以便字节对齐。 EBSP 扩展字节序列载荷-- >在RBSP基础上...

2012-05-31 11:12:51

阅读数 2942

评论数 0

转载 ffmpeg源码分析之数据流

本文主要介绍ffmpeg的数据流,在ffmpeg中主要分有三个主要用途用于媒体流的解码播放,媒体流的转换(解码之后再编码)和媒体流录制。 媒体流的解码播放 在ffmpeg中媒体流的解码播放流程如下图: 其主要流程为从媒体文件中读取出媒体流,然后送入媒体格式解码器(demuxer)中去除...

2012-05-31 10:49:28

阅读数 624

评论数 0

转载 使用ffmpeg进行视频解码以及图像转换

ffmpeg作为一个支持非常多视频、音频格式的开源项目,其应用灰常广泛。今儿在这我们就探讨一下读者对其的理解,其中不泛错误谬误,望各位大大批评指教。这样做的原因主要是官方的文档比较匮乏。经过无数摸索,有一些经验分享。 1、Overview ffmpeg里有几个重要的概念,熟悉它们以后,事情就变...

2012-05-31 10:02:08

阅读数 1029

评论数 0

原创 ffmpeg 新老接口问题及对照集锦

网上很多关于ffmpeg (libav)的资料都是N年以前的,而事实上ffmpeg数年来一直在“以时俱进”,因此无论是一些新手,或者号称为老手的人,有时候难免出头痛。。。。。。 为了解决大家的头痛的问题,特列一个贴子,把ffmpeg相关的一些常见的、版本的问题列举出来,供大家参考,同时也请大...

2012-05-31 09:55:26

阅读数 1497

评论数 0

转载 深入浅出FFMPEG(精华)

原文地址:http://3xin2yi.info/wwwroot/tech/doku.php/tech:multimedia:ffmpeg 认识FFMPEG FFMPEG堪称自由软件中最完备的一套多媒体支持库,它几乎实现了所有当下常见的数据封装格式、多媒体传输协议以及音视频编解码器。因此,...

2012-05-31 09:22:17

阅读数 978

评论数 0

转载 字节对齐详解

一.什么是字节对齐,为什么要对齐?     现代计算机中内存空间都是按照byte划分的,从理论上讲似乎对任何类型的变量的访问可以从任何地址开始,但实际情况是在访问特定类型变量的时候经常在特 定的内存地址访问,这就需要各种类型数据按照一定的规则在空间上排列,而不是顺序的一个接一个的排放,这就是...

2012-05-31 08:53:42

阅读数 367

评论数 0

转载 解析C语言中的sizeof

解析C语言中的sizeof 一、sizeof的概念    sizeof是C语言的一种单目操作符,如C语言的其他操作符++、--等。它并不是函数。sizeof操作符以字节形式给出了其操作数的存储大小。操作数可以是一个表达式或括在括号内的类型名。操作数的存储大小由操作数的类型决定。  二...

2012-05-31 08:53:33

阅读数 438

评论数 0

转载 大内高手--调试手段及原理

大内高手--调试手段及原理     知其然也知其所以然,是我们《大内高手》系列一贯做法,本文亦是如此。这里我不打算讲解如何使用boundschecker、purify、valgrind或者gdb,使用这些工具非常简单,讲解它们只是多此一举。相反,我们要研究一下这些工具的实现原理。   本文...

2012-05-31 08:53:11

阅读数 429

评论数 0

转载 大内高手—惯用手法

大内高手—惯用手法     《POSA》中根据模式粒度把模式分为三类:架构模式、设计模式和惯用手法。其中把分层模式、管道过滤器和微内核模式等归为架构模式,把代理模式、命令模式和出版-订阅模式等归为设计模式,而把引用计数等归为惯用手法。这三类模式间的界限比较模糊,在特定的情况,有的设计模式可以...

2012-05-31 08:52:53

阅读数 411

评论数 0

转载 大内高手—常见内存错误

大内高手—常见内存错误     随着诸如代码重构和单元测试等方法引入实践,调试技能渐渐弱化了,甚至有人主张废除调试器。这是有道理的,原因在于调试的代价往往太大了,特别是调试系统集成之后的BUG,一个BUG花了几天甚至数周时间并非罕见。   而这些难以定位的BUG基本上可以归为两类:内存错...

2012-05-31 08:52:32

阅读数 473

评论数 0

转载 大内高手—共享内存与线程局部存储

大内高手—共享内存与线程局部存储     城里的人想出去,城外的人想进来。这是《围城》里的一句话,它可能比《围城》本身更加有名。我想这句话的前提是,要么住在城里,要么住在城外,二者只能居其一。否则想住在城里就可以住在城里,想住在城外就可以住在城外,你大可以选择单日住在城里,双日住在城外,也就...

2012-05-31 08:52:10

阅读数 1252

评论数 0

转载 大内高手—内存管理器

大内高手—内存管理器   转载时请注明出处和作者联系方式:http://blog.csdn.net/absurd 作者联系方式:李先静  更新时间:2007-7-9 作为一个C程序员,每天都在和malloc/free/calloc/realloc系列函数打交道。也许和它们混得太熟...

2012-05-31 08:51:59

阅读数 442

评论数 0

转载 大内高手—全局内存

大内高手—全局内存   转载时请注明出处和作者联系方式:http://blog.csdn.net/absurd 作者联系方式:李先静  更新时间:2007-7-9 有人可能会说,全局内存就是全局变量嘛,有必要专门一章来介绍吗?这么简单的东西,还能玩出花来?我从来没有深究它,不一样写程...

2012-05-31 08:51:50

阅读数 429

评论数 0

转载 大内高手—栈/堆

大内高手—栈/堆   转载时请注明出处和作者联系方式:http://blog.csdn.net/absurd 作者联系方式:李先静  更新时间:2007-7-9 l         栈 栈作为一种基本数据结构,我并不感到惊讶,用来实现函数调用,这也司空见惯的作法。直到我试图...

2012-05-31 08:51:38

阅读数 462

评论数 0

转载 大内高手—内存模型

大内高手—内存模型   转载时请注明出处和作者联系方式:http://blog.csdn.net/absurd 作者联系方式:李先静  更新时间:2007-7-9 了解linux的内存模型,或许不能让你大幅度提高编程能力,但是作为一个基本知识点应该熟悉。坐火车外出旅行时,即时你对...

2012-05-31 08:51:12

阅读数 540

评论数 0

转载 大内高手—序

大内高手—序   转载时请注明出处和作者联系方式:http://blog.csdn.net/absurd 作者联系方式:李先静  更新时间:2007-7-9 我一直认为作为一个在linux下工作的C程序员,若对内存有深刻的认识,不但程序的性能会更高,运行更稳定,编程速度也会更快。...

2012-05-31 08:50:52

阅读数 565

评论数 0

转载 C 语言最大难点揭秘--内存调试技巧

C 语言最大难点揭秘--内存调试技巧 2007年06月24日 星期日 上午 08:43 本文将带您了解一些良好的和内存相关的编码实践,以将内存错误保持在控制范围内。内存错误是 C 和 C++ 编程的祸根:它们很普遍,认识其严重性已有二十多年,但始终没有彻底解决,它们可能...

2012-05-31 08:50:33

阅读数 845

评论数 0

转载 C程序中的内存管理

相比静态地分配内存空间,使用动态内存分配具有明显的优势: 1, 分配空间的大小够精确: 设想一个读取用户输入行的程序, 如果使用静态分配的数组作为buffer, 那么, 你如何确定该数组的长度呢? 太大或太小都不合适. 因为你无法事先知道用户输入字符串的长度. 而使用动态内存分配就精准多了....

2012-05-30 17:37:18

阅读数 334

评论数 0

转载 也谈字节对齐带来效率的差异

因为今天和同事谈到了ARM平台下数据总线宽度及对齐方式对程序效率的影响问题 在定义结构数据类型时,为了提高系统效率,要注意字长对齐原则。 正好有点感触给大家谈谈 本人水平有限的很有什么问题请朋友指正: 本文主要给大家解释下所谓的对齐到底是什么?怎么对齐?为什么会对齐或者说对齐带来什么样的效率...

2012-05-30 17:33:46

阅读数 377

评论数 0

转载 C语言宏定义技巧

1,防止一个头文件被重复包含 #ifndef COMDEF_H  #define COMDEF_H  //头文件内容  #endif  2,重新定义一些类型,防止由于各种平台和编译器的不同,而产生的类型字节数差异,方便移植。  typedef  unsigned char      b...

2012-05-30 17:31:52

阅读数 367

评论数 0

转载 堆、栈及静态数据区详解

五大内存分区     在C++中,内存分成5个区,他们分别是堆、栈、自由存储区、全局/静态存储区和常量存储区。     栈,就是那些由编译器在需要的时候分配,在不需要的时候自动清楚的变量的存储区。里面的变量通常是局部变量、函数参数等。     堆,就是那些由new分配的内存块,他们的释放编译...

2012-05-30 17:16:13

阅读数 286

评论数 0

转载 堆栈理解

堆栈 在计算机领域,堆栈是一个不容忽视的概念,但是很多人甚至是计算机专业的人也没有明确堆栈其实是两种数据结构。 要点: 堆:顺序随意 栈:先进后出 堆和栈的区别  一、预备知识—程序的内存分配  一个由c/C++编译的程序占用的内存分为以下几个部分  1...

2012-05-30 17:15:46

阅读数 374

评论数 0

转载 malloc后,再free 却出错

昨天研究了,斐波那契函数,如下代码: #include "stdio.h" #include "malloc.h" long phponach(int n); unsigned long phbonache(int n); int main...

2012-05-30 17:11:15

阅读数 554

评论数 0

转载 malloc,calloc,realloc等内存分配函数区别

三个函数的声明分别是: void* realloc(void* ptr, unsigned newsize); void* malloc(unsigned size); void* calloc(size_t nelem, size_t elsize); 都在stdlib.h函数库内 ...

2012-05-30 17:08:01

阅读数 314

评论数 0

转载 ANSI C标准函数库

ANSI C标准函数库 absread()读磁盘绝对扇区函数 原形:int absread(int drive,int num,int sectnum,void *buf) 功能:从drive指定的驱动器磁盘上,sectnum指定的逻辑扇区号开始读取(通过...

2012-05-30 17:03:17

阅读数 628

评论数 0

转载 如何理解C run-time library

如何理解C run-time library (C运行时库) 注: 以下内容部分引自CSND中相关讨论的帖子,并结合自己的理解整理而成。仅供参考。 1)运行时库就是 C run-time library,是 C 而非 C++ 语言世界的概念:取这个名字就是因为你的 C 程序运行时需...

2012-05-30 17:00:26

阅读数 456

评论数 0

转载 LIVE555 Streaming Media 组播,单播设置流程

1.软件live555-latest 下载地址:http://www.live555.com/liveMedia/public/ 2.编译环境 win+cygwin 在cygwin中运行./genMakefiles cygwin ->make -f Makefile ...

2012-05-30 16:43:33

阅读数 2876

评论数 0

转载 vlc支持udp/rtp组播播放

1.软件版本 1.0.3 2.设置流程 首先 媒体-->流-->文件     添加-->流-->下一步-->目标选rtp或者udp-->添加设置组播或者单播地址和端口-->设置转码选项--> 流 然后打开同一网段的主机中...

2012-05-30 16:42:59

阅读数 4627

评论数 0

转载 组播中的setsockopt

组播主机需要的环境        如果要在一台主机上运行多播程序,这台主机支持IGMP协议。此协议用于加入一个多播组,离开一个多播组等而向路由器发送命令。现在的IGMP协议最高版本为v3(rfc3376),现在有很少数的UNIX实现了,WindowXp己实现。大部分主机,路由器实现的版本为v2(...

2012-05-30 16:29:59

阅读数 3819

评论数 0

转载 udp 广播与组播

UDP组播是采用的无连接,数据报的连接方式,所以是不可靠的.也就是数据能不能到达接受端和数据到达的顺序都是不能保证的.但是由于UDP不用保证数据的可靠性,所有数据的传送速度是很快的. 1. 组播的“根”   组播从概念上来讲分为两部分:控制部分和数据部分。控制部分决定着组播的对象的组织...

2012-05-30 16:26:29

阅读数 600

评论数 0

转载 单播,广播,组播

当前的网络中有三种通讯模式:单播、广播、组播(多播),其中的组播出现时间最晚但同时具备单播和广播的优点,最具有发展前景。 一、单播: 主机之间“一对一”的通讯模式,网络中的交换机和路由器对数据只进行转发不进行复制。如果10个客户机需要相同的数据,则服务器需要逐一传送,重复10次相同的工...

2012-05-30 16:25:43

阅读数 442

评论数 0

转载 linux下面搜索含有某字符串的文件

在linux如果知道文件名,搜索文件时,使用 which, whereis,locate,find。 搜索某个目录下面还有某个字符串的文件,就上上面的命令就无能为力了,这时候就需要 grep 语法如下: grep “text string to...

2012-05-30 15:50:34

阅读数 370

评论数 0

转载 编译ffmpeg

1、 下载编译环境MinGW+Msys,地址是:http://sourceforge.net/projects/mingwbundle/files/,在这个页面上点击Download下载那个zip文件。下载完成后,直接安装,不建议修改任何默认路径(现在的电脑,C盘空间都大的很)。 MinGW...

2012-05-30 15:46:47

阅读数 558

评论数 0

转载 我来理解extern "C"

编程快5年了, 今天才算对extern "C" 有个较为清晰的认识. 本人对extern "C"的认识可以分为三个阶段:   1. 从别人的代码里面看到有这个东西, 自己不认识, 就上网查查, 大概明了它是什么意思. 2. 看到别人的代码里...

2012-05-30 15:40:24

阅读数 654

评论数 0

转载 推荐几个编译ffmpeg的好的国外网站

以下这几个网站你可以在http://ffmpeg.arrozcru.org/找到. 这个连接是ffmpeg的官网(http://www.ffmpeg.org)提供.   http://ffmpeg.arrozcru.org/wiki/   http://ffmpeg.arr...

2012-05-30 15:32:36

阅读数 933

评论数 0

转载 FFMpeg编译之路

为了编译这个东西,快折腾了一个星期了。期间经历了很多痛苦的过程,今天我把整个过程,以及在这个过程的感悟写下来,以备日后查看,也希望能帮到一些像我一样的兄弟姐妹。   在这一个星期里前前后后加起来总共使用了3中方式编译ffmpeg 1. 在基于linux内核的操作系统中编译。这种方...

2012-05-30 15:30:40

阅读数 652

评论数 0

转载 ffmpeg的编译大全

最近互联网视频共享的网站很火,公司也想搞类似的网站,初步是用fms+ffmpeg形式 fms负责在线录制,播放,ffmpeg则在后台处理上传的资源转换成一定的格式。 为了让ffmpeg支持的格式尽量多,所以特把我的编译笔记分享一下 环境:redhat as4 1。首先获取f...

2012-05-30 14:38:15

阅读数 537

评论数 0

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