Live555
文章平均质量分 75
li_wen01
liwen01
展开
-
使用live555类库实现的网络直播系统——直播H264文件
下载live555最新代码,编译生成live555 的库文件:libBasicUsageEnvironment.a libgroupsock.a libliveMedia.a libUsageEnvironment.a ,使用这4个库再加上live555 自带的测试程序,可以很简单的实现live555 的直播。live555提供的直播程序是只能直播之前已经录制好的视频(与点播不同)。...原创 2018-04-24 11:08:17 · 5986 阅读 · 5 评论 -
live555 客户端的实现
在live555中客户端需要请求服务端建立连接和数据发送,在live555自带的测试程序testRTSPClient 中已经实现了连接的建立和数据的请求,该实例只是接收数据然后打印出数据的一些信息。如果需要从中获取到数据来,只需要修改afterGettingFrame 函数就可以了。值得提醒的是该程序可以实现多数据流请求,在afterGettingFrame 中获取数据的时候,可以通过fS...原创 2018-04-24 11:09:09 · 3168 阅读 · 0 评论 -
live555: The input frame data was too large for our buffer size 解决方法
在做live555 直播的时候,输入的图片尺寸是320*240 的时候,live555 输出的RTSP数据流可以正常解码,运行没有出现异常现象,但是把图片尺寸改为640*480的时候,就出现了问题: MultiFramedRTPSink::afterGettingFrame1(): The input frame data was too large for our buffer ...原创 2018-04-24 11:08:38 · 7369 阅读 · 0 评论 -
live555调试:无法确定源地址问题
在一台新的linux电脑上编译运行live555,出现错误:Unable to determine our source address: This computer has an invalid IP address: 0.0.0.0 的问题,出现这个问题多半是系统防火墙的问题,网上有解决方法是在/etc/sysconfig/iptables 添加:-A INPUT -m state...原创 2018-04-24 11:02:37 · 2966 阅读 · 0 评论 -
Live555学习笔记(一)—— live555概述
IVE555是为流媒体提供解决方案的跨平台C++开源项目。一、各库简要介绍 LIVE555下包含LiveMedia、UsageEnvironment、BasicUsageEnvironment、GroupSock库,MediaServer简单服务器程序以及其他多个测试demo。 LiveMedia库:包含一系列处理不同编码格式和封装格式的类,基类是Medium。 UsageEnv...原创 2018-04-24 11:01:09 · 10004 阅读 · 1 评论 -
Live555学习笔记(三)—— RTSP命令处理及RTP,RTCP服务建立
在上一章中我们已经知道了RTSP服务运作,RTSP创建之后就会一直调用RTSPServer::RTSPClientConnection::handleRequestBytes函数查询客户端的命令(OPTIONS, DESCRIBE, SETUP, TEARDOWN, PLAY, PAUSE, GET_PARAMETER, SET_PARAMETER),如果接收到命令则进入相应的命令处理函数执行。其...原创 2018-04-24 11:01:03 · 5599 阅读 · 1 评论 -
Live555学习笔记(四)—— RTP数据流向分析
本文先分析流文件数据的打包和发送,然后再分析live555 的数据采集,其中大部分是Live555的源码跟踪分析,涉及到JPEG的则是自己在live55库上添加的代码。一、RTP数据打包发送分析live555在接收到客户端的play命令后,开始媒体流数据传输。它的数据打包过程还是比较复杂的。上图是所涉及到函数之间的调用关系。RTP Server 接收到客户端命令 play后调用的函数是 h...原创 2018-04-24 11:00:47 · 5154 阅读 · 2 评论 -
Live555学习笔记(二)—— RTSP服务运作分析
知道了Live555 的基础知识,但我们还是不清楚RTSP,RTP,RTCP它们之间是如何运作的。我们首先分析RTSP服务运作,它的函数调用关系如上图所示。从上面的函数调用流程图我们知道,RTSP先是先创建一个TCP socket 来监听客户端的连接。如果客户端没有发起连接请求,那么RTSP就一直循环监听客户端的连接。如果客户端发起了连接,那么就创建一个客户会话,并把该会话加入到调度任务,该会话就...原创 2018-04-24 11:00:56 · 4142 阅读 · 2 评论 -
使用live555 直播来自v4l2的摄像头数据
使用live555 直播来自v4l2的摄像头数据,在我的这个工程中,基本思路是:使用V4L2采集摄像头数据,然后使用x264库对摄像头数据进行编码,编成H264数据格式,然后把数据写入到命名管道中。最后使用live555 从管道中读出数据发送出去,实现视频的直播。 在我的工程调试过程中,使用的是罗技C270摄像头,出来的是YUYV数据格式。x264和live555 使用最新的库。.........原创 2018-04-24 11:08:44 · 15446 阅读 · 119 评论