在 HTML5 websocket 服务器中切割媒体流,用于基于网络的聊天/视频会议应用程序

2024-04-26

我们目前正在开发一个聊天+(文件共享+)视频会议应用程序使用 HTML5 websocket https://stackoverflow.com/questions/4220672/implementing-webbased-real-time-video-chat-using-html5-websockets。为了使我们的应用程序更易于访问,我们希望使用以下序列来实现自适应流式传输:

  1. 原始音频/视频数据客户端发送到服务器
  2. 流被分成 1 秒的块
  3. 将流编码为不同的带宽
  4. 客户端接收描述可用段的清单文件
  5. 使用普通 HTTP 下载一个片段
  6. 根据前一个段的性能选择下一个段的带宽
  7. 客户端可以以各种数据速率从许多不同的备用流中进行选择

那么..我们如何使用Python 将音频/视频数据分成块?

我们知道微软已经构建了表达式编码器2 http://msdn.microsoft.com/en-us/library/ee341601.aspx它启用了自适应流式传输,但它仅支持 Silverlight,而这不是我们想要的。

Edit:
还有一个名为 FFmpeg 的解决方案(对于 Python,有一个 PyFFmpeg 包装器),但它仅支持 Apple 自适应流。


I think ffmpeg http://www.ffmpeg.org/是您想要查看的主要工具。它已成为最受支持的开源媒体操纵器。有一个蟒蛇包装器 http://code.google.com/p/pyffmpeg/为了它。虽然这也是可以的通过subprocess模块​​访问命令行 https://stackoverflow.com/questions/4092927/generating-movie-from-python-without-saving-individual-frames-to-files.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在 HTML5 websocket 服务器中切割媒体流,用于基于网络的聊天/视频会议应用程序 的相关文章

随机推荐

  • 如何以编程方式获取 iOS 应用程序中的日志消息?

    我正在使用中定义的方法https developer apple com documentation os logging https developer apple com documentation os logging在 iOS 应用
  • Tic-Tac-Toe AI:如何制作树?

    在制作井字游戏机器人时 我在尝试理解 树 时遇到了巨大的障碍 我理解这个概念 但我不知道如何实现它们 有人可以向我展示一个如何为这种情况生成树的示例吗 或者关于生成树的好教程 我想最困难的部分是生成部分树 我知道如何实现生成整棵树 但不知道
  • ofstream 不适用于 Windows 7 隐藏文件

    我意识到ofstream不适用于 Windows 7 隐藏文件 这是快速测试代码 include
  • 更改 UINavigationController 导航栏的颜色

    我正在尝试使用以下方法更改 UINavigationController 导航栏的颜色 self navigationController navigationBar tintColor UIColor brownColor 在下面给出的代
  • 使用 Xcode 6.4 的通用自定义 iOS 框架

    我使用 Xcode 6 创建了一个自定义 iOS 框架 我尝试了许多脚本来使框架通用 对于模拟器和设备 但它们都不适合我 请建议我一种为 iOS 创建自定义通用框架的方法Xcode 6 要通过终端将两个二进制文件合并为通用二进制文件 首先编
  • Android 将原始字节记录到 WAVE 文件中以进行 Http Streaming

    所以我正在使用AudioRecord从 Android 记录原始字节并将其写入 wav 文件 由于 Android 不支持此功能 我必须使用以下代码手动编写 wav 文件头 randomAccessWriter writeBytes RIF
  • 如何检查 servlet 中的 sessionId 是否有效 (java)

    我在我的 Web 应用程序中维护 sessionid 和 HttpSession 对象的映射 我使用 HttpSessionListener 从地图中填充或删除会话 当我的网络服务器崩溃 宕机并恢复时 我需要一种方法来检查提交的 sessi
  • Android 显示全屏滑块图像

    我有一个在 Android 屏幕上显示的 gridview 图像 我的要求是滑动全屏图像 这是我的代码 图像适配器 public class ImageAdapter extends BaseAdapter private Context
  • 与 WiX 3.0 一起安装 WiX 3.5

    是否可以同时安装 WiX 3 0 和 3 5 如果我在安装 3 0 后安装 3 5 它会删除 3 0 文件 如果我尝试在 3 5 之后安装 3 0 它会告诉我已经安装了较新的版本 我正在从 VS 2008 迁移到 VS 2010 因此我的应
  • 获取已安装应用程序的位置 vb.net

    我在vb net上发布了一个应用程序 用户将能够将应用程序安装在计算机上他们选择的任何位置 或者可能不是他们选择的任何位置 而是默认位置 我如何以编程方式获取用户安装应用程序的位置 换句话说 我需要应用程序知道它从哪里运行 我如何检测到这一
  • Android 使卷轴看起来在旋转的最佳方法

    我正在为 Android 制作一个简单的水果机 老虎机 我在想如何才能让 卷轴 看起来在旋转 然后逐渐停止 我的想法是有一个环绕声 然后在顶部随机生成图像 并沿着屏幕向下移动 只有部分图像可见 任何有关想法或如何完成的帮助都将非常棒 我在这
  • Scala 中的 Reader monad:返回、本地和序列

    我正在使用ReaderScala 中的 monad 由scalaz https github com scalaz scalaz图书馆 我对这个单子很熟悉正如 Haskell 中定义的 https wiki haskell org All
  • C:函数指针转换到底是什么? [关闭]

    Closed 这个问题需要细节或清晰度 help closed questions 目前不接受答案 假设有人想要创建一个可以容纳多个不同类型的函数指针的数组 他将如何去做呢 也许空指针数组可以工作 事实证明 不行 因为为了使用存储在空指针中
  • 在 Chrome 扩展程序中访问 Chrome 设置

    我正在寻找开发一个 chrome 扩展程序 可以访问 wrench gt 选项 gt 引擎盖下的内容设置 那可能吗 我当时正在看API page http code google com chrome extensions api inde
  • 使用 Memcache 缓存 Matplotlib(不会 Pickle)

    我有一个图表 渲染需要 3 秒 然后可以从所述图表中添加一些内容来制作子图表 我想缓存主图表中的轴 以便稍后在渲染子图表时检索并修改它 我怎样才能克服这个错误 这是一个示例测试代码 import pylibmc cache pylibmc
  • 无法很好地理解 spring-mvc 的`@Autowired HttpServletRequest`

    在我们的 Spring 应用程序中 我们使用HttpServletRequest有两种方式 这里的代码是简化的 看起来没什么意义 在控制器中 RequestMapping value hello method RequestMethod G
  • 在保持元素/样式/脚本关系的同时缩小整个目录?

    目前是否存在可以缩小整个项目目录的解决方案 更重要的是 是否存在任何可以缩短类名 id 并在所有文档中保持一致的解决方案 可以扭转这个局面的东西 索引 html div class fooBar div 样式 css fooBar Comm
  • @font-face 字体不起作用

    我正在尝试从本地存储中获取一种可以使用的字体 font face font family const src url const ttf fp title1 font family const trebuchet ms font size
  • WPF - 将鼠标悬停在另一个元素上时隐藏元素

    网格中有一些元素 我想要的只是当鼠标悬停在矩形上时显示 隐藏按钮
  • 在 HTML5 websocket 服务器中切割媒体流,用于基于网络的聊天/视频会议应用程序

    我们目前正在开发一个聊天 文件共享 视频会议应用程序使用 HTML5 websocket https stackoverflow com questions 4220672 implementing webbased real time v