回复SRS回调函数on_play的响应体怎么填?
时间: 2023-07-13 22:10:59 浏览: 93
SRS回调函数on_play的响应体,可以填写一些关于播放状态的信息,比如播放是否成功,当前播放的时间等等。具体响应体的内容可以参考SRS的文档或者源码。
下面是一个简单的示例响应体:
```c++
SrsMessageHeader header;
header.initialize(0, 0, SrsConsts::RTMP_MSG_AMF0CommandMessage, 0, SrsConsts::RTMP_CID_OverStream);
SrsAmf0Object* data = SrsAmf0Any::object();
data->set("code", SrsAmf0Any::str("NetStream.Play.Start"));
data->set("description", SrsAmf0Any::str("Started playing stream."));
data->set("level", SrsAmf0Any::str("status"));
data->set("clientid", SrsAmf0Any::str("0.0.0.0"));
data->set("duration", SrsAmf0Any::number(0));
data->set("width", SrsAmf0Any::number(0));
data->set("height", SrsAmf0Any::number(0));
SrsSharedPtrMessage payload = SrsSharedPtrMessage::create();
payload->header = header;
payload->payload = data->raw();
// 发送响应体
srs_write_message(payload.get(), _skt);
```
这里的响应体使用了AMF0编码格式,包含了一些关于播放状态的信息,比如code、description、level、duration等等。对于每个具体的应用场景,响应体的内容会有所不同,需要根据实际情况进行填写。
阅读全文