小编Ver*_*lst的帖子

直播主题

这可能是很多人会为谁在即时串流intrested人的intresting主题您的设备 一个网络服务器.(初级Android/Java)我终于找到了一种如何从我的设备的相机直播到我的网络服务器(网站)的方法.在wifi网络上需要大约.在wifi网络上显示1帧/秒,它也适用于EDGE/3G网络.在这个主题/问题中,我想讨论新的技术,改进,关于直播的想法,因为我将与你分享我的(代码也很受欢迎.)

我的代码使用setOneShotPreviewCallback()重复从摄像头预览中获取快照,以调用onPreviewFrame().帧以YUV格式传送,因此raw2jpg()将其转换为jpeg编码器的32位ARGB.NV21是YUV平面格式.

应用程序调用getPicture(),并在私有字节数组mCurrentFrame中生成图像的jpeg数据并返回该数组.

在此之后,byteArray mCurrentFrame获取Base64Encoded并以HTTP POST方式与字符串值Base64和自己的ID代码一起发送到我的网络服务器,这样人们就无法向其发送另一个图像.在网络服务器上,它再次被解码并被放入文件test.jpg中.PHP和Javascript正在Web服务器上运行.PHP获取POST方法,JavaScript每750秒重新加载一次图像.这基本上就是它的工作原理.

现在,我对您的想法,改进以及您想要添加/询问的其他内容非常感兴趣.以下是我的一些问题:

1)带音频直播的最佳方法是什么?视频录制或我的方法+录音?

2)你将如何处理视频记录流?

3)您如何将音频流式传输到网络服务器?(主要目标)(使用Java,PHP和JavaScript)

4)我还计划向我添加典型的实时流媒体特征,例如当一个名人出现时,你可以在实时流媒体时显示他的名字,或者只是将你的sd目录中的图像添加到你的直播中.你也会解码它并覆盖图像,或者以某种方式将图像放在你的直播中吗?

这个主题主要针对问题,所以请对这里的一些人提供一些很好的帮助.因此我添加了50(woot!)代表的赏金.

真诚的,XverhelstX

javascript php java android

14
推荐指数
2
解决办法
4094
查看次数

照片/图像到草图算法

有没有人有一个想法,链接,库,源代码,...如何将照片和图像(位图)转换为粗略的图片?我找不到任何有关如何做的好消息来源.

我发现这个链接如何以编程方式对图像进行卡通?关于如何以编程方式绘制图像,但我更喜欢将图像设置为草图.

我想制作一个Android程序,可以编程"转换"JPEG照片到粗略的图像.

java android

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

NotificationListenerService:getActiveNotifications上的NullPointerException

我正在尝试根据本教程在我的应用程序中实现NotificationListenerService:http://www.kpbird.com/2013/07/android-notificationlistenerservice.html,但是在调用getActiveNotifications时我遇到了NullPointerException.

Caused by: java.lang.NullPointerException
at android.os.Parcel.readException(Parcel.java:1437)
at android.os.Parcel.readException(Parcel.java:1385)


at android.app.INotificationManager$Stub$Proxy.getActiveNotificationsFromListener(INotificationManager.java:500)
at android.service.notification.NotificationListenerService.getActiveNotifications(NotificationListenerService.java:149)
at com.rootsoft.rsnotificationservice.RSNotificationService.activeNot(RSNotificationService.java:85)
at com.rootsoft.rsnotificationservice.RSNotificationService.access$0(RSNotificationService.java:81)
at com.rootsoft.rsnotificationservice.RSNotificationService$1.onReceive(RSNotificationService.java:105)
at android.app.LoadedApk$ReceiverDispatcher$Args.run(LoadedApk.java:763)
... 9 more
Run Code Online (Sandbox Code Playgroud)

我正在向服务发送广播,该广播应生成所有通知的列表:

private void activeNot () {
    List l = new List();
    l.Initialize();

    for (StatusBarNotification sbn : getActiveNotifications() ) { <---- Error happens here
        l.Add(sbn);
    }

    Log.i("B4A", "List created.");


    }
}
Run Code Online (Sandbox Code Playgroud)

java notifications android

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

添加3D对象以映射并平移它

我正在尝试制作一个Pokemon GO克隆(教育工作),我知道有几种可能的方法来使用布局技巧MapBox来设置Google地图的样式.我最大的挑战是在地图上添加一个3d对象/模型,并使用手势来缩放和平移我的角色.


地图和平移上的3D模型示例

不知何故,相机应该固定在物体上(标记?),并且应该在地图上禁用平移/缩放,但手势应该围绕角色旋转相机.我想知道是否有人可以使用原生Android SDK和Google Maps/MapBox以正确的方向向我射击如何实现此类功能

由于口袋妖怪GO 没有使用谷歌地图,我想知道他们是如何实现自己的地图的东西,但这超出了这个问题的范围.

(我不是在寻找像here.comnutiteq这样的付费解决方案)

android google-maps mapbox google-maps-android-api-2

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

反向 AppBarLayout.ScrollingViewBehavior

我有一个ToolBarRecyclerview包裹在一个Coordinatorlayout. RecyclerView 填充了来自我们 api 的消息,并从底部堆叠。(就像一个聊天应用程序)

 //Set the layout manager
 LinearLayoutManager layoutManager = new LinearLayoutManager(requireContext());
 layoutManager.setStackFromEnd(true);
 layoutManager.setReverseLayout(true);
 binding.listMessages.setLayoutManager(layoutManager);
Run Code Online (Sandbox Code Playgroud)

我想ReverseScrollBehavior通过覆盖AppBarLayout.ScrollingViewBehavior来反转它的行为来定义一个自定义。所以当我向上滚动时,工具栏会隐藏,当我向下滚动(到底部)时,工具栏会显示。

<androidx.recyclerview.widget.RecyclerView
    android:id="@+id/list_messages"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:scrollbars="none"
    app:stackFromEnd="true"
    app:reverseLayout="true"
    app:layout_behavior="com.rootsoft.kot.utils.ReverseScrollBehavior" />
Run Code Online (Sandbox Code Playgroud)

我想为此使用ScrollingViewBehavior而不是覆盖onTouch

更新

我想要实现的是获得当前appbar_scrolling_view_behavior. 想象一下有一个聊天应用程序,其中最新的消息从底部开始。当你向上滚动时,我想隐藏工具栏。AppBarLayout 的当前情况是当您向上滚动时,工具栏会显示,而当您向下滚动时,它会隐藏。我的滚动标志是:app:layout_scrollFlags="scroll|enterAlways|snap"

android

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

需要了解一些java代码

我对android编程很新,但我学的很快.所以我在这里找到了一段有趣的代码:http://code.google.com/p/camdroiduni/source/browse/trunk/code/eclipse_workspace/camdroid/src/de/aes/camdroid/CameraView.java

它是关于从设备的相机到浏览器的实时流媒体.

但我想知道代码实际上是如何工作的.

这些是我想要了解的内容:

1)它们如何流式传输到webbrowser.我知道他们将index.html文件发送到设备的ip地址(在wifi上),该文件每秒重新加载页面.但他们如何使用套接字将index.html文件发送到所需的 IP地址?

2)http://code.google.com/p/camdroiduni/wiki/Status#save_pictures_frequently,他们在这里提到他们正在使用视频,但我仍然相信他们拍照并发送它们,因为我没有看到任何地方的媒体记录.

现在我的问题是他们如何继续发送并将这些图像保存到SD文件夹中(我认为).我认为这是用这个代码完成的,但它是如何工作的.与c.takepicture一样,需要很长时间才能保存并再次开始预览,因此不能选择直播.

public synchronized byte[] getPicture() {
    try {
        while (!isPreviewOn) wait();
        isDecoding = true;
        mCamera.setOneShotPreviewCallback(this);
        while (isDecoding) wait();
    } catch (Exception e) {
        return null;
    }
    return mCurrentFrame;
}

private LayoutParams calcResolution (int origWidth, int origHeight, int aimWidth, int aimHeight) {
    double origRatio = (double)origWidth/(double)origHeight;
    double aimRatio  =  (double)aimWidth/(double)aimHeight;

    if (aimRatio>origRatio)
        return new LayoutParams(origWidth,(int)(origWidth/aimRatio));
    else
        return new LayoutParams((int)(origHeight*aimRatio),origHeight);
}

private void raw2jpg(int[] rgb, byte[] …
Run Code Online (Sandbox Code Playgroud)

java android

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

在Nexus 5x上以纵向反转图像

我一直在研究一个过时的Zxing库版本的旧项目,需要更新以修复Nexus 5x上的反向图像错误.我设法更新了库,但只支持纵向模式.

if (orientation == Configuration.ORIENTATION_LANDSCAPE) {
    source = activity.getCameraManager().buildLuminanceSource(data,
                width, height);
} else {
    byte[] rotatedData = new byte[data.length];
    for (int y = 0; y < height; y++) {
        for (int x = 0; x < width; x++)
            rotatedData[x * height + height - y - 1] = data[x + y
                    * width];
    }
    int tmp = width;
    width = height;
    height = tmp;
    data = rotatedData;
    source = activity.getCameraManager().buildLuminanceSource(data,
                width, height);
}
Run Code Online (Sandbox Code Playgroud)

我现在面临着在我们的Nexus 5X设备上解码条形码的问题,我们的EAN-13条形码似乎在旋转,如下图所示. …

android zxing

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

用PHP叠加图像

我正在寻找一种在现有图像上叠加图像的方法.

例如:

IMG1 + IMG2

我在这里找到了一个很好的例子:使用一个Image元素的PNG叠加. 但我对这些有两个问题.

首先,我不希望尺寸彼此相等.例如(215*215在215*215).这是因为我的用户可以选择他们想要放置图像的位置.(上,左,下,右上)所以8个方向.

第二问题是,在该例子中,只有2个图像被允许为叠加.我的用户(再次)将能够在其上放置多个图像.

我对Javascript和PHP有一点了解,所以如果你们(和女孩们)可以帮助我的话会很棒.

此致

javascript php

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

AndroidX-程序类型已存在:androidx.annotation.BoolRes

我今天尝试使用Android Studio中的“重构->迁移到AndroidX”选项将当前项目迁移到AndroidX,每当尝试编译应用程序时,都会收到

程序类型已经存在:androidx.annotation.BoolRes

AGPBI:{“种类”:“错误”,“文本”:“程序类型已存在:androidx.annotation.BoolRes”,“源”:[{}],“工具”:“ D8”}:app:transformDexArchiveWithExternalLibsDexMergerForDebug失败:app:buildInfoGeneratorDebug失败:生成失败,发生异常。*出了什么问题:任务':app:transformDexArchiveWithExternalLibsDexMergerForDebug'的执行失败。

我曾经./gradlew app:dependencies获取过我的依赖项列表,但是似乎很多库都在使用新的androidx.annotation:annotation:1.0.0依赖项。

//Android
implementation "androidx.constraintlayout:constraintlayout:$constraintLayout"
implementation "androidx.cardview:cardview:$androidX"
implementation "androidx.recyclerview:recyclerview:$androidX"
implementation "androidx.annotation:annotation:1.0.0"

//Material
implementation "com.google.android.material:material:$material"

// ViewModel and LiveData
implementation "androidx.lifecycle:lifecycle-extensions:$lifecycle"
annotationProcessor "androidx.lifecycle:lifecycle-compiler:$lifecycle"

//Room
implementation "androidx.room:room-runtime:$room"
annotationProcessor "androidx.room:room-compiler:$room"
Run Code Online (Sandbox Code Playgroud)

android android-studio

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

INI4J - 删除部分

如何删除包含或不包含Java库INI4J的部分?

这不起作用

Wini ini = new Wini(File);
System.out.println(Integer.toString(Position));
ini.remove(Integer.toString(Position));
Run Code Online (Sandbox Code Playgroud)

我也尝试使用ConfigParser.

java ini4j

0
推荐指数
1
解决办法
2003
查看次数