自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(123)
  • 资源 (3)
  • 收藏
  • 关注

转载 H.264(层次结构,NAL,SPS) 详细重要参数

一 H.264句法1.1元素分层结构H.264编码器输出的Bit流中,每个Bit都隶属于某个句法元素。句法元素被组织成有层次的结构,分别描述各个层次的信息。  图1H.264分层结构由五层组成,分别是序列参数集、图像参数集、片(Slice)、和宏块和子块。参数集是一个独立的数据单位,不依赖于参数集外的其它句法元素。图2描述了参数集与参数集外的

2017-03-27 16:59:32 816

转载 select、poll、epoll之间的区别总结[整理]

select、poll、epoll之间的区别总结[整理]  select,poll,epoll都是IO多路复用的机制。I/O多路复用就通过一种机制,可以监视多个描述符,一旦某个描述符就绪(一般是读就绪或者写就绪),能够通知程序进行相应的读写操作。但select,poll,epoll本质上都是同步I/O,因为他们都需要在读写事件就绪后自己负责进行读写,也就是说这个读写过程是阻塞的

2017-03-25 17:21:53 417

转载 IO多路复用之epoll总结

1、基本知识  epoll是在2.6内核中提出的,是之前的select和poll的增强版本。相对于select和poll来说,epoll更加灵活,没有描述符限制。epoll使用一个文件描述符管理多个描述符,将用户关系的文件描述符的事件存放到内核的一个事件表中,这样在用户空间和内核空间的copy只需一次。2、epoll接口  epoll操作过程需要三个接口,分别如下:

2017-03-25 17:20:36 186

转载 Web性能压力测试工具之ApacheBench(ab)详解

PS:网站性能压力测试是性能调优过程中必不可少的一环。只有让服务器处在高压情况下才能真正体现出各种设置所暴露的问题。Apache中有个自带的,名为ab的程序,可以对Apache或其它类型的服务器进行网站访问压力测试。ApacheBench命令原理:ab命令会创建很多的并发访问线程,模拟多个访问者同时对某一URL地址进行访问。它的测试目标是基于URL的,因此,既可以用来测试Apach

2017-03-25 17:08:46 258

转载 Scala学习

本节主要内容Scala简介为什么要学习ScalaScala语言初步1. Scala简介Scala(Scala Language的简称)语言是一种能够运行于JVM和.Net平台之上的通用编程语言,既可用于大规模应用程序开发,也可用于脚本编程,它由由Martin Odersk于2001开发,2004年开始程序运行在JVM与.Net平台之上,由于其简洁、优雅、类型安全的编程模

2017-03-24 11:39:04 278

转载 UDP分包问题

1.在进行UDP编程的时候,我们最容易想到的问题就是,一次发送多少bytes好?        当然,这个没有唯一答案,相对于不同的系统,不同的要求,其得到的答案是不一样的,我这里仅对        像ICQ一类的发送聊天消息的情况作分析,对于其他情况,你或许也能得到一点帮助:        首先,我们知道,TCP/IP通常被认为是一个四层协议系统,包括链路层,网络层,运输层,应用层.

2017-03-24 10:03:41 9020 2

转载 IP层分包

1.在数据链路层有个MTU(Maximum Transmission Unit, 它由硬件规定,例如以太网是1500,大多数的链路的MTU都大等于1500),这个值限定了链路层一个帧的大小,使得一个IP数据报(包括包头)的大小不能超过MTU(IP数据报的大小除了受MTU限制外,也受到接收方的IP实现中的重组缓冲区大小的限制,这将在第2点中介绍,不过可能重组缓冲区的大小与本地MTU相同)。如果IP数

2017-03-24 10:03:01 2641

转载 ffmpeg关于timebase的理解

ffmpeg关于timebase的理解一:ffmpeg的分层结构写这篇文章的时候先把ffmpeg分层问题大致说明一下,我们按照最常见的  "转码程序" 和 "摄像头采集" 以及 "播放器" 三个模型总结。1:转码转码基本流程:flv格式数据-->h264/aac数据-->yuv/pcm数据-->h264/aac数据-->mp4格式数据。a:我们把

2017-03-24 09:13:32 548

转载 Sizeof与Strlen的区别与联系

Sizeof与Strlen的区别与联系一、sizeof    sizeof(...)是运算符,在头文件中typedef为unsigned int,其值在编译时即计算好了,参数可以是数组、指针、类型、对象、函数等。    它的功能是:获得保证能容纳实现所建立的最大对象的字节大小。    由于在编译时计算,因此sizeof不能用来返回动态分配的内存空间的大小。实际上,用sizeof

2017-03-23 18:12:24 214

转载 TS包头语法结构

TS包由4B的包头(header)、可变长度的调整头和净荷(payload)组成;包头结构定义如下:struct ts_header{    char     syn_byte:8;                                       // 包头同步字节,0x47    char     transpo

2017-03-23 09:02:47 828

转载 按位存取

实现紧凑存取,不是按一个字节一个字节地存取,而是按位存取。比如一个字节,我们可以存储8个bool信息,废话少说,直接分享代码(备注:里面的代码算法值得优化)。  //以下为函数定义  /***********************************************************************/ /*   函数作用:从buffer读一个位       

2017-03-22 17:01:22 906

转载 在C语言中,double、long、unsigned、int、char类型数据所占字节数

和机器字长及编译器有关系:所以,int,long int,short int的宽度都可能随编译器而异。但有几条铁定的原则(ANSI/ISO制订的): 1 sizeof(short int)<=sizeof(int) 2 sizeof(int)<=sizeof(long int) 3 short int至少应为16位(2字节) 4 long int至少应为32位。 unsigned 是

2017-03-22 16:04:22 616

转载 H264 编码+打包+解码相关知识

1)ES流(Elementary Stream): 也叫基本码流,包含视频、音频或数据的连续码流.2)PES流(Packet Elementary Stream): 也叫打包的基本码流, 是将基本的码流ES流根据需要分成长度不等的数据包, 并加上包头就形成了打包的基本码流PES流.3)TS流(Transport Stream): 也叫传输流, 是由固定长度为

2017-03-22 15:34:51 819

转载 H264(ES)如何打包成H264(PES)

H264(ES)如何打包成H264(PES)一直在网上搜集各种资料,心累啊!下面由九把锁为你们阐述TS和H264之间不为人知的关系,还真是比较复杂。一、总的大致关系图这个我也不知道是在哪个CSDN高手那弄来的图,帮了我很大的忙,上图时间到:二、如何由ES数据封装成PES数据1、如何提取一帧ES数据, 就是这么简单,So Eas

2017-03-22 14:32:02 3778

转载 ES PES TS

1.流媒体系统结构ES:elemental stream 基本数据流;PES:packet elemental stream分组的基本数据流;然后把PES打包成PS ,TS流,PS:program stream;TS:transport stream;DTS(解码时间戳)和PTS(显示时间戳)分别是解码器进行解码和显示帧时相对于SCR(系统参考)的时间戳。

2017-03-22 11:27:53 318

转载 H.264句法和语法总结(一)句法元素的分层结构

在 H.264 定义的码流中,句法元素被组织成有层次的结构,分别描述各个层次的信息,如下图所示            在H.264 中,句法元素共被组织成  序列、图像、片、宏块、子宏块五个层次。          在这样的结构中,每一层的头部和它的数据部分形成管理与被管理的强依赖关系,头部的句法元素是该层数据的核心,而一旦头部丢失,数据部分的信息几乎不可能

2017-03-22 10:01:12 299

转载 Makefile常用万能模板(包括静态链接库、动态链接库、可执行文件)

本文把makefile 分成了三份:生成可执行文件的makefile,生成静态链接库的makefile,生成动态链接库的makefile。  这些makefile都很简单,一般都是一看就会用,用法也很容易,只需要把它们拷贝到你的代码的同一目录下,然后就可以用 make 来生成目标文件了。  下面是三个makefile的源代码:1、生成可执行文件的makefile######

2017-03-21 18:07:46 516

转载 H.264的Slice及Slice类型

一、基本概念一个视频图像可编码成一个或更多个条带,每个条带包含整数个宏块(MB),即每个条带至少一个MB,最多时每个条带包含整个图像的宏块。总之,一幅图像中每个条带的宏块数不一定固定。设条带的目的是为了限制误码的扩散和传输,应使编码条带相互间是独立的。某个条带的预测不能以其它条带中的宏块为参考图像,这样某一条带中的预测误差才不会传播到其它条带中去。Slice的类型如表1所示

2017-03-21 11:59:37 323

转载 内存字节对齐

结构体字节对齐      在用sizeof运算符求算某结构体所占空间时,并不是简单地将结构体中所有元素各自占的空间相加,这里涉及到内存字节对齐的问题。从理论上讲,对于任何 变量的访问都可以从任何地址开始访问,但是事实上不是如此,实际上访问特定类型的变量只能在特定的地址访问,这就需要各个变量在空间上按一定的规则排列, 而不是简单地顺序排列,这就是内存对齐。      内存对齐的原因:

2017-03-21 09:48:22 249

转载 Linux负载均衡软件LVS之四

一、启动LVS集群服务LVS负载均衡管理和使用有两种方式,一种是以ipvsadm命令行脚步与ldirectord监控方式,一种是以Piranha工具进行管理和使用。下面分别介绍。1、利用ipvsadm命令行脚步与ldirectord监控方式管理LVS在一切配置完毕之后,依次执行下面的操作启动LVS集群服务。首先,启动每个real server节点的服务:[root@loca

2017-03-20 15:26:24 336

转载 Linux负载均衡软件LVS之三

LVS集群有DR、TUN、NAT三种配置模式,可以对www服务、FTP服务、MAIL服务等做负载均衡,下面通过搭建www服务的负载均衡实例,讲述基于DR模式的LVS集群配置。一、 Director Server的配置在Director Server上配置LVS负载均衡集群,有两种方法: 通过ipvsadm命令行进行配置 通过Redhat提供的

2017-03-20 15:25:49 329

转载 Linux负载均衡软件LVS之二

一、  安装LVS软件1.安装前准备工作操作系统:统一采用Centos4.4版本。地址规划,如表1所示:表1 更详细的信息如图2所示: 图2  LVS DR模式安装部署结构图 图2中的VIP指的是虚拟IP地址,还可以叫做LVS集群的服务IP,在DR、TUN模式中,数据包是直接返回给用户的,所以,在Director Serv

2017-03-20 15:24:55 186

转载 Linux负载均衡软件LVS之一

一、 LVS简介LVS是Linux Virtual Server的简称,也就是Linux虚拟服务器, 是一个由章文嵩博士发起的自由软件项目,它的官方站点是www.linuxvirtualserver.org。现在LVS已经是 Linux标准内核的一部分,在Linux2.4内核以前,使用LVS时必须要重新编译内核以支持LVS功能模块,但是从Linux2.4内核以后,已经完全内置了LVS的各个功能

2017-03-20 15:24:11 204

转载 给RGB加上BMP文件头

实现过程:A、写入文件头B、写入信息头C、写入图像RGB数据(无调色板)//////////////////////////////////////////////////////////////////////////////////////////程序在VC6.0下实现: [cpp] view plain copy

2017-03-20 09:49:58 749

转载 解析PSNR和SSIM

PSNR(Peak Signal to Noise Ratio)峰值信噪比,一种全参考的图像质量评价指标。其中,MSE表示当前图像X和参考图像Y的均方误差(Mean Square Error),H、W分别为图像的高度和宽度;n为每像素的比特数,一般取8,即像素灰阶数为256. PSNR的单位是dB,数值越大表示失真越小。PSNR是最普遍和使用最为广泛的一种图像客观评价指标,然而

2017-03-17 17:11:38 1717

原创 ffmpeg RTP over TCP

char filepath[]="rtsp://admin:jjchen12345678@192.168.3.25:554/h264/ch1/main/av_stream";AVDictionary *optionsDict = NULL;av_register_all();avformat_network_init();pFormatCtx = avformat_alloc_

2017-03-16 17:48:27 2040

转载 网络传输过程

介绍 常言道:欲练神功,必先练好基本功。之前做了一个关于IP路由,默认网关和掩码的问答贴,做完这个帖子觉得如果对网络知识点做一个系统的阐述,应该会很有帮助。本系列文章着重于讲解网络管理实际应用中常常涉及的重要知识点,尽量以实用为主。准备写的几个章节暂时有(可能会有增减):网络传输交换机VLAN与Trunk路由(上)路由(下)链路聚

2017-03-15 11:58:40 1325

转载 linux下防火墙iptables原理及使用

iptables简介       netfilter/iptables(简称为iptables)组成Linux平台下的包过滤防火墙,与大多数的Linux软件一样,这个包过滤防火墙是免费的,它可以代替昂贵的商业防火墙解决方案,完成封包过滤、封包重定向和网络地址转换(NAT)等功能。iptables基础       规则(rules)其实就是网络管理员预定义的条件,

2017-03-15 11:57:25 1099

转载 防火墙对FTP的影响及故障排除

FTP是常见的基于TCP的网络服务,它使用了两个TCP连接来建立逻辑通信信道,即控制连接和数据连接。当客户端与服务器建立一个FTP会话时,使用TCP创建一个持久的控制连接以传递命令和应答。当发送文件和其它数据传输时,它们在独立的TCP数据连接上进行传递,这个连接根据需要创建和拆除。更为复杂的是,FTP标准指定了创建数据连接的两种不同方法,即正常(主动)数据连接和被动数据连接。FTP的控制连

2017-03-15 11:34:35 1345

转载 FTP服务器原理

FTP服务器原理21.1 FTP服务器原理 使用明码传输方式,且有相当多的安全危机历史。因此一般使用功能较少的vsftpd这个软件。 21.1.1 FTP功能简介 有以下功能文档传输与管理不同等级的用户身份:user,guest,anonymous命令记录与登录文件记录限制用户活动的目录:(change root,简称 chroot)即将登录用户的家

2017-03-15 11:16:35 881

转载 mysql老司机之路

mysql老司机之路MYSQL数据库基础:数据库帮我们解决以下数据存取难题:较大数据量事务控制持久化和数据安全高性能要求高并发访问关系型:mysql,oracle,sql server,postgresql 非关系型:Hadoop(大数据),monogoDB(文档型 ),redis(键值),casscandra(架构先进的分布式数据库) 区别:是否使用S

2017-03-15 11:10:00 248

转载 mysql数据类型

mysql数据类型整形INT                      4bytes      0-2^(4*8)SMALLINT            2bytes      0-2^(2*8)MEDIUMINT         3bytes      0-2^(3*8)BIGINT                8bytes      0-2^(8*8)TINY

2017-03-15 11:09:24 303

转载 数据库设计

数据库设计目标与目的学习目标:掌握日常数据库建表操作了解表设计的规范 何为表结构设计:表结构设计需要在正式进行开发之前完成根据产品需求将复杂的业务模型抽象出来 项目分析实践课程模型:类似电商类的网站用户:核心业务非核心业务 核心业务:交易相关订单详情,订单  商品

2017-03-15 11:08:51 361

转载 mysql权限管理

mysql权限管理mysql权限管理学习目标 学习掌握mysql赋权操作了解mysql权限验证流程 连接mysql的必要条件网络要通畅用户名和密码要正确数据库需要加IP白名单更细粒度的验证(库,表,列权限类型等)数据有哪些权限:Data PrvilegesDATA:SELECT,INSERT,UPDATE,DELETE

2017-03-15 11:07:06 421

转载 mysql-sql高级应用

mysql-sql高级应用sql语言进阶 典型操作 order by- select * from play_list order by createtime;- select * from play_list order by bookedcount desc,createtime asc;order by  语句用于根据指定的列对结果集

2017-03-15 11:06:38 223

转载 mysql数据对象

mysql数据对象 学习目标: 了解掌握常见的几种数据库对象学会如何创建具体的数据对象 mysql 常见的数据对象有哪些:DataBase/SchemaTableIndexView/Trigger/Function/Procedure 多Database用途:业务的隔离资源的隔离 表上的常用数据对象:

2017-03-15 11:05:31 1507

转载 mysql字符集

mysql字符集mysql字符集 字符集基础字符集:数据库中的字符集包含两层含义各种文字和符号的集合,包括各国家文字,标点符号,图形符号,数字等。字符的编码方式,即二进制数据与字符的映射规则; 字符集分类:ASCII:美国信息互换标准编码;英语和其他西欧语言;单字节编码,7位(bits)表示一个字符,共128字符。GBK:汉字内码扩展规范;中日韩

2017-03-15 11:04:45 168

转载 mysql事务

mysql事务 什么是事务 一系列有序的数据库操作:要么全部成功要么全部回退到操作前状态中间状态对其他连接不可见 事务的基本操作 基本操作说明start transaction;开始事务commit;提交(全部完成)rollback;回滚(回到初始状态

2017-03-15 11:04:15 253

转载 mysql存储引擎概述

mysql存储引擎概述 Mysql存储引擎特点有多种可选方案,可插拔,可修改存储引擎基于表选择使用何种存储引擎 为表选择存储引擎:mysql>create table test (a int) engine = innodb; 查看有多少种存储引擎:mysql>show engines 更改表的

2017-03-15 11:03:35 211

转载 innodb存储引擎

innodb存储引擎数据库和实例 数据库(database):物理操作系统文件或其他形式文件类型的集合实例(instance):mysql数据库由后台线程以及一个共享内存区组成。 通常情况下,两者是一对一关系;但是,在集群情况下可能存在一个数据库被多个数据实例使用的情况。 mysql实例在系统上的表现就是一个进程; InnoDB存储架构 

2017-03-15 11:00:59 212

基于live555的Rtsp服务器源码

基于live555的Rtsp服务器源码

2017-02-20

FFmpeg开发包

FFmpeg开发包

2017-02-16

空空如也

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

TA关注的人

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