MSDC 4.3 接口规范(7)

183 篇文章 13 订阅
14 篇文章 0 订阅

4.4 流媒体服务管理

以下部分定义了一组调用来管理流服务的启动/停止顺序。

4.4.1 服务状态

图 4-18 显示了应用程序可见的流服务状态。 根据 MSDC 采取的操作,服务可能会从一种状态移动到另一种状态。
在这里插入图片描述

  • STOPPED– 服务的默认状态。 该服务可供用户使用,但尚未启动。
    – 如果用户停止已经启动或停止的服务,它会进入停止状态。 发生这种情况时,应用程序会收到 streamingServiceStopped() 通知(请参阅第 4.4.3 节)。
  • STARTED– 当设备上提供流数据(如果网络上可用)时,服务将移至已启动。 当 Streaming 服务状态变为 STARTED 时,应用程序会收到 streamingServiceStarted() 通知(参见第 4.4.2 节)。
  • STALLED – 如果处于 STARTED 状态的服务存在导致流数据对 DASH 客户端不可用的临时问题,则 MSDC 将服务移至 STALLED。 当流服务状态变为 STALLED 时,streamingServiceStalled() 会通知应用程序(参见第 4.4.5.1 节)。
    – STALLED 预计是一个临时状态。 一旦 MSDC 可以从网络获取流数据,它就会将其移至 STARTED。 或者,应用程序可以选择使用 streamingServiceStopped() 将服务移动到 STOPPED(参见第 4.4.3 节)。

注意:图 4-18 中没有显示两个临时中间状态:

  • START_REQUESTED — 当应用程序请求启动服务但尚未收到 streamingServiceStarted() 通知时(参见第 4.4.2 和 4.4.4 节)。
  • STOP_REQUESTED – 当应用程序请求停止服务但尚未收到 streamingServiceStopped() 通知时(参见第 4.4.3 和 4.4.4 节)

4.4.2 启动流媒体服务

4.4.2.1 接口函数

void startStreamingService (int serviceId);
void streamingServiceStarted (int serviceId);
void streamingServiceError (int errorCode, String message, int serviceId)

4.4.2.2 先决条件

流媒体模块连接初始化

4.4.2.3 描述

要启动流服务,应用程序应使用 startStreamingService()。 通过这个调用,应用程序给出了要启动的服务的服务 ID。
如果启动 Streaming 服务成功,MSDC API 会以 streamingServiceStarted() 响应,以指示服务已移至 STARTED 状态。

4.4.2.4 调用流程

4.4.2.4.1 启动流媒体服务

如果应用想要启动流媒体服务,它必须使用 startStreamingService() 发送请求。

该函数提供需要启动的 Streaming 服务的服务 ID。 应用程序可以从 getStreamingServiceList() 获取服务 ID(参见第 4.4.8.2 节)。

服务成功启动后,MSDC API 将 streamingServiceStarted() 发送到应用程序并将服务移动到 STARTED 状态。
在这里插入图片描述

4.4.2.4.2 服务已经处于STARTED状态

如果应用程序尝试启动已处于 STARTED 状态的服务,MSDC API 会以 streamingServiceError() 和错误代码 ERROR_S_UNABLE_TO_INITIALIZE 进行响应(参见图 4-16)。

4.4.2.4.3 达到并发服务限制

如果已在运行允许的最大并发服务数,则 MSDC API 使用 streamingServiceError() 和错误代码 ERROR_S_CONCURRENT_SERVICE_LIMIT_REACHED 响应应用程序。

在这里插入图片描述

4.4.2.4.4 无法启动流媒体服务

如果 MSDC 由于某种原因无法启动流服务,MSDC API 会使用 streamingServiceError() 和错误代码 ERROR_S_UNABLE_TO_START_SERVICE 响应应用程序。
在这里插入图片描述

微信扫码订阅
UP更新不错过~
关注

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
©️2022 CSDN 皮肤主题:大白 设计师:CSDN官方博客 返回首页
评论

打赏作者

weixin_38498942

你的鼓励将是我创作的最大动力

¥2 ¥4 ¥6 ¥10 ¥20
输入1-500的整数
余额支付 (余额:-- )
扫码支付
扫码支付:¥2
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值