F君就是FOWARD
2016-04-14 07:29
采纳率: 33.3%
浏览 3.5k
已采纳

利用live555完成RTSP客户端编写,不明白session与subsession区别

各位大神,我在看别人写的liv555客户端代码的时候,遇到点问题不是太明白,想请教一下:
1.在客户端向服务器发送完DESCRIBE之后,接受到服务器返回的SDP信息之后,不是应该利用这个SDP信息完成SESSION会话的建立嘛?
我的理解是之后只要发送”SETUP,PALY“就可以开始通过UDP接收流数据啦,但是我发现客户端源码内多了一个步骤:图片说明
从上面的截图可以看到,首先是通过返回的SDP信息,sdpDescription来完成MediaSession的创建,返回值为scs.session,函数声明如下:图片说明
我觉得此时这个会话不是创建好了吗,然后就应该发送SETUP PLAY开始接受数据啦,但是实际上还要创建MediaSubsession,并且注释这么说得:
“然后,为这个会话创建source object(??源对象??),我们通过遍历这个会话的每一个subsession来完成,然后在每个subsession来完成”SETUP“的发送,
我不懂这里subsession什么意思啊,是不是这个会话中的每一个图像帧就是一个subsession?
小弟才学习这个,各位见笑了,
我在网上没查到这方面的解释,只看到一句话”ServerMediaSession原先说代表一个流,其实是不准确的。它代表的是server端的一个媒体的名字,而说ServerMediaSubsession代表一个Track是准确的。以后流指的是那些有数据流动的组合。 “

  • 写回答
  • 好问题 提建议
  • 关注问题
  • 收藏
  • 邀请回答

2条回答 默认 最新

  • qq_34647378 2016-04-14 09:22
    已采纳
    已采纳该答案
    评论
    解决 无用
    打赏 举报
  • F君就是FOWARD 2016-04-14 12:27

    还是说,一个session其实可以包含 。264,.acc等,然后用subsession来分别提取?

    评论
    解决 无用
    打赏 举报

相关推荐 更多相似问题