15.live555mediaserver-play请求与响应

live555工程代码路径
live555工程在我的gitee下(doc下有思维导图、drawio图):
live555
https://gitee.com/lure_ai/live555/tree/master

章节目录链接
0.前言——章节目录链接与为何要写这个?
https://blog.csdn.net/yhb1206/article/details/127259190?spm=1001.2014.3001.5502

学习demo
live555mediaserver.cpp

学习线索和姿势
1.学习的线索和姿势

网络编程
流媒体的地基是网络编程(socket编程)。
[网络编程学习]-0.学习路线

绘图规则
本文的对象图和思维导图遵守的规则详见:
2.绘图规则

非阻塞服务端网络编程流程
socket创建、bind、listen、select、accept、select、recv/send-close。

rtsp协商流程
options、describe、setup、play、pause、teardown、get parameter、set parameter

本节内容和目标
(1)rtsp协议的setup请求与响应
(2)思维导图绘制
(3)wireshark抓包
(4)对象图
(5)延时任务管理双向循环链表探索

正式开始
SETUP协商完事,VLC接着下发了PLAY信令,开始PLAY协商。

1.客户端PLAY请求报文

在这里插入图片描述

2.PLAY响应

响应报文如下
在这里插入图片描述

如何组成的响应报文,如下慢慢学习。

其实应该带着问题来学习,这样最好,我看到这的时候有问题:
(1) play 的服务端响应流程,mkv文件、h264文件等的流程,是不是会抽象出通用的流程?
(2)然后就是分离音视频数据的,如何分离的?——算了,我也不想知道,太细了、大致流程就行了。
(3)音视频rtp打包和发送live555是如何实现的?这个应该是属于rtp协议线索阶段,不过也是play交互完成后要做的事。

关于play流程,网上也有,
https://blog.csdn.net/htbsoft0556/article/details/21528045

简单的play流程思维导图如下:
在这里插入图片描述

可以看到play流程简单,实现复杂——先查找播放的起始位置,然后就开始了读取媒体文件、rtp打包、rtp发送流程,最后组响应包。

从这可以发现,在play阶段会先发送一帧数据的rtp包,然后再回响应包。但是具体读取媒体文件、rtp打包、rtp发送流程,放到下一节学习。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值