RTSP音频反向通道ONVIF-如何实施

问题描述

我的目标是使用ONVIF来实现RTSP音频反向通道,即不使用任何相机SDK。

我对此线程的期望是-

  1. 验证我的理解
  2. 了解如何操作
  3. 找出不同的选择

1。理解

我将录制来自麦克风的音频,并使用TCP / UDP将音频数据包(包装有RTP标头)发送到摄像机。呼叫流程如下:

DESCRIBE rtsp://backchannel_url RTSP/1.0
CSeq: 1
Accept: application/sdp
User-Agent: xxxclient
Bandwidth: 384000
Require: www.onvif.org/ver20/backchannel

SETUP rtsp://backchannel_url/trackID=5 
RTSP/1.0
CSeq: 2
User-Agent: xxxclient
Transport: RTP/AVP;unicast;client_port=19746-19747
Require: www.onvif.org/ver20/backchannel

通过SETUP的响应,预计RTSP服务器将发送服务器端口,如下所示:

RTSP/1.0 200 OK
CSeq: 2
Session: 1066942051;timeout=60
Transport: RTP/AVP/UDP;unicast;client_port=19746-19747;server_port=38890-38891;ssrc=02A8AAB0
x-Dynamic-Rate: 1

然后,我将呼叫PLAY,同时将RTP数据包(带有音频帧)发送到相机。 而且,如果将任何 Audio Out 连接到摄像机,则预期将从客户端计算机录制的声音在那里播放。

2。了解如何执行此操作(C ++)

我试图找出是否可以使用FFmpeg完成此操作,但找不到任何内容。 有了一点使用Live555的工作经验,我试图这样思考:

enter image description here

但是,在此之前,是否可能只有一个接收器从多个来源获取数据? 就我而言,我可以理解只有音频数据将被发送到接收器,而不是视频数据。 RTSP源仅用于调用摄像机的SETUP并获取服务器正在等待RTP数据包的端口号。

请帮助我找出正确的方法

3。找出其他替代方案

尽管我正在尝试使用Live555解决此问题,但是还有其他更好的选择吗?请让我知道。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...