问题标签 [libjingle]

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 投票
2 回答
1505 浏览

android - WebRTC libjinlge_peerconnection_so.so 缺少 Libjingle / XMPP

我已按照 android 示例应用程序 (AppRTCDemo) README ( https://chromium.googlesource.com/external/webrtc/+/master/talk/examples/android/README ) 中定义的构建说明进行操作,包括设置构建标志“ build_with_libjingle=1”。当我运行“ninja -C out_android/Debug AppRTCDemo”(或发布版本)时,它会编译与 libjingle 相关的所有内容。但是在编译libjingle_peerconnection_so.so的时候,好像忘记包含各种libjingle静态库了。我可以这么说,因为当我在自己的项目中包含 libjingle_peerconnection_so.so 文件(使用诸如 buzz::QN_MESSAGE 和 XmlElement 对象之类的东西)时,构建抱怨这些(和其他东西)没有定义。但是我的代码中的每个 WebRTC 对象都已定义,

我还在 libjingle_peerconnection_so.so 文件上使用了 nm -C 和 grep 来查找符号,但没有返回任何结果。但是,libjingle_peerconnection_so.ninja 文件显然包含了必要的库(librtc_xmpp 等)。

对于我的项目,我正在使用带有 .mk 文件的 ndk-build 系统(我仍在使用 ninja build stuff for libjingle / WebRTC)。我已经尝试放弃 .so 文件,而是在我的 .mk 文件中使用每个静态库,但这会引入一堆其他未定义的错误,这些错误比使用 .so 文件更有意义。我有多个版本的 .mk 文件,我使用下面的 libjingle_peerconnection_so.so 文件包含了一个。

我到底做错了什么?还是构建系统有问题?

更新 1: 当然,当您第二天访问某些东西时,一切都会改变。现在,当我在 libjingle_peerconnection_so.so 文件上运行 nm 时,它显示函数/符号在那里。但是,我的构建设置仍然声称它们没有定义,即使它们显然是。

更新 2:LOCAL_ALLOW_UNDEFINED_SYMBOLS := true在 .mk 文件中抑制了未定义的错误,这完成了构建并在 libs/armeabi-v7a/ 中创建了 android .so 文件。当我 nm 这些文件时,会找到符号。但是,当所有内容都加载到 android 设备时,应用程序崩溃,说它找不到(例如)_ZN4buzz11QN_PRESENCEE我的库 (myproject.so) 中引用的符号。纳米结果:

0 投票
2 回答
4558 浏览

java - 无法在 webrtc android 客户端中添加远程会话描述

来自服务器的响应:

日志

**首先我创建报价并添加本地描述,然后使用发射将其发送到服务器,服务器返回回调包含远程 sdp **

冰候选人:

候选人日志

媒体约束

0 投票
0 回答
1224 浏览

android - 如何在 webRTC android 中将媒体流数据记录为 h.264(mp4)?

请帮我!我在https://github.com/pchab/AndroidRTC中使用此示例将视频和音频从 android 设备流式传输到其他 android 设备。在此示例中,他们使用了 2 个库:libjingle_peerConnection 和 SocketIo 客户端,但我没有知道如何将流数据保存为 h.264 格式吗?

0 投票
1 回答
870 浏览

android - 在 webrtc android 中调用时出错

我在调用 webrtc android 应用程序时崩溃了。

这是我的错误日志:-

似乎它无法加载 libjingle_peerconnection_so ?

任何帮助将不胜感激。谢谢

0 投票
0 回答
1761 浏览

android - 调用 onAddStream() 时,无法在 VideoRenderer 中加载远程视频轨道

我正在android中实现webrtc。在 peerConnection 对象中设置 remoteDescription 后,我无法加载远程视频流。我正在获取远程音频、视频轨道,当 onAddStream() 调用时(org.webrtc.VideoTrack@37471a54)。但无法在 Videorenderer 中加载它。

0 投票
1 回答
3866 浏览

android - Android WebRTC 自定义远程和本地视图

我正在一个 Android 项目中实现 webrtc,我基于github中的这个示例。

此示例使用 libjingle 库。这是视频渲染视图的创建方式:

我的问题是如何管理自定义remoteRenderand localRender,以便我可以更改它positionGLSurfaceView宽度和高度

编辑:

我做了一个听众,我试过这个:

当我给宽度和高度都赋值 150 时,它给了我这个错误:

使用解决方案编辑 2:

当我看到mattm答案时,我明白他是对的。

当我搜索我的异常时,我发现它是从libjingle库中抛出的异常。我在VideoRendererGui.java 的第368、347行找到了这段代码,我找到了我的问题的解决方案。

添加视图高度和宽度时,它必须在基于此代码的这些范围内:

所以只要我遵循这些规则调用该方法VideoRendererGui.update(...就可以完美地工作

谢谢

0 投票
1 回答
1079 浏览

android - Android中的Webrtc对等连接错误

伙计们。我需要一些关于 WebRTC 的帮助。我正在开发一个 Android 应用程序,该应用程序使用 Node.Js 和 Express 作为信号服务器从服务流式传输到 AngularJS 客户端。我正在使用由 pristine 打包的 libjingle。

每次我从客户端停止对等方时,它都会给我以下错误:

我完全不知道发生了什么。我曾与来​​自 pristine 的一位开发人员交谈过,他说这个错误并不常见。

有人遇到过吗?

0 投票
1 回答
2167 浏览

ios - 为 iOS 构建 webrtc 库时出错

我一直在尝试按照 Google 在http://www.webrtc.org/native-code/ios(和相关链接)上的指示为 iOS 构建 webrtc。虽然我记得过去通过类似的步骤我已经能够构建它,但情况已不再如此。

这是我做的步骤:

  1. 下载先决条件:

    $ git clone https://chromium.googlesource.com/chromium/tools/depot_tools.git

    $ export PATH=`pwd`/depot_tools:"$PATH"

  2. 下载回购:

    $ 出口 GYP_DEFINES="OS=ios"

    $ 获取 webrtc_ios

  3. 准备构建:

    $ cd webrtc/src

    $ export GYP_DEFINES="build_with_libjingle=1 build_with_chromium=0 libjingle_objc=1"

    $ export GYP_DEFINES="$GYP_DEFINES OS=ios target_arch=armv7"

    $ 出口 GYP_GENERATOR_FLAGS="output_dir=out_ios"

    $ 出口 GYP_CROSSCOMPILE=1

    $ gclient 运行钩子

  4. 建造:

    $ ninja -C out_ios/Debug-iphoneos AppRTCDemo

一切都很好,直到最后一个命令失败并显示/bin/sh:/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin/gcc:没有这样的文件或目录:

出于某种原因,忍者认为我们正在为模拟器构建,而且即使我们这样做也不是获得 gcc 的正确途径。请注意,我的系统安装了 XCode 7。

任何想法可能有什么问题或我该如何解决这个问题?

最好的问候, 安东尼斯

0 投票
0 回答
204 浏览

java - Webrtc Android libjingle I420Frame 构造函数现在是私有的

我基于我之前的代码:

https://chromium.googlesource.com/external/webrtc/stable/talk/+/fbb1efa61417540336cf52976d4ff4394bfa795b/examples/android/src/org/appspot/apprtc

但我决定更新我的库,我构建libjingle_peerconnection.jarlibjingle_peerconnection_so.so基于此:

https://chromium.googlesource.com/external/webrtc/+/master/webrtc/examples/androidapp/README

但是现在在我的 VideoStreamView 中,我遇到了一些问题,queueFrame()因为在新版本中不再有copyFrom()on I420Frame,甚至在takeFrame()我无法创建新的 I420Frame 因为构造函数现在是私有的。

0 投票
0 回答
224 浏览

java - createAudioSource 未使用 Android 上的旧 webRTC 库(2014 年初)定义

我正在开发一个与 node.js 服务器进行视觉和音频通信的 Android 应用程序。我正在使用 webRTC。我的问题是声音无法从浏览器(计算机)到应用程序(Android 设备)。我想将factory.createAudioSource(audioConstraints)添加到AudioTrack。但是eclipse不允许我使用那种方法。它说:“PeerConnectionFactory 类型的方法 createAudioSource(MediaConstraints) 未定义”

我从 2015 年 10 月开始尝试使用较新的 webRTC 库 (libjingle_peerconnection.jar),然后此方法有效,但出现与视频流相关的其他错误,因此我无法使用它。

是否有可能在 2014 年底之间获得一个图书馆?我认为这应该可以解决我的问题。还是您有其他解决方案?

提前致谢

向量