live555的使用(转载)
Live555 是一个为流媒体提供解决方案的跨平台的C++开源项目,它实现了对标准流媒体传输协议如RTP/RTCP、RTSP、SIP等的支持。Live555实现 了对多种音视频编码格式的音视频数据的流化、接收和处理等支持,包括MPEG、H.263+、DV、JPEG视频和多种音频编码。同时由于良好的设 计,Live555非常容易扩展对其他格式的支持。目前,Live555已经被用于多款播放器的流媒体播放功能的实现,如VLC(VideoLan)、 MPlayer。下面介绍Live555的基本使用方法。
编译
编译方法:
./genMakefiles <os-platform>
如在Linux 下解压Live555后进入目录:
#./genMakefiles linux
#Make
使用
1)进入mediaServer目录启动服务器:
[root@localhost mediaServer]# cd mediaServer]
[root@localhost mediaServer]# ./live555MediaServer
LIVE555 Media Server
version 0.5 (LIVE555 Streaming Media library version 2010.07.29).
Play streams from this server using the URL
rtsp://192.168.1.120/<filename>
where <filename> is a file present in the current directory.
Each file's type is inferred from its name suffix:
".aac" => an AAC Audio (ADTS format) file
".amr" => an AMR Audio file
".m4e" => a MPEG-4 Video Elementary Stream file
".dv" => a DV Video file
".mp3" => a MPEG-1 or 2 Audio file
".mpg" => a MPEG-1 or 2 Program Stream (audio+video) file
".ts" => a MPEG Transport Stream file
(a ".tsx" index file - if present - provides server 'trick play' support)
".wav" => a WAV Audio file
See http://www.live555.com/mediaServer/ for additional documentation.
2)进入testProgs使用客户端工具播放mp3
[root@localhost testProgs]# ./openRTSP rtsp://192.168.1.120/1.mp3
Opening connection to 192.168.1.120, port 554...
...remote connection opened
Sending request: OPTIONS rtsp://192.168.1.120/1.mp3 RTSP/1.0
CSeq: 2
User-Agent: ./openRTSP (LIVE555 Streaming Media v2010.07.29)
Received 152 new bytes of response data.
Received a complete OPTIONS response:
RTSP/1.0 200 OK
CSeq: 2
Date: Sun, Aug 01 2010 05:17:32 GMT
Public: OPTIONS, DESCRIBE, SETUP, TEARDOWN, PLAY, PAUSE, GET_PARAMETER, SET_PARAMETER
Sending request: DESCRIBE rtsp://192.168.1.120/1.mp3 RTSP/1.0
CSeq: 3
User-Agent: ./openRTSP (LIVE555 Streaming Media v2010.07.29)
Accept: application/sdp
Received 547 new bytes of response data.
Received a complete DESCRIBE response:
RTSP/1.0 200 OK
CSeq: 3
Date: Sun, Aug 01 2010 05:17:32 GMT
Content-Base: rtsp://192.168.1.120/1.mp3/
Content-Type: application/sdp
Content-Length: 387
v=0
o=- 1280639653739259 1 IN IP4 192.168.1.120
s=MPEG-1 or 2 Audio, streamed by the LIVE555 Media Server
i=1.mp3
t=0 0
a=tool:LIVE555 Streaming Media v2010.07.29
a=type:broadcast
a=control:*
a=range:npt=0-219.555
a=x-qt-text-nam:MPEG-1 or 2 Audio, streamed by the LIVE555 Media Server
a=x-qt-text-inf:1.mp3
m=audio 0 RTP/AVP 14
c=IN IP4 0.0.0.0
b=AS:128
a=control:track1
Opened URL "rtsp://192.168.1.120/1.mp3", returning a SDP description:
v=0
o=- 1280639653739259 1 IN IP4 192.168.1.120
s=MPEG-1 or 2 Audio, streamed by the LIVE555 Media Server
i=1.mp3
t=0 0
a=tool:LIVE555 Streaming Media v2010.07.29
a=type:broadcast
a=control:*
a=range:npt=0-219.555
a=x-qt-text-nam:MPEG-1 or 2 Audio, streamed by the LIVE555 Media Server
a=x-qt-text-inf:1.mp3
m=audio 0 RTP/AVP 14
c=IN IP4 0.0.0.0
b=AS:128
a=control:track1
Created receiver for "audio/MPA" subsession (client ports 32772-32773)
Sending request: SETUP rtsp://192.168.1.120/1.mp3/track1 RTSP/1.0
CSeq: 4
User-Agent: ./openRTSP (LIVE555 Streaming Media v2010.07.29)
Transport: RTP/AVP;unicast;client_port=32772-32773
Received 205 new bytes of response data.
Received a complete SETUP response:
RTSP/1.0 200 OK
CSeq: 4
Date: Sun, Aug 01 2010 05:17:32 GMT
Transport: RTP/AVP;unicast;destination=192.168.1.120;source=192.168.1.120;client_port=32772-32773;server_port=6970-6971
Session: 624DAEF4
Setup "audio/MPA" subsession (client ports 32772-32773)
Created output file: "audio-MPA-1"
Sending request: PLAY rtsp://192.168.1.120/1.mp3/ RTSP/1.0
CSeq: 5
User-Agent: ./openRTSP (LIVE555 Streaming Media v2010.07.29)
Session: 624DAEF4
Range: npt=0.000-219.555
Received 188 new bytes of response data.
Received a complete PLAY response:
RTSP/1.0 200 OK
CSeq: 5
Date: Sun, Aug 01 2010 05:17:33 GMT
Range: npt=0.000-219.555
Session: 624DAEF4
RTP-Info: url=rtsp://192.168.1.120/1.mp3/track1;seq=38835;rtptime=1769974566
Started playing session
Receiving streamed data (for up to 224.555000 seconds)...
Sending request: TEARDOWN rtsp://192.168.1.120/1.mp3/ RTSP/1.0
CSeq: 6
User-Agent: ./openRTSP (LIVE555 Streaming Media v2010.07.29)
Session: 624DAEF4
Received 65 new bytes of response data.
Received a complete TEARDOWN response:
RTSP/1.0 200 OK
CSeq: 6
Date: Sun, Aug 01 2010 05:21:17 GMT
live555的使用(转载)的更多相关文章
- live555—VS2010/VS2013 下live555编译、使用及测试(转载)
Ⅰ live555简介 Live555 是一个为流媒体提供解决方案的跨平台的C++开源项目,它实现了对标准流媒体传输协议如RTP/RTCP.RTSP.SIP等 的支持.Live555实现了对多种音视频 ...
- 40 网络相关函数(八)——live555源码阅读(四)网络
40 网络相关函数(八)——live555源码阅读(四)网络 40 网络相关函数(八)——live555源码阅读(四)网络 简介 15)writeSocket向套接口写数据 TTL的概念 函数send ...
- 39 网络相关函数(七)——live555源码阅读(四)网络
39 网络相关函数(七)——live555源码阅读(四)网络 39 网络相关函数(七)——live555源码阅读(四)网络 简介 14)readSocket从套接口读取数据 recv/recvfrom ...
- 38 网络相关函数(六)——live555源码阅读(四)网络
38 网络相关函数(六)——live555源码阅读(四)网络 38 网络相关函数(六)——live555源码阅读(四)网络 简介 12)makeSocketNonBlocking和makeSocket ...
- 37 网络相关函数(五)——live555源码阅读(四)网络
37 网络相关函数(五)——live555源码阅读(四)网络 37 网络相关函数(五)——live555源码阅读(四)网络 简介 10)MAKE_SOCKADDR_IN构建sockaddr_in结构体 ...
- 36 网络相关函数(四)——live555源码阅读(四)网络
36 网络相关函数(四)——live555源码阅读(四)网络 36 网络相关函数(四)——live555源码阅读(四)网络 简介 7)createSocket创建socket方法 8)closeSoc ...
- 35 网络相关函数(三)——live555源码阅读(四)网络
35 网络相关函数(三)——live555源码阅读(四)网络 35 网络相关函数(三)——live555源码阅读(四)网络 简介 5)NoReuse不重用地址类 6)initializeWinsock ...
- 34 网络相关函数(二)——live555源码阅读(四)网络
34 网络相关函数(二)——live555源码阅读(四)网络 34 网络相关函数(二)——live555源码阅读(四)网络 2)socketErr 套接口错误 3)groupsockPriv函数 4) ...
- 33 网络相关函数(一)——live555源码阅读(四)网络
33 网络相关函数(一)——live555源码阅读(四)网络 33 网络相关函数(一)——live555源码阅读(四)网络 简介 1)IsMulticastAddress多播(组播)地址判断函数 多播 ...
随机推荐
- Partition-wise join
什么是“partition-wise join”呢?我们将用一个比喻来解释它的好处. 假设两个人,Logan和Shannon,决定住在一起.如果他们每个人都已经有了自己的住所,他们就会拥有很多你在任何 ...
- _stdcallthunk
// c:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.14.26428\atlmfc\in ...
- 运维笔记--ubuntu安装指定版本的RabbitMQ
场景描述: 日常开发or生产环境经常会需要安装指定版本的软件,出于和其他软件的配合兼容性,以及稳定性的考虑. 现在我们的需求是安装指定版本的RabbitMQ,版本号: 操作步骤: 注意事项: 异常处理 ...
- win10 mount error 112 : host is down解决方案
摘自:https://www.baidu.com/link?url=xZrOVRqR9gqGRq0esfVaivByR9E5-ixyAuKsQ_8Hiedl1sY6J7ezBlgSW3oe_X-koo ...
- App installation failed (A valid provisioning profile for this executable was not found)
真机调试build success ,App installation failed (A valid provisioning profile for this executable was not ...
- js set集合转数组 Array.from的使用方法
1.set集合转化Array数组 注意:这个可以使用过滤数组中的重复的元素 你可以先把数组转化为set集合 然后在把这个集合通过Array.from这个方法把集合在转化为数组 var set = n ...
- sql多列值一行显示
select stuff(( select ',' + UserNM from tblSysUser for xml path('')), 1,1,'')
- Kubernetes 基于 RBAC 的授权(十六)
目录 一.RBAC介绍 1.1.角色和集群角色 1.2.RoleBinding 和 ClusterRoleBinding 1.3.资源 1.4.主体 二.命令行工具 2.1.kubectl creat ...
- Go语言中的值类型和引用类型
一.值类型和引用类型值类型:int.float.bool和string这些类型都属于值类型,使用这些类型的变量直接指向存在内存中的值,值类型的变量的值存储在栈中.当使用等号=将一个变量的值赋给另一个变 ...
- XML解析详解|乐字节
大家好,乐字节的小乐又来了,Java技术分享哪里少的了小乐!上次我们说了可扩展标记语言XML之二:XML语言格式规范.文档组成,本文将介绍重点——XML解析. 基本的解析方式有两种:一种叫 SAX ...