问题标签 [rtp]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
4518 浏览

filter - 编写自定义 DirectShow RTSP/RTP 源推送过滤器 - 来自实时源的时间戳数据

我正在编写自定义 DirectShow 源推送过滤器,它应该从视频服务器接收 RTP 数据并将它们推送到渲染器。我写了一个 CVideoPushPin 类,它继承自 CSourceStream 和 CVideoReceiverThread 类,它是从视频服务器接收 RTP 数据包的线程的包装器。接收者线程本质上做了三件事:

  • 接收原始 RTP 数据包并收集 Receiver Reports 所需的一些数据
  • 组装帧,将它们复制到缓冲区,并将有关它们的信息存储到 256 个元素队列中,其定义如下:

    /li>
  • 每个接收到的帧都带有当前流时间的时间戳

    /li>

问题是我不确定如何在 FillBuffer 方法中为每个 MediaSample 设置时间戳。我尝试了几种方法,但播放要么停止,要么太慢。目前 FillBuffer 方法如下所示:

在这种情况下,我注意到队列中的项目数量增加得非常快(由于某种原因 FillBuffer 方法无法足够快地提取数据),结果是在播放视频时增加了延迟。有谁知道从实时源接收数据时我应该如何做时间戳?

0 投票
1 回答
2119 浏览

java - 对Java初学者的rtp有帮助吗?

我已经开始在 Android 中使用 Java 上的 RTP,并且想知道是否有人可以给我一些帮助或指导。

这是我开始的代码:

我不确定设置 RTP 管理器、RTP 会话和 RTP 数据包接收器的正确方法。

我是否需要先打开一个数据报套接字并将其链接到 RTP 会话?

当我从上面的代码中将 RTPSession 打印为字符串时,我得到以下信息:

我不确定这是正确还是错误?

此外,代码只能到达 rtpPacketReciever.run(); 并停在那里,这个方法之后的日志永远不会被打印,所以我认为 rtpPacketReciever.run(); 有问题?

我对 RTP 非常陌生,因此任何人都知道的任何指导或良好资源都会非常有帮助。

提前致谢

编辑:

编辑:

我现在添加了这段代码:

代码:

记录 ds 远程套接字会返回以下内容:

在我看来哪个不对?是吗?

0 投票
6 回答
29645 浏览

rtp - 如何强制客户端将 RTP 传输从 UDP 切换到 TCP?

如果客户端想要观看我的 RTSP 服务器上的流,它首先尝试通过 UDP 协议设置流。我如何告诉它我的服务器只支持 RTP/AVP/TCP 并且它应该切换传输?

我想终止我的服务器上的 UDP 支持,但是所有客户端首先尝试通过 UDP 设置会话,然后它们通过 TCP 进行设置……我想尽快在 RTSP 协议中将它们切换到 TCP。

我怎样才能做到这一点?

0 投票
1 回答
2368 浏览

voip - 如何从一个流中复用/解复用 RTP 媒体?

目前,我正在找到一个能够通过一个 RTP 流(一个连接)从多个源流式传输视频的库。有人对此有建议吗?

实际上,我发现 Opal 3.8 是 VoIP lib,支持 RTP/H264。但我不知道它是否可以支持来自一个流的 mux/demux rtp 媒体?如果没有,你能给我一些建议吗?

谢谢,

0 投票
3 回答
20825 浏览

video - h264 RTP 时间戳

我对 h264 RTP 数据包的时间戳感到困惑。我知道视频的挂钟速率是 90KHz,这是我在 SIP SDP 中定义的。我的编码器的帧速率不完全是 30 FPS,它是可变的。它在运行中从 15 FPS 到 30 FPS 不等。所以,我不能使用任何固定的时间戳。

谁能告诉我以下编码数据包的时间戳。
经过 0 毫秒编码的 RTP 时间戳 = 0(让起始时间戳为 0)
经过 50 毫秒编码的 RTP 时间戳 = ?
经过 40 毫秒编码的 RTP 时间戳 = ?
经过 33 毫秒编码的 RTP 时间戳 = ?

编码帧率可变时的公式是什么?

先感谢您。

0 投票
1 回答
1637 浏览

c++ - RTP H.264 保存和回放

我们有兴趣保存 H.264 流并重放它。有没有人体验过使用 winpcap 保存 h.264 并重播它。我们能够保存 H.263 并重播,但相同的逻辑不适用于 H.264。

我们还尝试了 rtpdump 工具来保存 H264 流,但我们无法以那种格式重播它?

提前致谢

0 投票
1 回答
2124 浏览

android - android 本身是否支持 RTP 和/或 SCTP?

我正在为 Android 开发对讲机应用程序,并想知道最新版本的 android SDK 是否原生支持 RTP 和/或 SCTP。

从我到目前为止所挖掘的一切来看,答案是否定的。

似乎对 SCTP 的支持即将出现在JDK 7中。但是,我不确定这将如何与我的 android 开发人员一起使用。

您能否对此有所了解?

谢谢,

0 投票
1 回答
3972 浏览

video - H264 RTP 数据包转储和生成 quicktime 文件

我有一个使用 libpcap 捕获的流式 H264 视频的 RTP 数据包转储。我想知道是否有人知道可以从中生成可播放视频文件的工具。

谢谢

0 投票
5 回答
16060 浏览

java - 在 Java 中填充字节数组

对于我正在处理的项目的一部分,我正在实现一个 RTPpacket,我必须用 RTP 标头字段填充字节的标头数组。

这是我的方法:

还有其他,也许是“更好”的方法来做到这一点?

0 投票
2 回答
6815 浏览

video - 在 VLC 中捕获和播放原始 h.264 数据包

我正在从视频会议 HDX 捕获网络数据包。视频以 RTP 发送,并以 H264 编码。

我正在尝试捕获这些数据包并生成视频文件。我将原始 H264 数据从数据包写入磁盘,并尝试在 VLC 中播放。

VLC 只显示一个绿色框。

我在数据写入的方法上是否过于天真,或者我是否应该假设 VLC 应该播放这个文件是错误的?

有没有人有这方面的经验?