视频流+实时聊天实现

问题描述 投票:0回答:1

我们想为提供视频流的应用程序添加实时聊天功能。

视频流通过将RTP协议修改为TCP进行通信,提供特殊视频。

因此,在保持连接的同时不断传输文件。

想请教如何实现聊天功能。

一般情况下,实时聊天通常是通过WebSockets实现的。

我部门负责人 据说,维护每个 RTP 和 WebSocket 连接会给客户端智能手机带来很大的负载,并导致电池消耗等问题。

维持两个TCP连接真的会给客户端带来很大的风险吗?

websocket streaming chat rtp
1个回答
0
投票

维持两个TCP连接真的会给客户端带来很大的风险吗?

一个应用程序可以有多个 TCP 连接,这一般来说是完全没问题的,而且它本身不会带来风险。风险取决于其实施方式。话虽这么说,是的,您可以同时运行视频流(或摄取)和实时聊天功能。

想请教如何实现聊天功能

有很多方法可以做到这一点。您可以从头开始或使用第 3 方聊天 api(TalkJS、CometChat、Sendbird)。

要从头开始,您必须选择要使用的实时通信协议。是的,WebSockets 很常用。您还可以使用 Socket.io、Firebase 实时数据库甚至 WebRTC 等库。

关于您对电池的担忧:不,WebSocket 本身不会消耗大量电池。这一切都取决于消息的频率、消息的有效负载、后台或前台活动、网络类型(蜂窝)等。我假设为了传输视频,您也正在使用某种编解码器。编解码器的类型、分辨率、帧速率和背景流对电池有一定影响。简而言之,更高的处理能力和带宽将导致电池使用量增加。

我最后的想法是同时使用视频流+ websocket是正常的(大多数聊天应用程序都在这样做)。请务必使用正确的协议进行视频传输和流媒体。

© www.soinside.com 2019 - 2024. All rights reserved.