是SDP sendonly意味着在这种情况下打开一个RTP音频流?(is SDP sendonly means to open one RTP Audio stream in this case?)

编程入门 行业动态 更新时间:2024-10-23 18:22:54
是SDP sendonly意味着在这种情况下打开一个RTP音频流?(is SDP sendonly means to open one RTP Audio stream in this case?)

我是sip / sdp世界的新手。 根据我对SDP协议的理解,如果我们从sip服务器定义a = sendonly到客户端软电话,软电话应该打开一个RTP会话进行监听,但不应该向目的地发送任何RTP数据包。 我对么?

在我的情况下,我听不到任何声音,并且有一个RTP流来上传音频。 注意:我正在使用多播地址。

这是SIP / SDP转储(从服务器到客户端软电话):

SIP/2.0 200 OK Via: SIP/2.0/UDP 192.168.8.219:5060;branch=z9hG4bK-d8754z-b394381274917501-1---d8754z-;rport=5060 From: ;tag=d67855ee To: ;tag=KQQHgQ93Sjg1F Call-ID: YTExMzkwZDdhMGM1NTJmMDJlMGFiYjgxMGI1ZDNmMDI. CSeq: 2 INVITE Contact: User-Agent: FreeSWITCH-mod_sofia/1.2.0-rc2+git~20120623T054003Z~65b2f2d2e7+unclean~20120623T083401Z Accept: application/sdp Allow: INVITE, ACK, BYE, CANCEL, OPTIONS, MESSAGE, UPDATE, INFO, REGISTER, REFER, NOTIFY, PUBLISH, SUBSCRIBE Supported: timer, precondition, path, replaces Allow-Events: talk, hold, presence, dialog, line-seize, call-info, sla, include-session-description, presence.winfo, message-summary, refer Content-Type: application/sdp Content-Disposition: session Content-Length: 265 v=0 o=FreeSWITCH 1340907341 1340907343 IN IP4 224.168.168.168 s=FreeSWITCH c=IN IP4 224.168.168.168 t=0 0 a=sendonly m=audio 34567 RTP/AVP 0 101 a=rtpmap:0 PCMU/8000 a=rtpmap:101 telephone-event/8000 a=fmtp:101 0-16 a=silenceSupp:off - - - - a=ptime:20

我使用另一个软电话在该地址和端口上组播声音(通过wireshark验证)。 为什么我听不到声音?

顺便说一句,我使用xlite的软电话,服务器是freeswitch。

I am a newbie to sip/sdp world. From my understanding of SDP protocol, if we define a=sendonly from sip server to client softphone, the softphone should open one RTP session for listening, but it should not send any RTP packets to destination. Am I correct?

In my case, I can not hear any sounds coming in, and there is a RTP stream to upload audio. Note: I am using the multicast address.

here is a SIP/SDP dump (from server to client softphone):

SIP/2.0 200 OK Via: SIP/2.0/UDP 192.168.8.219:5060;branch=z9hG4bK-d8754z-b394381274917501-1---d8754z-;rport=5060 From: ;tag=d67855ee To: ;tag=KQQHgQ93Sjg1F Call-ID: YTExMzkwZDdhMGM1NTJmMDJlMGFiYjgxMGI1ZDNmMDI. CSeq: 2 INVITE Contact: User-Agent: FreeSWITCH-mod_sofia/1.2.0-rc2+git~20120623T054003Z~65b2f2d2e7+unclean~20120623T083401Z Accept: application/sdp Allow: INVITE, ACK, BYE, CANCEL, OPTIONS, MESSAGE, UPDATE, INFO, REGISTER, REFER, NOTIFY, PUBLISH, SUBSCRIBE Supported: timer, precondition, path, replaces Allow-Events: talk, hold, presence, dialog, line-seize, call-info, sla, include-session-description, presence.winfo, message-summary, refer Content-Type: application/sdp Content-Disposition: session Content-Length: 265 v=0 o=FreeSWITCH 1340907341 1340907343 IN IP4 224.168.168.168 s=FreeSWITCH c=IN IP4 224.168.168.168 t=0 0 a=sendonly m=audio 34567 RTP/AVP 0 101 a=rtpmap:0 PCMU/8000 a=rtpmap:101 telephone-event/8000 a=fmtp:101 0-16 a=silenceSupp:off - - - - a=ptime:20

I use another softphone to multicast sound(verify by wireshark) on that address and port. why can not I hear the sound?

by the way, softphone i am using xlite, the server is freeswitch.

最满意答案

a=sendonly ,正如您所怀疑的那样,是一个单向流。 服务器表示它将发送数据并且不会接收数据,因此客户端必须打开侦听端口。 你正在做正确的事。

如果您没有获得音频,可能需要时间来运送像Wireshark这样的分析工具来查看服务器是否实际发送了任何RTP数据。

a=sendonly is, as you suspect, a unidirectional stream. The server says that it will send data and will not receive data, so the client must open a listening port. You're doing the right thing.

If you're not getting audio, it might be time to haul out an analysis tool like Wireshark to see if the server's actually sending any RTP data.

更多推荐

本文发布于:2023-04-28 01:54:00,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1330272.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:在这种情况下   音频   RTP   SDP   sendonly

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!