我有一个通过HTTPS进行RTSP的流.
握手是安全的(通过https),但握手完成后的数据未加密(在RTSP中).
默认情况下,GStreamer不会流式传输,因为它也希望数据加密(在RTSPS中),这不是我的情况.
我尝试了很多东西但似乎没什么用.例如,在我开始获取流后,我尝试将其写入本地端口并将该URL传递给GStreamer,但它不会播放.
我是这个GStreamer的新手,所以我对玩家的了解有限.我正在寻找一种方法来通过GStreamer完成握手,这是HTTPS(安全),然后我得到的流没有加密.如果有人做过类似的事情,请告诉我任何流式RTSP的方法.我尝试过类似的东西
nativeSetPipeline("rtspsrc location=rtsph://<URL of the video stream> latency=100 ! rtph264depay ! avdec_h264 ! glimagesink");
Run Code Online (Sandbox Code Playgroud)
上面的管道默认工作,GStreamer通过HTTP播放RTSP,但是当我通过HTTPS尝试RTSP时
nativeSetPipeline("rtspsrc debug = TRUE do-rtcp=false location=\"rtspsh://<secured URL of the stream>" latency=100 do-rtsp-keep-alive=true ! rtph264depay ! avdec_h264 ! glimagesink");
Run Code Online (Sandbox Code Playgroud)
这不起作用,因为GStreamer也希望流也得到保护.有关如何通过HTTPS流式传输RTSP的任何想法/代码段或示例?我使用的当前版本是1.10.4.
这是一个多部分的问题。我有关于 GStreamer 的 .so 文件生成。
我需要从 1.14.4 升级到 1.16.1 版本。我按照此生成所需的 .so 文件。
在项目中,正在使用gst-launch-remote。如果我尝试使用 NDK 18 构建 GStreamer 1.16.1。我得到
error: undefined reference to 'gst_net_client_clock_new' clang++: error: linker command failed with exit code 1
我仔细检查过,被引用的变量存在于源代码中,并且还包含了所需的头文件。
问题——如何解决这个构建问题?
目前,我注释掉了导致构建失败的行,我可以用它来生成 .so 文件。
生成的 .so 文件很大,大约 150 MB。这大大增加了 .APK 文件的大小。该项目中当前使用的大小约为 40-50 MB。
问题 - 有没有办法减小 .so 文件的大小?
当我挖得更深时。我发现在路径中生成了两个 .so 文件
.../android-launch/app/build/intermediates/ndkBuild/debug/obj/local/x86_64
Run Code Online (Sandbox Code Playgroud)
一个是 GStreamer,另一个是我用作 JNI 的“C”文件。但在我的输出文件夹中,我只是 GStreamer .so。
问题 - 'C' .so 文件是否充当 GStreamer .so 文件的接口?有谁知道为什么另一个 'C' .so 用于?
问题 - 有没有办法生成多个 .so …