自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

轮子工厂

物有本末,事有终始,知所先后,则近道矣。

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

转载 Live555性能优化实践

网上很多文章提到了Live555的单线程任务调度模式,在用作RTSP服务时,导致了在并发量较多或者磁盘性能不佳时会导致性能较差,并发数受限。笔者通过在做基于海思3531编码器和解码器的过程当中(提供基于2路H264+1路AAC的TS流编码(输入为RTSP TS流)和RTSP流媒体解码播放),有以下2点收获,特分享给有需要的同仁。优化1:同步读取数据源修改为异步读取数据源, Fr

2017-06-30 07:15:59 3449 1

转载 VLC对Live555 RTSP视频直播稳定性问题

从不同时间测试来看,2015 VLC安卓版对rtsp兼容不太好,很不稳定;2016年已经稳定下来了,但官网提供的android app还是存在直播时卡机问题,开发人员需要进行提取去掉部分功能才能集成到自己的app中。 若使用live555做为网络直播流媒体服务,当网络延迟造成播放速度快于流下载的速度,即doGetNextFrame函数调用时流还没有传输过来;此时,用户需要增加延迟N毫秒执行

2017-06-30 06:59:00 3034

原创 live555学习之基本类介绍及计划任务深度探讨

liveMedia项目的源代码包括四个基本的库,各种测试代码以及Media Server。四个基本的库分别是:UsageEnvironment&TaskScheduler, groupsock, liveMedia和BasicUsageEnvironment。1,基础类介绍:BasicUsageEnvironment和UsageEnvironment中的类都是用于整个系

2017-06-29 07:49:20 371

转载 linux之学习live555视频笔记

开发板上交叉编译live555步骤笔记交叉编译live555MediaServer流媒体服务器RTP/RTCP, RTSP, SIPluther@gliethttp:~/live$ vi config.armlinux修改为CROSS_COMPILE=arm-linux-如果静态编译还需要做如下设置config.armlinux如下2处加入-static编译选项COMPILE_OPTS

2017-06-29 07:00:03 856

转载 C中如何调用C++函数

前阵子被问及一个在C中如何调用C++函数的问题,当时简单回答是将函数用extern "C"声明,当被问及如何将类内成员函数声明时,一时语塞,后来网上查了下,网上有一翻译C++之父的文章可以作为解答,遂拿来Mark一下。将 C++ 函数声明为``extern "C"''(在你的 C++ 代码里做这个声明),然后调用它(在你的 C 或者 C++ 代码里调用)。例如:// C++ code:e

2017-06-21 07:02:21 427

转载 Eclipse控制台输出信息的控制

当你在Eclipse中 running/debugging一个应用程序的时候,有关该应用程序的运行调试信息及日志信息都会输出到控制台(console )显示,但是Eclipse只会显示最后一部分的日志信息,如果你的应用程序会产生大量的运行调试信息及日志信息,你可能会想保持这些信息到文件中,以便查看分析。有三种方法仅供参考:(1)、我们可以设置Eclipse保存控制台文件。打开Run

2017-06-20 13:27:29 7950 1

转载 Eclipse CDT环境下编写、调试、运行C++程序详谈

前面在《Eclipse下编写C++程序——CDT环境搭建》博文中详细介绍了如何在Eclipse中安装CDT插件搭建C/C++开发环境,考虑到C/C++运行程序与Java、Python有一定的差异,也即在运行之前需要手动编译。下面就详细介绍如何手动编译与运行Eclipse-CDT环境下的C/C++程序(前提是C/C++的编译器MinGW已经在系统中安装成功,推荐下载地址:http://sourcef

2017-06-20 13:26:39 3496 1

转载 使用eclipse编译和管理live555源码

这是一个eclipse使用入门教程:live555使用makefile管理项目,当需要自己添加源码文件时,很麻烦,需要自己修改各文件间的依赖关系.其实我们可以很容易地将live555移植成eclipse自己的c++工程.这样可以让eclipse自动管理文件之间的关系.编译环境是在windows下的Mingw.安装mingw同时会安装MSYS,MSYS是一个命令行程序.要用mingw编译程序

2017-06-20 08:01:13 499

转载 关于ES、PES、PS以及TS码流

一、基本概念1)ES     ES--Elementary  Streams  (原始流)是直接从编码器出来的数据流,可以是编码过的视频数据流(H.264,MJPEG等),音频数据流(AAC),或其他编码数据流的统称。ES流经过PES打包器之后,被转换成PES包。    ES是只包含一种内容的数据流,如只含视频或只含音频等,打包之后的PES也是只含一种性质的ES,如只含视频

2017-06-14 07:00:54 528

转载 C语言中利用setjmp和longjmp做异常处理

错误处理是任何语言都需要解决的问题,只有不能保证100%的正确运行,就需要有处理错误的机制。异常处理就是其中的一种错误处理方式。1 过程活动记录(Active Record)C语言中每当有一个函数调用时,就会在堆栈(Stack)上准备一个被称为AR的结构,抛开具体编译器实现细节的不同,这个AR基本结构如下所示。 每当遇到一次函数调用的语句,C编译器都会产生出汇编代码来在

2017-06-13 21:57:23 464

转载 基于Hi3516A的H265 IPC LIVE555 开发基本原理

1 系统工作原理系统以Hi3516A开发平台(由高分辨率1080 p的AR0330摄像头模块和带千兆以太网功能的Hi3516A控制器模块组成硬件平台,并在硬件平台上烧写了U-Boot、Linux内核和加载了相关 驱动)作为基础,在该平台上开发应用程序。首先,进程A获取来自AR0330摄像头模块的YUV原始视频图像,并使用H265压缩编码算法进行压缩编码获 得H265格式码流,该过程

2017-06-10 22:34:12 5101 2

原创 以live555为例来分析H264码流的打包发送

H.264 视频 RTP 负载格式1. 网络抽象层单元类型 (NALU)NALU 头由一个字节组成, 它的语法如下:      +---------------+      |0|1|2|3|4|5|6|7|      +-+-+-+-+-+-+-+-+      |F|NRI|  Type   |      +---------------+F: 1 个比特.

2017-06-08 21:48:38 2512

转载 live555发送H264

继承关系:H264BufferedPacket->BufferedPacket BufferedPacket用于存储媒体数据的RTP包内容,它的子类具体到媒体类型,如H264BufferedPacket类。值得注意的有两点:  1)构造函数BufferedPacket()中申请了MAX_PACKET_SIZE(10000)大小的unsigned char数组。  2)一个重要函数是

2017-06-08 21:18:30 1038

转载 live555 linux 编译

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

2017-06-08 08:11:41 622

原创 Live555服务端与客户端的交互解析

1. 为什么有 RTSP?这要从 RTP 说起。RTP 是实时传输协议。具体请参考 RFC3550(http://www.ietf.org/rfc/rfc3550.txt)。RTP 在实际应用中,是被动推送的方式。即如下图的流程。则将会产生如下对话:(M: Media Server; C: Client)C:谁给我发视频呢?M:我!C:谁让你给我发视频的?M

2017-06-07 22:37:27 3252

原创 主流开源流媒体服务器收集

流媒体解决方案 Live555流媒体平台框架 EasyDarwin实时流媒体播放服务器程序DarwinStreamingSrvr流媒体实时传输开发包 jrtplib多媒体处理工具 ffmpeg多媒体编码工具包LibavFlash流媒体服务器 Red5流媒体服务器 Open Streaming ServerFMS流媒体服务器Wowza流媒体服务器开源流媒体平台

2017-06-03 17:59:45 3375

转载 [RTSP]live555-openRTSP客户端流程

1、创建TaskScheduler和BasicUsageEnvironment类;2、命令行解析,获取流媒体地址和其他选项;3、创建RTSPClient对象;4、如果需要,RTSPClient对象发送OPTIONS命令并解析服务端响应,获取可以使用命令集。5、RTSPClient对象发送DESCRIBE命令,并从获服务端反馈中获取流媒体相关描述SDP字串。6、创建MediaSe

2017-06-03 07:21:01 1882

candictionary_v1_cn.pdf

本词典简要介绍 CAN 技术中使用的词汇和缩写。它并非用于代替任何标准或规范。借助CAN 词典,CAN 新用户可不必查阅标准和规范就能很方便地了解技术文章、手册等。

2020-05-05

字库生成器

字库生成器,可直接生成使用。 无需注册即可使用。。。

2017-11-01

用Eclipse和GDB构建ARM交叉编译和在线调试环境

用Eclipse和GDB构建ARM交叉编译和在线调试环境,很详细,可以参考

2017-05-02

Hi3515C H.264编解码处理器用户指南

Hi3520D/Hi3515A/Hi3515C H.264编解码处理器用户指南

2017-03-06

STM32与AVR的IIC通信例程

STM32F103作为主机,AVR的Mega8A作为从机惊醒通信,已验证没有问题,可以直接使用。

2017-03-04

H264文件查看器

查看H264文件结构层次的工具,可以很方面的查看文件的片组信息。

2017-02-28

AVS到MPEG-4的视频转码研究与实现

AVS到MPEG-4的视频转码研究与实现,随着多媒体技术的飞速发展,无线移动网、因特网等各种网络之间的融合已成为趋势,实现不同网络中视频编码方案之间的无缝连接变得越来越重要。

2017-02-23

h264中文协议(中英文对照)H264解码手册

h264中文协议(中英文对照)H264解码手册

2017-02-19

HEVC(H265)标准文档JCTVC-L1003-v9

HEVC(H265)标准文档JCTVC-L1003-v9,纯英文版

2017-02-19

空空如也

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

TA关注的人

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