【问题标题】:simple rtsp broadcast example source简单的rtsp广播示例源码
【发布时间】:2009-07-14 08:50:42
【问题描述】:

我想使用 rtsp/rtp 广播我的程序的屏幕(不是静态屏幕),因为这样手机(至少是较新的)可以查看流。

我正在寻找一个简单的示例程序,它采用我提供的帧,使用编解码器对其进行编码,然后将其(使用 rtsp)发送到任何连接的客户端。

我在网上看过,到目前为止我能找到的都是成熟的开源媒体服务器(如 darwin),它们太复杂了,无法用作示例

任何帮助表示赞赏!

R

附言将 jpeg 发送到手机实际上不是一种选择,因为这是非标准的,并且需要安装移动应用程序来解释“流”。

p.s.2 C、C++ 或 C# 都可以。

【问题讨论】:

    标签: c# c++ video rtp rtsp


    【解决方案1】:

    这似乎正是我想要的:live555.com

    关于如何从您自己的应用流式传输内容的有用库和代码示例

    R

    【讨论】:

      【解决方案2】:

      我的库完全在托管代码中执行此操作!

      你可以找到图书馆@http://net7mma.codeplex.com/

      还有一篇CodeProject文章@http://www.codeproject.com/Articles/507218/Managed-Media-Aggregation-using-Rtsp-and-Rtp

      如果您还需要什么,请告诉我!

      【讨论】:

      • 您能否详细说明如何实现这一目标?现在我什至无法运行 Codeplex 页面上提供的示例。任何帮助将不胜感激。
      • 如果您查看 UnitTests 项目,您应该有足够的示例来帮助您入门。
      • @Jay - codeplex 代码中的 UnitTests 项目和 GitHub 代码不运行。我的用例的最佳实现是 Bandit 图像,但这不起作用 - VLC 失败并出现“主要调试:没有可玩的东西”。似乎还有几个不存在的对 SocketOptions 的引用,例如 TcpOffloadPreferenceOptionTcpCongestionAlgorithmOption 等。
      • 不知道你哪里有问题,你可以提出问题@github.com/juliusfriedman/net7mma_core,有时间我会给你一些帮助
      • @Jay 谢谢-我发现了问题:) 尝试对 VLC 连接时发生的情况进行一些挖掘,发现 URL 必须格式化为包含 live 作为一个段。我将服务器 IP 地址更改为 127.0.0.1,并尝试使用 127.0.0.1:555rtsp://127.0.0.1:555 从 VLC 连接,但是当我将其更改为 rtsp://127.0.0.1:555/live/Bandit 时,一切正常。也很漂亮的狗,看起来像个甜心。对不起您的损失
      【解决方案3】:

      这似乎是个坏主意... RTSP 很复杂,因此运行精简版本听起来像是对问题的公开邀请...但是...如果您想深入研究并从中提取相关代码这里的另一个项目是a good list,它列出了一些 C/C++ 开源 rtsp 服务器。祝你好运。

      【讨论】:

      • 如果某件事很“复杂”,则根据定义,它也不是“问题的邀请”。我只是希望找到一个不错的干净实现,而不需要通常不需要的所有数十个额外功能。无论如何,谢谢你的名单!
      • 很公平...我在内部系统中使用 http 和 smtp 的“简单”和“缩小”的经验是,它们花费了很多...很多更多的工作比我们在查看规格时所估计的要高。在这两种情况下,我们都重用了 FOSS 项目中的代码,但我们需要做大量工作才能简化代码并将其缩减为我们需要的代码。所以......玩得开心冲进城堡!
      【解决方案4】:

      我同意许多开源流媒体服务器太重了。但是,设置VLC 非常简单:

      1. 文件|打开文件...
      2. 自定义:screen://
      3. 检查流/保存
      4. 点击设置...
      5. 设置您喜欢的流式传输选项(确保将分辨率更改为较小的值,以使其在您的手机上快速流式传输)。
      6. 点击确定
      7. 点击确定
      8. 完成!

      请务必留意查看|消息...日志中可能会有一些有趣的警告或错误。我希望这会有所帮助!

      【讨论】:

      • 源码是不是也很容易看懂?这是我感兴趣的源示例...不是实际程序。
      • 我还没有查看源代码。但是,它有一组非常丰富的命令行开关,并且可以通过套接字进行控制。您可以使用您选择的编程语言分叉一个进程并打开套接字以保持对进程的控制。在您的机器上安装非常轻巧。无需数据库或操作系统服务。它像用户应用程序一样运行。如果这不是一个合理的选择,我在下面给出了另一个选择。
      【解决方案5】:

      如果你真的想要它的源代码,我推荐http://ffmpeg.org/。它不像 VLC 那样简单,但你有更多的控制权。该项目包含一些帮助您入门的示例。

      【讨论】:

        猜你喜欢
        • 2012-03-03
        • 2015-11-15
        • 2012-03-03
        • 2011-12-24
        • 2020-07-31
        • 2016-01-31
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多