问题标签 [sdp]

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 回答
1291 浏览

android - 生成 SDP 文件

我正在尝试从本地 PC 主机上的我的 android 设备流式传输。所以,我使用了一些 sipvoip 库,比如 sipdroidsocket。问题是wireshark 从我的android 设备中捕获了所有数据包,但是VLC 无法播放数据流(Rtp),并且错误弹出窗口告诉您需要SDP 文件格式。我谷歌它,它似乎是一个准备媒体播放器的信息文件。

如何生成这个文件?它是在我的 android 应用程序上生成并发送到 PC 还是仅部署在运行 VLC 的 PC 上?

0 投票
1 回答
4316 浏览

rtp - 如何通过 RTP 发送 SDP

我开发了一个将 RTP 数据包发送到本地 IP 客户端的应用程序。所以客户端必须监听指定的端口(rtp://:@portnumber,在 VLC 上)才能播放流数据。现在,我将开发创建开始流式传输所需的 SDP 文件所需的代码。

我的疑问是,如何将此文件发送给客户端?在 RTP 流的开头?在这一点上真的很n00b。任何帮助都会很有用。

谢谢

0 投票
1 回答
594 浏览

c - 蓝牙SDP结构

SDP流的结构是什么?我正在尝试在 Windows 7 中添加新的 SDP 蓝牙记录,但我无法理解“原始流”内容是什么。我知道我需要放在那里,我只是不知道格式/协议,而这次谷歌并没有帮到我很多。

它与IOCTL_BTH_SDP_SUBMIT_RECORD_WITH_INFO一起使用

0 投票
1 回答
1506 浏览

android - 在 Android 的蓝牙中,BluetoothSocket.connect 是否调用 SDP 来获取新通道

作为问题标题的延续,我通过从配对设备中选择一个BluetoothDevice设备并执行以下操作来获取 BluetoothSocket:

我的问题是这样的:假设在通过 UUID 进行通信的通道配对时被记录为通道 2,但在连接时,另一个设备已将其侦听器切换到通道 3,并在通道 3 上为相同的 myUUID。

当我进行连接时,它会尝试连接到通道 2(在缓存中,请参阅我的另一个问题)还是会(.connect 命令)执行新的 SDP 以获取当前通道,即 3 并尝试连接到频道 3(和 myUUID)。

是否可以通过connect命令查看尝试了哪个通道。

谢谢。

0 投票
1 回答
571 浏览

mime - 使用 MIME 了解 Lync 客户端多部分 SDP

谁能给我一些纯粹的见解如何创建多部分 sdp 以及这个给定 SDP 的 all 属性的含义是什么。

特别是 a=candidate: 的加密值,如何解密和创建它。

是否有任何doc或rfc请指出。

谢谢。

0 投票
3 回答
855 浏览

database-design - SDP 的合理长度限制是多少?

我需要存储WebRTC返回的SDP结构。该规范没有定义最大长度,但显然数据库需要一个。

在这种情况下,合理的长度限制是多少?在这种未定义的情况下,您通常如何决定长度限制?

0 投票
2 回答
1409 浏览

android - 我怎样才能获得我自己的 android 设备的蓝牙 UUID?

我目前可以fetchUuidsWithSdp使用远程设备。getUuids不工作,不知道为什么)

但是我怎么能得到我自己的安卓设备的 UUID 呢?

假设当我在服务器套接字上成功执行时,注册的 UUID必须包括我在使用此命令创建服务器套接字时建立的 UUIDaccept()listenUsingInsecureRfcommWithServiceRecord

我发现情况并非总是如此!我想测试一下。。

0 投票
1 回答
26178 浏览

vlc - 使用 VLC 播放 RTP

我目前有一个 Android 应用程序,它正在从相机捕获视频并通过 RTP 流式传输。我不使用 RTSP。

我创建了一个描述 RTP 提要的 SDP 文件。我可以在 Quicktime 7 中打开 SDP 文件并且可以看到流,尝试在 VLC 中打开 SDP 文件不起作用。我收到以下错误:

live555 demux 错误:10 秒内没有收到数据,正在中止

我正在使用 Wireshark 监控 RTP 数据包,并且可以看到网络上的数据包(参见下面的示例):

Quicktime 7 似乎没有问题绑定到 SDP 中的目标端口并播放流,但我在尝试使用 VLC 时看到以下 ICMP 数据包:

我的 SDP 文件包含:

我需要做什么才能让流在 VLC 中播放?我尝试在启动 VLC 时使用参数“--rtp-client-port=51326”,但似乎没有什么不同。

更新 1

看起来 VLC(至少我使用它的方式)不使用您在 SDP 中指定的客户端端口,它总是分配它自己的端口,它期望 RTP 数据包在其上传递。我改变了我的方法,允许我从 VLC 捕获端口并使用该端口作为目标启动我的 RTP 提要,并且它有效。这不是一个理想的解决方案。

有谁知道如何让 VLC 使用 SDP 文件中的目标端口?

0 投票
3 回答
3115 浏览

h.264 - RTSP 上音频和视频的相同媒体格式

我们公司开发了一个摄像头监控软件,我们主要使用 RTSP 与设备进行通信(但我们支持所需的任何协议),我们开发了自己的 RTSP 客户端和解析器

今天我们正在研究一个新相机的集成,我们发现了一个有趣的场景,相机将动态有效负载 96 映射到音频和视频数据包,请参阅 SDP 描述:

如你看到的:

问题是我们使用这个映射来识别接收到的 RTP 数据包的压缩。我一直认为每种媒体都会有不同的映射,比如视频 96 和音频 97(甚至静态映射,比如 PCMU 的 0),但是这个设备对所有媒体使用相同的映射,所以,我们的解析器不会工作,因为它将使用有效负载 96 接收的音频数据包识别为视频数据包,并将它们直接发送到视频解码器,当然它不会工作......

我已经检查过 VLC 工作正常,但我坚信 VLC 不使用此映射来拆分数据包,而是使用通道标识(在 TCP 中)或不同的 UDP 端口来识别哪些数据包属于哪个媒体......但是我们已经构建了我们的架构来根据负载类型拆分数据包

所以我问......将音频和视频都映射到相同的动态有效载荷编号(96)是否正确?

这是我第一次遇到这个问题,我需要知道我们是否必须更改整个 RTSP 客户端以使用通道而不是 Payload 格式来识别媒体,或者相机端是否存在实现错误他们应该将其他有效载荷编号链接到每个不同的媒体(96 个视频、97 个音频、98 个应用程序......)

有谁知道这种做法(对所有媒体使用相同的有效载荷编号)是否有效???

我们已经使用 RFC 规范实现了 RTSP 客户端和 SDP 解析器,但我没有发现任何与对所有媒体使用相同有效载荷编号相关的内容,在所有示例中,它们总是为每个媒体分配不同的有效载荷编号......

0 投票
2 回答
2114 浏览

sip - 媒体行中的媒体格式(有效载荷类型编号)与 rtpmap 不同

在测试 SIP 视频呼叫时,我在提供的媒体的答案中获得了以下媒体线路信息。这是有效的媒体线路吗?其中媒体格式编号与 rtpmap 编号不同: