小编Man*_*nza的帖子

使用libjingle在Android上创建一个带有"自定义"Capturer的WebRTC VideoTrack

如何使用"自定义"视频捕获器来创建VideoTrack并提供帧?

创建VideoTrack的经典方法是:

1 - 获取VideoCapturer实例

VideoCapturer capturer = VideoCapturer.create(name);
Run Code Online (Sandbox Code Playgroud)

2 - 创建一个VideoSource

VideoSource videoSource = peerconnectionFactory.createVideoSource(capturer, videoConstraints);
Run Code Online (Sandbox Code Playgroud)

3 - 使用视频源创建VideoTrack

VideoTrack videoTrack = peerconnectionFactory.createVideoTrack("Label", videoSource);
Run Code Online (Sandbox Code Playgroud)

4 - 将轨道添加到MediaStream


我想知道是否有办法改变第一步.不使用本机Capturer实例,而是使用Android版本,并使用回调为VideoTrack提供框架:

public void onPreviewFrame(byte[] data, Camera camera) {
   // provide the frames to the VideoTrack
}
Run Code Online (Sandbox Code Playgroud)

有什么建议?

android libjingle webrtc

53
推荐指数
1
解决办法
2954
查看次数

Context.getPackageName()vs BuildConfig.APPLICATION_ID

我可以使用以下方法检索包名:

Context.getPackageName()
Run Code Online (Sandbox Code Playgroud)

要么

BuildConfig.APPLICATION_ID
Run Code Online (Sandbox Code Playgroud)

这两种方式有什么区别吗?在特定情况下,是否优先考虑另一个?假设他们总是给出相同的结果是否安全?

基本上哪一个更好

android gradle

19
推荐指数
4
解决办法
4534
查看次数

带有自定义项目的底部导航视图(actionLayout)

我想在新的BottomNavigationView中添加一个自定义项.

有很多关于使用普通导航视图添加自定义视图的教程,但我找不到有关底部视图的任何内容.

这是我的观点

   <android.support.design.widget.BottomNavigationView
        android:id="@+id/navigation_view"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        app:menu="@menu/menu_main" />
Run Code Online (Sandbox Code Playgroud)

这是菜单

<?xml version="1.0" encoding="utf-8"?>
 <menu xmlns:android="http://schemas.android.com/apk/res/android">

<item
    android:id="@+id/menu_one"
    android:icon="@drawable/ic_tab_one"
    android:title="one" />
<item
    android:id="@+id/menu_two"
    app:actionLayout="@layout/item_action_notification"
    android:title="two" />
Run Code Online (Sandbox Code Playgroud)

正如你所看到的那样,我按正常方式放置了actionLayout标签,但它根本就没有显示出来.

有任何想法吗?谢谢.

android android-menu android-view

11
推荐指数
1
解决办法
4704
查看次数

将AppRTC与自定义服务器一起使用

我已经成功构建了Android的AppRTC,我可以让videocalls提供演示应用程序的地址(https://apprtc.appspot.com/?r=XXXXXXXX)

我的问题是,如何使这个应用程序使用自定义WebRTC服务器或与另一个WebRTC应用程序(例如https://talky.io/)

我对如何实现这一点感到有点困惑.我也按照这里的教程,我可以在桌面浏览器之间进行调用,但我不知道如何从Android应用程序连接.

PS

如果有人感兴趣我已经按照以下链接构建了应用程序:

WebRTC:忍者构建不起作用(请参阅注释)

http://simonguest.com/2013/08/06/building-a-webrtc-client-for-android/

android webrtc

10
推荐指数
1
解决办法
1万
查看次数

打开软键盘预览布局

有没有办法在android studio(2.2.2)中打开软键盘来预览布局?

在此输入图像描述

android android-studio

8
推荐指数
1
解决办法
1136
查看次数

对于@Transactional方法,禁用警告"Access可以是包私有"

我有几个注释的公共方法@Transactional,IntelliJ显示它们可以是包私有或私有的警告.

@Transactional
public void doSomething() {
  ///body
}
Run Code Online (Sandbox Code Playgroud)

由于注释的方法@Transactional应该是公共的,如何在IntelliJ中仅对这些方法禁用此检查/警告?

java spring intellij-idea

7
推荐指数
1
解决办法
3854
查看次数

如何使用TURN在服务器上记录中继流

所以这就是故事,我正在构建一个WebRTC应用程序,我必须在服务器上记录流.

"WebRTC是p2p dude,选择一个媒体服务器"

是的,我知道,请避免这个评论;)

但后来我讨论了一件事,如果我强制所有流使用TURN服务器怎么办?数据包正在通过服务器,所以我想我可以把它们保存起来

问题是如何做到这一点.

有什么建议?

webrtc turn

6
推荐指数
1
解决办法
1678
查看次数

BindingAdapter定制getter 2方式数据绑定

我创建了一个自定义设置器,该设置器将枚举的文本设置为editText:

public enum Gender {
MALE, FEMALE}
Run Code Online (Sandbox Code Playgroud)

XML:

 <EditText
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    custom:holder="@={user.gender}" />
Run Code Online (Sandbox Code Playgroud)

适配器:

@BindingAdapter ("custom:holder")
public static void setHolder(EditText editText, Gender gender) {
    editText.setText(gender.toString());
}
Run Code Online (Sandbox Code Playgroud)

来自代码:

binder= DataBindingUtil.bind(getView());
binder.setUser(user);
Run Code Online (Sandbox Code Playgroud)

如何指定返回Gender对象的吸气剂?

我尝试了以下代码,但这似乎不是正确的方法。

@BindingAdapter ("custom:holder")
public static Gender getHolder(EditText editText) {
    return Gender.valueOf(editText.getText().toString());
}
Run Code Online (Sandbox Code Playgroud)

我想要实现的是,当我打电话时binder.getUser(),性别会自动填充。有可能这样做吗?

android android-databinding

6
推荐指数
1
解决办法
2770
查看次数

Android Picasso,在2.5.2版本中添加自定义HTTP标头

我在SO上尝试了几种解决方案,但没有一种方法适合我.

如何在Android Picasso库版本2.5.2中添加自定义HTTP标头

android picasso

5
推荐指数
1
解决办法
2459
查看次数

无法创建'/git/index.lock':文件存在-但不存在

尝试使用源代码树进行交互式基准调整时,出现此消息。

If no other git process is currently running, this probably means a
git process crashed in this repository earlier. Make sure no other git
process is running and remove the file manually to continue.
Run Code Online (Sandbox Code Playgroud)

致命:无法创建'X:/sources/project/.git/index.lock':文件存在。

问题是X:/sources/project/.git/index.lock不存在

SO上的所有其他解决方案都不适合我,因为它们都说要删除此文件。

windows git git-rebase sourcetree

5
推荐指数
2
解决办法
4358
查看次数