java - 如何在 Red5 中处理多个视频流?

标签 java flash video red5 rtmp

我正在写一个 Red5通过 RTMP 向 Flash 客户端提供一对一视频聊天的应用程序.

不幸的是,我能找到的大多数教程充其量都是粗略的,而且 Red5 本身的文档在涉及 API 概念和预期用途时往往含糊不清。

简而言之,我有点卡住了,正在寻找有关 Red5 ApplicationAdapter 实现的提示。详细信息如下:

  • 首先,联系有两种形式:访客和顾问。访问者应该能够指出它希望与哪位顾问交流。只要顾问不忙于为其他人提供服务,他就可以简单地与提出请求的访客取得联系。

  • 显然,每个 RTMP 连接都有双向流量:发送和接收视频。从服务器的角度来看,连接会带来一堆视频流,这些视频流会根据请求分配接收端点。

  • 由于多个视频对话可以同时进行,应用程序的主要任务是处理访客流与顾问的映射,并通过 AMF 提供表明每个顾问状态(忙碌/空闲)的列表。 .

所以,总而言之,我很清楚我的目标是什么,但如何使用 Red5 实现它仍然有点神秘。

希望有人能在以下任何或所有方面启发我:

  1. 建立连接类型(访客/顾问)的最简单方法是什么?

  2. 应该使用哪些 API 类来实现持久的、全局可访问的 Activity 连接列表,以报告每个顾问的状态?

  3. 当目标是将特定访问者连接到所选顾问时,如何动态切换接收端点?

最佳答案

扫罗,

1.What is the easiest way to establish the connection type (visitor/consultant)?

假设(访问者/顾问)都在使用 flex 客户端,他们通过该客户端开始发布他们的实时视频流,在这里您需要确保每个发布的视频流名称是唯一的(HOWTO 已经在演示应用中提到)

2.Which API classes should be used to implement a persistent, globally accessible list of active connections for reporting the state of each consultant?

并且为了提供 Activity 连接列表,您只需要存储(最好在您的数据库中)每个用户的 ID 以及要连接的流名称(也可以作为 tutorial demo app 提供)。

我相信所有代码都可用于 red5 演示请尝试 oflaDemo、simpleSubscriber、fitcDemo 演示应用程序。

我希望我更接近您的解决方案。

关于java - 如何在 Red5 中处理多个视频流?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4718640/

相关文章:

java - 仅验证 Java 中的 XSD(XML 架构)

java - 如何使用 Java 从 Google App Engine 创建下载链接

java - 通过注释而不是 XML 配置 Spring LdapTemplate 的最佳实践?

android - 动态替换 HTML 参数的值

flash - 允许 Silverlight(和 Flash)应用保持全屏

video - 在视频播放器上设置时间触发器

javascript - 使用 video-js 设置链接以在不同时间播放视频

java - Android Studio 找不到tools.jar

actionscript-3 - AS3中复杂的无间隙声音循环

video - ffmpeg 将 rtp 转换为 mp4(http) 流