live555 android,Android之live555构建RTSP Server
=====================
myRTSPServer.cpp 1.建立任务调度 scheduler = BasicTaskScheduler::createNew(); env = BasicUsageEnvironment::createNew(*scheduler); 2.建立RTP/RTCP端口 unsigned short rtpPortNumAudio = getDestAudioPort(); unsigned short rtcpPortNumAudio = rtpPortNumAudio +1; struct in_addr destinationAddress; destinationAddress.s_addr = our_inet_addr("192.168.10.100"); //不设置会导致组播,client端IP const Port rtpPortAudio(rtpPortNumAudio); const Port rtcpPortAudio(rtcpPortNumAudio); rtpGroupsockAudio = new Groupsock(*env, destinationAddress, rtpPortAudio, ttl); rtcpGroupsockAudio = new Groupsock(*env, destinationAddress, rtcpPortAudio, ttl); 3.建立会话 CreateAudioSink(rtpGroupsockAudio); audioRTCP = RTCPInstance::createNew(*env, rtcpGroupsockAudio, getBandwidthAudio(), (const unsigned char*)getName(), audioSink, NULL /* we're a server */, isSSM); 4.创建RTSPServer rtspServer = RTSPServer::createNew(*env,8554); sms= ServerMediaSession::createNew(*env, "tanktest", "Audio Stream", "Session streamed by \"Tank\"", isSSM); sms->addSubsession(PassiveServerMediaSubsession::createNew(*audioSink, audioRTCP)); rtspServer->addServerMediaSession(sms); char* url = rtspServer->rtspURL(sms); strcpy(remoteUrl,url); 注意: live555/liveMedia/RTSPServer.cpp void RTSPServer::RTSPClientSession ::handleCmd_SETUP(char const* cseq, char const* urlPreSuffix, char const* urlSuffix, char const* fullRequestStr); live555/liveMedia/PassiveServerMediaSubsession.cpp void PassiveServerMediaSubsession ::getStreamParameters(unsigned clientSessionId, netAddressBits clientAddress, Port const& /*clientRTPPort*/, Port const& clientRTCPPort, int /*tcpSocketNum*/, unsigned char /*rtpChannelId*/, unsigned char /*rtcpChannelId*/, netAddressBits& destinationAddress, u_int8_t& destinationTTL, Boolean& isMulticast, Port& serverRTPPort, Port& serverRTCPPort, void*& streamToken);
live555 android,Android之live555构建RTSP Server相关推荐
- 【视频开发】RTSP SERVER(基于live555)详细设计
/* *本文基于LIVE555的嵌入式的RTSP流媒体服务器一个设计文档,个中细节现剖于此,有需者可参考指正,同时也方便后期自己查阅.(本版本是基于2011年的live555) 作者:llf_17@q ...
- live555 android 直播,通过live555实现H264 RTSP直播
前面的文章中介绍了<H264视频通过RTMP流直播>,下面将介绍一下如何将H264实时视频通过RTSP直播. 实现思路是将视频流发送给live555, 由live555来实现H264数据流 ...
- hi3516a——armlinux下搭建live555 RTSP Server
前言 上一篇文章中,在ubuntu下搭建了RTSP Server,见传送门.本文将把live555源码包交叉编译后再hi3516a开发板上运行live555 RTSP Server. 源码包下载 见上 ...
- android rtsp server or clinet work success
感谢 pedroSG94大神的rtmp-rtsp-stream-client-java的库 此为我改造的一个类代码地址 pedroSG94提供了camera,录屏和opengl渲染的demo类, 本人 ...
- live555学习笔记【3】---RTSP服务器(一)
Live555库是一个使用开放标准协议如RTP/RTCP.RTSP.SIP等实现多媒体流式传输的开源C 库集.这些函数库可以在Unix.Windows.QNX等操作系统下编译使用,基于此建立RTSP/ ...
- Android平台基于RTMP或RTSP的一对一音视频互动技术方案探讨
背景 随着智能门禁等物联网产品的普及,越来越多的开发者对音视频互动体验提出了更高的要求.目前市面上大多一对一互动都是基于WebRTC,优点不再赘述,我们这里先说说可能需要面临的问题:WebRTC的服务 ...
- android项目两种构建方式的整合(Eclipse/idea和Android Studio)
android的两种构建方式 目前android主要有两种构建方式,一种基于ant(传统的),另一种是13年Google/IO上新推出基于Gralde的构建(Android Studio).从sdk的 ...
- android 引用jar的r文件,正确的方法来处理Android库的ant构建. Build从jar文件中排除R.class...
目前遇到的问题是我们使用ant生成的构建版本不包含R.class文件.看一下ADT build.xml,我看到了这个: ... includes="**/*.class" excl ...
- Android Studio下项目构建的Gradle配置及打包应用变体
Gradle简介 Gradle是一个自动化构建工具,采用Groovy的Domain Specific Language(领域特定语言)来描述和控制构建逻辑.具有语法简洁.可读性强.配置灵活等特点. ...
最新文章
- 14个数据库的设计技巧 (来自Blogcn中我的窝)
- Android--视频播放器
- 【MySQL性能优化】概述与优化方面(一)
- linux 后台程序 cout输入到文件,istringstream在读文件时候的应用
- 检测对抗样本_避免使用对抗性T恤进行检测
- shields 徽标_符号,标志,文字标记:徽标类型的综合指南
- 《下辈子还教书》经典语录(1)
- python自动化教程_Python 任务自动化工具 tox 教程
- Linux less命令:查看文件内容
- 2012禁用ip隧道 win_Windows 7下关闭IPV6隧道的技巧方法
- 三星Galaxy S22首发!4nm旗舰芯Exynos 2200跑分出炉
- 计算机毕业设计ssm校园办公管理系统
- 嵌入式Linux开发笔记(韦东山2)
- java hashmap value排序_按照Value对HashMap排序
- 高中计算机技术基础教学ppt,高中信息技术教学课件
- PS打不开php,ps打不开未响应怎么办
- 使用jmeter进行api接口压力测试
- WEB实现Excel下载的一种方式--JAVA EXCEL
- 1960-2019年世界银行各国制造业增加值
- echarts的渐变色配置 LinearGradient, 饼图默认渐变颜色设置不同的角度
热门文章
- 有哪些值得推荐的找电子书的网站?
- c++ 操作Word
- Unity3D魔方游戏如何完成魔方的旋转
- U811.1接口EAI系列之二--生成销售出库单调用U8的EAI通用处理方法--PowerBuilder语言...
- swoole 捕捉php错误,常见错误 - swoole - yoyo
- maven多模块依赖导入失败以及私服下载包卡死
- setInterval定时器封装(settimeout\requestAnimationFrame),代码抽离,浏览器切换后定时器停止执行
- setTimeout开始,暂停,停止功能
- vue动态style添加背景图backgroundImage,结合computed
- c语言实现图片过渡效果飞入,用css3实现转换过渡和动画效果