自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

华的专栏

讨论与进步

  • 博客(47)
  • 资源 (2)
  • 收藏
  • 关注

转载 OpenCV中寻找轮廓函数cvFindContours的使用说明以及序列cvSeq的用法说明

OpenCV中寻找轮廓函数cvFindContours的使用说明以及序列cvSeq的用法说明[cpp] view plain copycvFindContours(tour_buf,storage, &contour,sizeof(CvContour), CV_RETR_EXTERNAL, CV_CHAIN_APPROX_SIMPLE);  

2017-04-30 19:25:11 948

转载 ffmpeg1.2的filter分析

我想,filter实际上是形成一个AVFilterGraph,就是一个filter的图。里面定义了filter的关系,frame进去后,经过怎样的路线图进行输入和输出。总之,最后就是形成了filter_graph。ffmpeg -re -i ~/input.flv -threads 2 -vf "split [main][tmp]; [tmp] crop=iw:ih/2

2017-04-28 17:36:58 445

转载 FFmpeg滤镜使用指南

目录1. FFmpeg滤镜文档2. 示例  2.1 缩放  2.2 视频加速  2.3 滤镜图,链和滤镜关系  2.4 多个输入覆盖同一个2x2 网格  2.5 转义字符  2.6 烧录时间码  2.7 描述命令行参数  2.8 测试源3. 滤镜列表4. 其它滤镜示例5. 开发自己的滤镜FFmpeg添加了很多滤镜,查看哪些滤镜有效可用命令

2017-04-28 15:09:51 628

转载 从头开始写项目Makefile(六):参数传递、条件判断、include

【版权声明:转载请保留出处:blog.csdn.net/gentleliu。Mail:shallnew at 163 dot com】在多个Makefile嵌套调用时,有时我们需要传递一些参数给下一层Makefile。比如我们在顶层Makefile里面定义的打开调试信息变量DEBUG_SYMBOLS,我们希望在进入子目录执行子Makefile时该变量仍然有效,这是需要将该变量传递给子Mak

2017-04-28 14:18:37 382

转载 视频码流分析工具

Elecard:http://www.elecard.com/en/index.htmlCodecVisa:http://www.codecian.com/更新(2014.8.26)===================又发现了一个不错的码流分析工具:Intel Video Pro Analyzer 2014: https://softwar

2017-04-27 18:30:42 1729

转载 ffmpeg AVFilter介绍

一.  ffmpeg AVFilter介绍利用ffmpeg做图像的pixel format转换你还在用libswscale吗?嘿嘿,过时啦!ffmpeg中有了新东西:libavfilter.使用它,可以完全代替libswscale,并且可以自动完成一些复杂的转换操作呢.libavfilter啊,用了都说好!但就是太复杂...如果你仅仅是做图像的pixel format处理,用libsw

2017-04-27 18:21:00 3264

转载 【多媒体封装格式详解】---MKV【3】完

有了上文我们经知道了MKV文件时长、音视频的类型、分辨率、采样率等基本信息,接下来就是音视频的数据了。4.Clusters所有的音视频帧数据都在这部分内装着。1个Cluster内可能有很多个BlockGroup组成,BlockGroup内又由若干个Block组成。这些Block内就是音视频的帧数据。1个Cluster并不一定只是音频或者视频。它是由不同的音视频BlockGroup交

2017-04-27 15:45:41 1997

转载 【多媒体封装格式详解】---MKV【1】

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

2017-04-27 15:44:39 758

转载 【多媒体封装格式详解】---MKV【2】

上文MKV【1】已经了解了EBML基本结构和MKV文件的整体结构,接下来我们自己分析每一部分。1.EBML HeaderMKV文件的开头部分是EBML header。可能会包括以下的内容Element NameLEBML IDMaMuRngDefaultT1234

2017-04-27 14:45:32 1068

转载 cvAddWeighted 进行图片融合

cvAddWeighted( ) 是OpenCV中,将两个图片矩阵进行融合的一个很好的函数,可以得到很多有趣的效果。其函数原型如下:void cvAddWeighted( const CvArr* src1, double alpha,const CvArr* src2, double beta,double gamma, CvArr* dst );src1 第一个原数组.

2017-04-25 07:31:30 417

转载 FFMPEG中最关键的结构体之间的关系

注:写了一系列的结构体的分析的文章,在这里列一个列表:FFMPEG结构体分析:AVFrameFFMPEG结构体分析:AVFormatContextFFMPEG结构体分析:AVCodecContextFFMPEG结构体分析:AVIOContextFFMPEG结构体分析:AVCodecFFMPEG结构体

2017-04-24 21:18:57 318

原创 Debian下安装

查询OpenCV相关软件包$ apt-cache search opencvlibcv-dev - development files for libcvlibcv1 - computer vision librarylibcvaux-dev - development files for libcvauxlibcvaux1 - computer vision extension li

2017-04-23 21:28:15 749

转载 Ubuntu 12.04下安装OpenCV 2.3.1,图像二值化

1,安装libgtk2.0-dev and pkg-config终端运行 sudo apt-get install libgtk2.0-dev pkg-config2.下载OpenCV-2.3.1(到openCV官网下载即可)cd 命令进入相应的下载目录。依次运行下列命令$ tar xf OpenCV-2.3.1.tar.bz2$ cd OpenCV-2.3

2017-04-23 21:22:47 725

原创 opencv历史代码下载

http://wiki.opencv.org.cn/index.php/Download

2017-04-23 21:21:15 705

原创 fatal error: highgui.h: No such file or directory

编译test.c文件1. 第一步gcc test.c -o test `pkg-config --cflags --libs opencv`test.c:1:21: fatal error: highgui.h: No such file or directorycompilation terminated.2. 第二步pkg-config --cflags openc

2017-04-23 09:45:35 6501

转载 在linux环境下编译运行OpenCV程序的两种方法 - woshijpfgg

原来以为在Ubuntu下安装好了OpenCV之后,自己写个简单的程序应该很容易吧,但是呢,就是为了编译一个简单的显示图片的程序我都快被弄崩溃了。在谷歌和上StackOverFlow查看相关问题解答之后,我下面就介绍Command Line和CMake两种方式。首先我先粘上我测试的代码吧,文件名为Test.c 1 #include 2 3 int main(int arg

2017-04-23 09:04:39 615 1

转载 Ubuntu下使用VI编辑文件必知的常用命令

Ubuntu下使用VI编辑文件必知的常用命令进入vi的命令vi filename :打开或新建文件,并将光标置于第一行首vi +n filename :打开文件,并将光标置于第n行首vi + filename :打开文件,并将光标置于最后一行首vi +/pattern filename:打开文件,并将光标置于第一个与pattern匹配的串处vi -r filename

2017-04-23 07:58:22 1236

转载 Linux下编译Opencv

主机环境:     Ubuntu-12.04编译器:    gcc 版本 4.6.3 (Ubuntu/Linaro 4.6.3-1ubuntu5)交叉编译器:    gcc version 4.4.1 (Sourcery G++ Lite 2009q3-67) 原料:    OpenCV-2.4.10(下载地址:http://open

2017-04-22 23:49:02 1167

转载 SO_REUSEADDR 套接字选项应用实例

网络上关于SO_REUSEADDR套接字选项用来解决地址重用问题的资料不少,但只停留在文字表达上,并没有实例,很容易误导初学者,并产生疑惑,此处不再赘述。下面通过一个简短的例子来展示如何在项目中合理的使用该选项,以及需要注意的问题。关于TCP断开连接四次握手,如图所示应用场景:之前项目中遇到一个问题,聊天服务器的开启,关闭和重启,例如将服务器关闭后,实际上关

2017-04-22 08:51:16 386

转载 setsockopt中参数之SO_REUSEADDR的意义

1、一般来说,一个端口释放后会等待两分钟之后才能再被使用,SO_REUSEADDR是让端口释放后立即就可以被再次使用。    SO_REUSEADDR用于对TCP套接字处于TIME_WAIT状态下的socket,才可以重复绑定使用。server程序总是应该在调用bind()之前设置SO_REUSEADDR套接字选项。TCP,先调用close()的一方会进入TIME_WAIT状态2、

2017-04-22 08:46:00 319

转载 live555 源代码简单分析1:主程序

live555是使用十分广泛的开源流媒体服务器,之前也看过其他人写的live555的学习笔记,在这里自己简单总结下。live555源代码有以下几个明显的特点:1.头文件是.hh后缀的,但没觉得和.h后缀的有什么不同2.采用了面向对象的程序设计思路,里面各种对象 好了,不罗嗦,使用vc2010打开live555的vc工程,看到live555源代码结构如下:

2017-04-22 08:36:27 463

转载 live555源代码分析

live555源代码下载(VC6工程):http://download.csdn.net/detail/leixiaohua1020/6374387liveMedia 项目(http://www.live555.com/)的源代码包括四个基本的库,各种测试代码以及Media Server。四个基本的库分别是: UsageEnvironment&TaskScheduler, groupsoc

2017-04-21 11:52:08 518

转载 LIVE555play流程

5.1放假了,昨日研究了LIVE555的play部分的源码,不敢独享,贡献出来分享。调用栈BasicTaskScheduler0::doEventLoop(){  // Repeatedly loop, handling readble socketsand timed events:  while (1)  {   SingleStep();  }} 

2017-04-20 14:21:00 483

转载 live555 RTSP服务器建立及消息处理流程

DynamicRTSPServer::creatnew():   1.调用继承自RTPSever::setUpOurSocket:       1.调用 GroupsockHelper 的 setupStreamSocket创建一个socket连接,并绑定,       2.设置socket的发送缓存大小,       3.调用listen开始监听端口,设置同时最大能处理连接数LI

2017-04-20 14:18:59 734

转载 live555 linux 编译

live555 支持 h.264 初步告捷,可以播放,尽管不是很稳定,或者说暂时只能播放 1 帧(主要是我现在还不了解 帧的概念),同时还有 Mal SDP 的传输问题,但还是总结一下,作为参考。liveMedia项目(http://www.live555.com/)1、编译安装下载 source code 到 ubuntu 下解压./genMakefile linuxma

2017-04-19 09:38:03 489

转载 SDP描述h264

H264的RTP中有三种不同的基本负载(Single NAL,Non-interleaved,Interleaved)应用程序可以使用第一个字节来识别。在SDP中也说明了本次会话的属性SDP 参数 下面描述了如何在 SDP 中表示一个 H.264 流:. "m=" 行中的媒体名必须是 "video". "a=rtpmap" 行中的编码名称必须是 "H264".

2017-04-18 17:50:51 2256

转载 RabbitMQ-C客户端使用说明

rabbitmq-c是一个用于C语言的,与AMQP server进行交互的client库,AMQP协议为版本0-9-1。rabbitmq-c与server进行交互前需要首先进行login操作,在操作后,可以根据AMQP协议规范,执行一系列操作。这里,根据项目需求,只进行部分接口说明,文后附demo的github地址。 接口描述:amqp_connection_sta

2017-04-17 15:18:14 1025

转载 linux系统分析工具续-SystemTap和火焰图(Flame Graph)

本文为网上各位大神文章的综合简单实践篇,参考文章较多,有些总结性东西,自认暂无法详细写出,建议读文中列出的参考文档,相信会受益颇多。下面开始吧(本文出自 “cclo的博客” 博客,请务必保留此出处http://xuclv.blog.51cto.com/5503169/1184517)SystemTap简介: SystemTap provides free software (GPL) i

2017-04-17 12:57:20 1488

转载 UML中几种类间关系:继承、实现、依赖、关联、聚合、组合的联系与区别

继承指的是一个类(称为子类、子接口)继承另外的一个类(称为父类、父接口)的功能,并可以增加它自己的新功能的能力,继承是类与类或者接口与接口之间最常见的关系;在Java中此类关系通过关键字extends明确标识,在设计时一般没有争议性;实现指的是一个class类实现interface接口(可以是多个)的功能;实现是类与接口之间最常见的关系;在Java中此类关系通过关键字 impl

2017-04-17 09:03:58 431

转载 解析UML箭头、线条代表的意义

在学习UML过程中,你经常会遇到UML类图关系,这里就向大家介绍一下UML箭头、线条代表的意义,相信通过本文的介绍你对UML中箭头、线条的意义有更明确的认识。AD:本节向大家学习一下UML箭头、线条代表的意义,UML中关系主要有依赖,聚合,合成,泛化和实现等,下面就让我们来看一下这些关系如何用UML箭头和线条来实现。UML箭头、线条程序关系后面的例子将针对某个具体目的来独立

2017-04-17 09:02:59 541

转载 UML设计中的箭头详解

UML类图是描述类之间的关系,关系有重复度和形式之分。重复度:单重复度,只存在一对一的关系。多重复度,用列表、vector或其它的数据结构维护一对多,多对多的关系这里再说一下重复度,其实看完了上面的描述之后,我们应该清楚了各个关系间的关系以及具体对应到代码是怎么样的,所谓的重复度,也只不过是上面的扩展,例如A和B有着“1对多”的重复度,那在A中就有一个列表,保存着B对象的N个引用,

2017-04-17 09:02:02 927

转载 UML总结(对九种图的认识和如何使用Rational Rose 画图)

UML是一种建模语言,是系统建模的标准。我们之所以建模是因为大规模的系统设计时相当复杂的,当系统比较复杂时就会涉及到以下这几个问题:开发人员如何与用户进行沟通来了解系统的需求?开发人员之间如何沟通以确保各个部门能够无缝地协作?    而UML是我们在构造个特种模型时首选的一种建模工具,去描述系统的需求和设计,在对复杂的工程进行建模时,系统可由单一的图形来描述,但是单一图

2017-04-17 08:59:25 451

转载 在Ubuntu上安装使用Systemtap

因为最近开始在Ubuntu上学习Nginx,在网上看到别人介绍了一款强大的内核探测工具Systemtap,于是便准备学习下这款探测工具为以后代码分析做准备。第一步便是安装。在自己电脑上安装的时候,也是费了一番劲儿。因此,为防止以后需要重新安装,也希望可以帮助后来学习的人,在这里准备写一篇博客做一个记录。  以下便是安装步骤:  (0)、安装elfutils,提供分析调试信息

2017-04-10 20:22:25 3379

转载 ubuntu下安装程序的三种方法

引言在ubuntu当中,安装应用程序我所知道的有三种方法,分别是apt-get,dpkg安装deb和make install安装源码包三种。下面针对每一种方法各举例来说明。apt-get方法使用apt-get install来安装应用程序算是最常见的一种安装方法了,比如我要安装build-essential这个软件,使用以下,他会帮我把所有的依赖包都一起安装了。su

2017-04-10 15:55:07 48123

原创 error adding symbols: DSO missing from command line

gcc -g -o streamer streamer.c -I/usr/local/ffmpeg/include -L/usr/local/ffmpeg/lib/ -lavformat -lx264  -lavcodec -lswresample -lm -lz -lpthread/usr/bin/ld: /tmp/ccwUdZJ9.o: undefined reference to sym

2017-04-10 14:15:08 38309 1

原创 x264源码下载信息

X264源码下载地址:http://download.videolan.org/pub/videolan/x264/snapshots/x264代码:http://www.videolan.org/developers/x264.html

2017-04-10 10:56:25 1617

原创 虚拟机里Ubuntu编译内核方法

我们要想了解Linux操作系统,首先要学会编译其内核。Ubuntu编译内核的教程网上有很多,但大多是双系统或者单独的Linux系统,虚拟机环境中的Ubuntu编译内核方法还是有些不同,且网上教程大多都是多年前发布,或多或少不太适用。下面的方法是我在虚拟机里Ubuntu11.0.4编译内核(Linux-3.12.72)步骤,本人亲测有效,希望能够帮到大家!方法/步骤1、 ”Ctrl+Al

2017-04-09 19:43:21 4550

转载 内核探测工具systemtap简介

systemtap是内核开发者必须要掌握的一个工具,本文我将简单介绍一下此工具,后续将会有系列文章介绍systemtap的用法。什么是systemtap假如现在有这么一个需求:需要获取正在运行的 Linux 系统的信息,如我想知道系统什么时候发生系统调用,发生的是什么系统调用等这些信息,有什么解决方案呢?最原始的方法是,找到内核系统调用的代码,加上我们需要获得信息的代码、重新编

2017-04-09 19:33:50 499

转载 tcpdump -w xxxxx.pcap 提示 Permission denied

这是Ubuntu系统下的权限管理framework  “AppArmor” 中设置了tcpdump 工作在enforce模式sudo apparmor_status     修改    tcpdump为complain模式:先安装一个工具包sudo apt-get install apparmor-utils    修改到complain模sudo aa-c

2017-04-09 15:23:20 4282

转载 基于ubuntu的tcpdump抓包总结

1、基础讲解    在使用tcpdump之前,需要了解到两条命令    iwconfig:查看所有无线网卡    ifconfig:查看所有网卡可以看到,ifconfig得到的结果比iwconfig多一个,而且iwconfig侧重得到无线信息,而ifconfig侧重展示接口信息。2、下载安装tcpdumpsudo apt-get in

2017-04-09 15:15:26 1835

ps解封包处理

PS视频流的解封包处理过程,详细请看源码!

2015-08-18

空空如也

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

TA关注的人

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