自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

北雨南萍

天行健 君子以自强不息,地势坤 君子以厚德载物!

  • 博客(14)
  • 资源 (17)
  • 收藏
  • 关注

转载 使用异步IO大大提高应用程序的性能之二

紧接上文下一节将深入介绍这种模型,探索这种模型使用的 API,然后展示几个命令。一、异步 I/O 的动机从前面 I/O 模型的分类中,我们可以看出 AIO 的动机。a. 阻塞模型需要在 I/O 操作开始时阻塞应用程序,这意味着不可能同时重叠进行处理和 I/O 操作。b. 同步非阻塞模型允许处理和 I/O 操作重叠进行,但是这需要应用程序根据重现的规则来检查 I/O

2013-05-31 18:02:44 920

转载 使用异步IO大大提高应用程序的性能之一

学习何时以及如何使用 POSIX AIO APIM. Tim Jones (mtj@mtjones.com), 顾问工程师, Emulex简介: Linux? 中最常用的输入/输出(I/O)模型是同步 I/O。在这个模型中,当请求发出之后,应用程序就会阻塞,直到请求满足为止。这是很好的一种解决方案,因为调用应用程序在等待 I/O 请求完成时不需要使用任何中央处理单元(CPU)。

2013-05-31 17:52:25 1097

原创 IO中同步、异步与阻塞、非阻塞的区别

一、同步与异步同步/异步, 它们是消息的通知机制1. 概念解释A. 同步所谓同步,就是在发出一个功能调用时,在没有得到结果之前,该调用就不返回。按照这个定义,其实绝大多数函数都是同步调用(例如sin isdigit等)。但是一般而言,我们在说同步、异步的时候,特指那些需要其他部件协作或者需要一定时间完成的任务。最常见的例子就是 SendMessage。该函数

2013-05-31 11:46:38 1476

翻译 3GP 的 DASH设计原则与标准

Dynamic Adaptive Streaming ove HTTP(DASH) Design Principles and Standards3GP 的 DASH设计原则与标准Thomas Stockhammer 高通公司ABSTRACT本文对3GPP和MPEG采纳的DASH标准文档做了深入理解。特别地,3GPP版本提供了对媒体表示--分段格式,和传输协议做了规范描述。

2013-05-13 21:18:54 2220

翻译 Dynamic Adaptive Streaming over HTTP Dataset

Dynamic Adaptive Streaming over HTTP DatasetStefan Lederer, Christopher Müller, and Christian TimmererAlpen-Adria-Universit?t KlagenfurtUniversit?tsstra?e 65-679020 Klagenfurt am W?rth

2013-05-12 21:48:02 2478

原创 录制UDP组播数据到文件(2)

3.2. 初始化UDP组播数据接收1  int init_udp(UDPContext **pp_udpctx, 2        char *host, char *addr, int port)3  {4    UDPContext *p_ctx = NULL;5    int  error;6    int  ret;7    char *err_msg;8

2013-05-09 15:17:04 1507

原创 录制UDP组播数据到文件(1)

简介:网上的通常的UDP组播程序都只是简单的示例,通常也只是支持本机为单网卡的情况,未达到应用的级别。本程序支持本机多网卡(即多IP),指定IP接收UDP组播数据存储成文件。而且本程序是多线程并行的工作方式,能保证数据并行接收与存储,从而不会造成数据丢失。本程序还对UDP组播数据的初始化,接收和结束进行了封装,方便应用开发。最后说明一下,本程序借鉴ffmpeg的相关代码,完

2013-05-09 15:03:19 2084

转载 getsockopt()和setsockopt()函数详解

功能描述:获取或者设置与某个套接字关联的选项。选项可能存在于多层协议中,它们总会出现在最上面的套接字层。​当操作套接字选项时,选项位于的层和选项的名称必须给出。​为了操作套接字层的选项,应该将层的值指定为SOL_SOCKET。​为了操作其它层的选项,控制选项的合适协议号必须给出。​例如,为了表示一个选项由TCP协议解析,层应该设定为协议 号TCP。用法:#i

2013-05-09 12:50:03 1492

转载 UDP组播

随着internet的飞速发展,利用internet进行协作开发的项目越来越多。​对某些应用而言,如分布式数据库开发,一个开发工作组有很多人需在不同的地点协作并经常交换情况。​在组的规模比较小的情况下,只需点对点交换信息即可;​如果组的规模比较大,点对点交换信息不管对网络还是对信息发送者,都是一种负担,代价昂贵。​有时虽可用广播的方式进行处理,但如果在一个上百万节点的网络上向数千台

2013-05-09 11:32:43 2002

转载 socket编程之addrinfo结构体与getaddrinfo函数

原文链接:​http://blog.chinaunix.net/uid-26583794-id-3167485.html​​addrinfo结构体的定义如下:struct addrinfo {     int ai_flags; /* customize behavior */     int ai_family; /* address fami

2013-05-09 10:23:59 1258

转载 C下如何实现printf在同一行打印,如安装程序进程显示

#include #include char well[11] = "          ";int i = 0;for(i = 0; i {      well[i] = '#';      printf("\r%s %d%%",well,(i+1)*10);    // /r是回车的转义符,目的是回到行首      fflush(stdout);

2013-05-08 10:43:41 6274

转载 linux下错误的捕获:errno和strerror的使用

经常在调用linux 系统api 的时候会出现一些错误,​比方说使用open() write() creat()之类的函数有些时候会返回-1,也就是调用失败,这个时候往往需要知道失败的原因。​这个时候使用errno这个全局变量就相当有用了。​在程序代码中包含 #include ,然后每次程序调用失败的时候,系统会自动用用错误代码填充errno这个全局变量,​这样你只需要读err

2013-05-04 12:20:15 874

转载 程序员的出路之一

就现在经济大环境而言,很不乐观,程序员的日子也很不好过,无论是还在找工作的、还是已经入职多年、哪怕做到项目经理技术经理的,压力都异常巨大,似乎处处充满危机。但是,仔细分析一下,出路还是有的,甚至解决温饱、过上有房有车没贷款的生活也是很可能的。首先,在如今这个浮躁的社会,大多数人的心态也是浮躁的,只要你能潜下心来,深入研究某个技术,有了一技之长,温饱问题肯定就可以先解决了。1.一技之长

2013-05-03 22:34:55 912

原创 Perl实现后台守护进程

有时候需要用perl实现一个服务程序,即linux常说的守护程序(daemon),而我们往往希望这样的程序能够在后台运行。有些人一般是直接用bg命令把程序放到了后台,这么做有一些问题。下面提供一个标准的守护进程的代码:#!/usr/bin/perl -wuse strict; use POSIX; ### 用fock生成进程,并让父进程退出##o

2013-05-03 12:38:36 4256 1

h264-to-rtmp.copy-frame

使用了FFmpeg SDK的最新版实现; 能完整地逐帧读取h.264的码流文件, 并帧数据复制的模式封装成RTMP流并推送; 有详细的代码注释; 亲测可用,很方便整合到生产工程中;

2024-02-20

PJT-dynamic-video-encoder.by-x264.zip

基于X264实现的动态码率与动态帧率调整

2021-02-16

RTCP-RTP协议详解-中文版.doc

RTP/RTCP协议的解析

2021-02-16

red-black-tree.zip

红黑树的C语言实现

2021-02-05

查找H.264流中的SPS,PPS并解析

从FFmpeg中抽取出来, 读取文件中数据流,快速找到buffer中的SPS 和 PPS,并解析它们的代码;

2018-06-16

FFmpeg SDK的数据结构与API函数详解

我自己整理的最新版(2014-5-5)ffmpeg SDK的数据结构和API函数; 包含了数据结构中变量的大量注解,以及API函数的一些基本使用方式;

2014-05-04

ffmpegSDK_avc2ts

使用ffmpeg SDK实现的h264封装成MPEG2-TS文件; 网上其它的版本都有bug,不能工作,这个是我自己改好的; 代码分析可以看我写的文章《FFmpeg SDK开发模型之三:muxer》

2014-05-04

ffmpeg SDK与示例程序

根据ffmpeg生成的SDK, 并添加上了编译,测试通过的两例子apiexample, output_example 具体的代码分析可以看我的博客文章

2014-04-21

UDP数据接收服务器

这是我在做一个要用UDP方式进行数据传输时,自己写的一个多线程的UDP数据接收服务器, 它能将接收到的UDP数据包存成文件,并提供数据包接收时间监测; 还支持键盘命令响应,以将数据写到新的文件,和退出程序;

2013-09-18

HEVC(h.265)官方文档

HEVC(H.265)的官方文档,做视频编解码必备 2012年2月10日,在美国圣何塞召开了第99届MPEG会议。MPEG组织和ITU-T组织对JCT-VC的工作表示满意,准备于2013年1月,同时在ISO/IEC和ITU-T发布HEVC标准的最终版本。[1] 2013年1月26号,HEVC正式成为国际标准 这是2013年的最新版本

2013-05-09

录制UDP组播数据到文件

本程序支持本机多网卡(即多IP),指定IP接收UDP组播数据存储成文件。 而且本程序是多线程并行的工作方式,能保证数据并行接收与存储,从而不会造成数据丢失。 本程序还对UDP组播数据的初始化,接收和结束进行了封装,方便应用开发。 最后说明一下,本程序借鉴ffmpeg的相关代码,完全达到了应用开发级别, 且可以用来理解ffmpeg对UDP数据的处理。

2013-05-09

linux进程间的通信:匿名管道

liunx进程间,使用匿名管道通信的示例程序, 生成了两个子进程, 实现文件读取,转码成大写,写输出文件的流水并行。 对实用场合很有启发意义

2012-11-15

DirectShow实务精选+源代码

DirectShow开发的三本必备学习资料之一。 快速提高DirectShow技术的利器。

2012-10-27

DirectShow开发指南及源代码

《Directshow开发指南》书和源代码,开发directshow的入门和必备资料

2012-10-26

rtmpdump for vs2008

将rtmpdump移植到了VS2008下

2012-10-26

H.264/SVC 官方说明书最新完整版(包含SVC部分)

H.264/SVC官方的说明书,包含有SVC部分,是网上最好最全的版,研究H.264必备的文档

2012-07-29

H.264 SVC简介

H.264的SVC技术综述,基本原理介绍

2012-07-29

H.264 SVC学习报告

H.264 SVC部分的专项内容学习与疑问解答。对学习H.264的SVC的入门极有用

2012-07-29

空空如也

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

TA关注的人

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