自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(29)
  • 资源 (4)
  • 收藏
  • 关注

转载 分析jrtplib收发RTCP包

1 创建在RTPUDPv4Transmitter::Create(里有rtcpsock = socket(PF_INET,SOCK_DGRAM,0);rtcpsock即为首发rtcp包的SOCKET。2 发包在RTPUDPv4Transmitter有pollthread = RTPNew(GetMemoryManager(),RTPMEM_TYPE_CLASS_RTPPOLLTHREA

2014-05-30 10:54:45 1489

转载 RTP 与RTCP 解释

RTP协议是real-time transport protocol的缩写,被设计来传输流媒体数据,有着广泛的应用,其它相关介绍自己去看RFC,我不打算讨论这些无聊的概念性的东西。    (1)了解RTP       可以说,RTP协议不依赖于底层协议,也就是说,它是独立的协议。而一般的,由于UDP包的快速、时实性高的特点,它通常和UDP结合在一起,作为UDP的上层载体数据的形式传播。

2014-05-30 10:52:34 598

转载 嵌入式 RTP协议详解以及其他相关协议

RTP协议1 RTP报文格式 2 基于RTP的带宽控制方法      1.接收端的控制策略      2.发送端的控制策略   RTP(Real-timeTransportProtocol)是由IETF开发的实时传输协议,可以在面向连接或无连接的下层协议上工作,通常和UDP协议一起使用。RTP的工作机理与RSVP不同,主要实现一种端到端的多媒体流同步控制机制,既

2014-05-30 10:34:50 709

转载 Linux下的Core文件

当我们的程序崩溃时,内核有可能把该程序当前内存映射到core文件里,方便程序员找到程序出现问题的地方。最常出现的,几乎所有C程序员都出现过的错误就是“段错误”了。也是最难查出问题原因的一个错误。下面我们就针对“段错误”来分析core文件的产生、以及我们如何利用core文件找到出现崩溃的地方。何谓core文件当一个程序崩溃时,在进程当前工作目录的core文件中复制了该进程的存储图像。core

2014-03-28 16:19:07 426

原创 烧写YAFFS2文件系统

Oftentimes it is useful to write the file system for you device into apermanent storage media such as NAND flash. Below you will find stepson how to write a YAFFS/YAFFS2 file system into NAND Flash on

2014-03-11 10:12:38 858

转载 Vim自动补全神器

第一次听说这个插件还是在偶然的情况下看到别人的博客,听说了这个插件的大名.本来打算在实训期间来完成安装的,无奈网实在不给力,也就拖到了回家的时候.在开始准备工作的时候就了解到这个插件不是很容易安装,安装的时候果然名不虚传.(关于这方面的内容,请查看另一篇文章)不过,有付出总有回报,安装之后用上这个插件,真心为这个插件的强大所折服.那这个插件有何不同?YouCompleteMe的特别

2014-03-06 15:38:50 685

转载 一个 Linux 上分析死锁的简单方法

本文主要介绍一种在 Linux 上分析死锁问题的简单方法。主要介绍死锁的基本概念,以及如何使用 pstack 和 gdb 对死锁问题进行分析。简介死锁 (deallocks): 是指两个或两个以上的进程(线程)在执行过程中,因争夺资源而造成的一种互相等待的现象,若无外力作用,它们都将无法推进下去。此时称系统处于死锁状态或系统产生了死锁,这些永远在互相等待的进程(线程)称

2014-03-06 13:50:35 625

转载 C语言可变参数

C语言 ## __VA_ARGS__ 宏在GNU C中,宏可以接受可变数目的参数,就象函数一样,例如: 12#define pr_debug(fmt,arg...) \ printk(KERN_DEBUG fmt, ##arg)用可变参数宏(variadic macr

2014-02-27 14:13:23 545

转载 用函数printk打印内核信息的方法

Linux内核用函数printk打印调试信息,该函数的用法与C库打印函数printf格式类似,但在内核使用。用户可在内核代码中的某位置加入函数printk,直接把所关心的信息打打印到屏幕上或日志文件中。函数printk根据日志级别(loglevel)对调试信息进行分类。日志级别用宏定义,展开为一个字符串,在编译时由预处理器将它和消息文本拼接成一个字符串,因此函数printk中的日志级别和格

2014-02-27 13:30:37 2152

转载 Cscope教程

Cscope安装  可以在http://cscope.sourceforge.net/下载源码包,然后解压,编译安装。./configuremakemake install 生成Cscope数据库  使用cscope前,必须为代码生成一个cscope数据库。假设当前代码在/usr/src/linux目录下,则运行下列命令。cd /usr/src/linuxcsc

2014-02-25 13:31:36 632

转载 技巧:Vimdiff 使用

本文转自:http://www.ibm.com/developerworks/cn/linux/l-vimdiff/Vimdiff 使用各种 IDE 大行其道的同时,传统的命令行工具以其短小精悍,随手可得的特点仍有很大的生存空间,这篇短文介绍了一个文本比较和合并的小工具:vimdiff。希望能对在 Unix/Linux 系统上进行开发的朋友有所帮助。源程序文件(通常是纯

2014-02-24 12:49:55 390

转载 ubuntu下NFS的配置

ubuntu下NFS的配置(1)nfs 安装apt-get install nfs-kernel-serverapt-get install portmap nfs-common(2)编辑/etc/exports/home/jgyang/nfsroot  *(rw,sync,no_root_squash)(3)修改挂载点的属性chmod 777 /home/jg

2014-01-11 12:17:54 425

转载 实时传输协议:RTP、RTCP、RTSP介绍

RTP(Real Time Transport Protocol)       RTP是针对Internet上多媒体数据流的一个传输协议, 由IETF(Internet工程任务组)作为RFC1889发布。RTP被定义为在一对一或一对多的传输情况下工作,其目的是提供时间信息和实现流同步。RTP的典型应用建立在UDP上,但也可以在TCP或ATM等其他协议之上工作。RTP本身只保证实

2014-01-08 21:01:29 1025

原创 linux下GDB教程(转)

用GDB调试程序        GDB是一个强大的命令行调试工具。大家知道命令行的强大就是在于,其可以形成执行序列,形成脚本。UNIX下的软件全是命令行的,这给程序开发提代供了极大的便利,命令行软件的优势在于,它们可以非常容易的集成在一起,使用几个简单的已有工具的命令,就可以做出一个非常强大的功能。 于是UNIX下的软件比Windows下的软件更能有机地结合,各自发挥各自的长处,组合成更为强劲

2014-01-01 21:25:33 428

转载 RTP/RTCP视频数据传输

直接进入正题,经过JPEG压缩后的数据时通过RTP/RTCP协议传输到网络上去的,本课题使用的是Jrtplib的RTP/RTCP协议栈,首先在网上获取Jrtplib包的源码,解压缩配置编译安装,没有bugs就ok了     在源码包里面有好几个examples,都可以借鉴。在设置Server端的时候,与TCP/IP协议不一样,首先在初始化打开的Session的时候,设置一个baseport端口

2013-12-30 14:31:36 658

转载 基于jrtplib的rtp数据发送

1.1 初始化在使用JRTPLIB进行实时流媒体数据传输之前,首先应该生成RTPSession类的一个实例来表示此次RTP会话,然后调用Create()方法来对其进行初始化操作。RTPSession类的Create()方法只有一个参数,用来指明此次RTP会话所采用的端口号。代码1给出了一个最简单的初始化框架,它只是完成了RTP会话的初始化工作,还不具备任何实际的功能。代码1:initi

2013-12-30 14:28:30 720

转载 RTPSession

第一步我們要先把 rtpsession.h 給 include 進來:         #include "rtpsession.h"         接下來再產生 RTPSession 類別的物件:         RTPSession sess;         最後再建立 session 就完成最簡單的初始動作了:         sess.Creat

2013-12-30 14:26:33 568

转载 JRTPLIB3.5.0中文简要翻译

本文介绍了如何使用JRtpLib3.5.0库中的函数和类对象。1、RTP1.1、初始化生成RTPSession对象:RTPSession Session初始化RTPSession:Session.Create(RTPSessionParams,RTPUDPv4TransmissionParams),RTPSessionParams的关键作用就是设置时间戳,形式如下:  RTPS

2013-12-30 14:17:18 415

转载 条件变量pthread_cond_t怎么用

最近看《UNIX环境高级编程》多线程同步,看到他举例说条件变量pthread_cond_t怎么用,愣是没有看懂,只好在网上找了份代码,跑了跑,才弄明白[cpp] view plaincopy#include #include #include pthread_mutex_t mutex = PTHREAD_MUTEX_IN

2013-12-24 18:42:07 418

转载 进程间通信--消息队列

一、消息队列的基本概念    消息队列是一个存放在内核中的消息链表,每个消息队列由消息队列标识符标识。与管道不同的是消息队列存放在内核中,只有在内核重启(即操作系统重启)或者显示地删除一个消息队列时,该消息队列才会被真正删除。    操作消息队列时,需要用到一些数据结构,熟悉这些数据结构是掌握消息队列的关键。下面介绍几个重要的数据结构。    1、消息缓冲结构    向消息队列发送

2013-12-21 12:51:50 495

转载 i节点(inode)和文件描述符(file descriptor)的区别和联系

inode 或i节点是指对文件的索引。如一个系统,所有文件是放在磁盘或flash上,就要编个目录来说明每个文件在什么地方,有什么属性,及大小等。就像书本的目录一样,便于查找和管理。这目录是操作系统需要的,用来找文件或叫管理文件。许多操作系统都用到这个概念,如linux, 某些嵌入式文件系统等。当然,对某个系统来说,有许多i节点。所以对i节点本身也是要进行管理的。     在linu

2013-12-21 11:22:40 1133

转载 read 与 fread 的区别的误解

前多时间梳理了一些Linux上的编程,其实就是认识的大量的系统调用(POSIX)。这里有一个我们经常提出的问题就是fread,read的区别。(当然这两个分别代表了操作文件系统的两套不同的函数,包括open,read, write, seek 等)。我们都知道,他们的区别就是一个(read)是UNIX 中的系统调用,是类UNIX系统,提供给程序员操作文件的接口(要不然你如何操作文件?);而另外一个

2013-12-21 11:21:43 429

转载 ubuntu添加右键terminal及脚本

1、添加右键terminal$ sudo apt-get install nautilus-open-terminal重启生效。2、添加右键脚本以实现“递归删除.svn”功能的脚本为例,在~/.gnome2/nautilus-scripts目录下添加文件delallsvn,内容如下:#!/bin/bashfind . -type d -name “.svn”|xargs r

2013-12-19 09:19:22 501

转载 ubuntu 12.04无线网卡驱动问题

安装ubuntu 12.04后,无线网卡不可用,通过“附加驱动”中提示的b43驱动安装后反而连无线网卡都找不到了,采用以下方式解决:1、卸载之前在Ubuntu的附加驱动管理器中安装的b43 sta驱动,重启电脑;2、在终端中运行如下命令,重新安装b43相关的全部驱动和firmware:sudo apt-get install bcmwl-kernel-source     #B

2013-12-19 09:18:08 406

转载 linux消息队列操作

对消息队列的操作无非有下面三种类型:1、 打开或创建消息队列消息队列的内核持续性要求每个消息队列都在系统范围内对应唯一的键值,所以,要获得一个消息队列的描述字,只需提供该消息队列的键值即可;注:消息队列描述字是由在系统范围内唯一的键值生成的,而键值可以看作对应系统内的一条路经。2、 读写操作消息读写操作非常简单,对开发人员来说,每个消息都类似如下的数据结构:

2013-12-18 19:35:48 427

转载 Tinyxml的使用

现在越来越多的数据和配置采用了xml格式来存放和进行传输解析了。在c++方面,没有本地支持的库,所以需要我们自己去找一下。微软的msxml说实话,确实不咋地,尤其是com的类型变量名字一直指针,让众人看上去就比较反感。开源的tinyxml在这方便做的还不错。简单介绍下使用过程的一点小经验。在这里发下牢骚,VC6.0以后的各个版本的VS环境对于C++的智能感知都是那么的SB,不管你怎么配置,

2013-12-13 15:28:56 467

转载 C++箴言:谨慎使用多继承

触及 multiple inheritance (MI)(多继承)的时候,C++ 社区就会鲜明地分裂为两个基本的阵营。一个阵营认为如果 single inheritance (SI)(单继承)是有好处的,multiple inheritance(多继承)一定更有好处。另一个阵营认为 single inheritance(单继承)有好处,但是多继承引起的麻烦使它得不偿失。在本文中,我们的主要目的是理

2013-12-09 16:01:34 560

转载 Linux shell脚本基础学习

Linux shell脚本基础学习我们将分几讲来慢慢细说,希望能对想学习Linux shell脚本编程的初学者有一个明确的帮助,水平得到提高。AD:Linux shell脚本基础学习这里我们先来第一讲,介绍shell的语法基础,开头、注释、变量和 环境变量,向大家做一个基础的介绍,虽然不涉及具体东西,但是打好基础是以后学习轻松地前提。1. Linux 脚本编写基础◆1.

2013-12-09 15:59:55 503

转载 list_for_each_entry

参考:http://blog.sina.com.cn/s/blog_5e99b41e0100rxgf.htmlhttp://hi.baidu.com/shiftedmind/blog/item/1a7c8381e6a67fa56d8119da.html         在Linux内核源码中,经常要对链表进行操作,其中一个很重要的宏是list_for_each_entry:

2013-12-09 15:49:27 380

Using Swift With Cocoa and Objective-C中文版

Using Swift With Cocoa and Objective-C中文版,OC和Swift混合使用

2018-05-30

RTPSession项目

这是一个基于rtp的流媒体发送、接受、处理的项目,非常值得借鉴学习。

2014-05-30

Modules_2440

包含了2440开发板常用模块的相关代码,非常有助于学习。

2014-05-30

空空如也

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

TA关注的人

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