问题标签 [android-textureview]

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 投票
0 回答
766 浏览

android-mediaplayer - 在 RecyclerView 中使用 TextureViews 播放视频,例如 Vine

我有一个RecyclerView,每个ViewHolder都有RecyclerView一个MediaPlayer对象。我正在使用 aTextureView来保存MediaPlayer对象,问题是当我向下滚动时它非常滞后。为什么会这样?MediaPlayer我相信当表面被破坏时我正在正确地释放对象。

作为参考,我使用了TextureView从这个 repo 中获取的以下实现:TextureVideoView

TextureVideoView.java

当我下载资产时,我会在我的适配器中提供它,如下所示:

问题是当我滚动时它真的很迟钝,我该如何解决这个问题?除非视图大部分可见,否则我如何制作RecyclerView像 Vine 一样的暂停。TextureView

寻找这个问题的非常彻底的答案和良好的优化实现。

0 投票
1 回答
844 浏览

android - android检查媒体播放器是否在TextureView中完成

我有一个 TextureView。我可以从我的 TextureView 中的评估文件夹中播放视频。现在我想检查视频是否完成。我写了 setOnCompletionListener 但没有工作。这是我的来源

我还在 setSurfaceTextureListener 之外编写了 setOnCompletionListener 侦听器,但也无法正常工作。我怎样才能解决我的问题?如果有人知道解决方案,请帮助我

0 投票
0 回答
520 浏览

android - Android TextureView 没有在 Android KitKat 4.4 上剪裁到它的视图边界

我正在使用 TextureView 通过setTransform(matrix)本教程中设置比例矩阵来显示裁剪的视频。所以视频变得比视图本身更大。这适用于除 KitKat (4.4) 之外的所有 android 版本。

我在这里遇到的问题是 TextureView 的内容没有在视图边界处裁剪 - 它也绘制了视频的裁剪部分。但是,外部部分仅在布局刷新(滚动)时更新。

裁剪后的视频 (nature.mp4) 应如下所示:

棒棒糖的状态

这是它在 KitKat 上的样子(我在这个屏幕截图中显示了布局边界):

kitkat上的状态

我尝试通过将剪辑边界设置为视图边界setClipBounds(..)- 这是行不通的。另外,我不能使用,Canvas.clipRect(..)因为 TextureView 的绘制方法是最终的。

这显然是 KitKat 的一个错误,但有人知道解决方法吗?

0 投票
0 回答
195 浏览

android - Android 无法创建媒体播放器

我有一个 mp4 视频,我尝试在 TextureView 中播放我的视频。

我有一个问题。在 Nexus 或 HTC 中,我没有问题,但在某些华为设备中,我有此消息

这是我的来源

正如我所说,我可以在 Nexus 和 HTC 设备上播放我的视频,但昨天我在华为运行我的应用程序,我收到了这个错误消息。

我如何检查设备是否可以播放视频?

如果有人知道解决方案,请帮助我

0 投票
1 回答
1064 浏览

android - 2 个视图的相同 SurfaceTexture

是否可以对 2 个视图使用相同的表面纹理?如果是这样,怎么做?我使用 mediaplayer 播放视频,我想同时在 2 个不同的视图上播放相同的视频。

我尝试创建 SurfaceTexture,然后将此表面纹理设置为两个视图,但它不起作用。

它在一个或另一个视图上随机工作,但不能同时在两个视图上工作。

0 投票
0 回答
1153 浏览

android - Camera2 相机变换

我遇到了 Camera2 API 的问题,我基本上是在使用 Google 示例代码(Camera2Basic),但我确实更改了 TextureView 的大小,因此它不会跨越整个屏幕,屏幕也有一个ToolBar.

我得到的预览显示非常倾斜。

这是 configureTransform 的代码

0 投票
0 回答
299 浏览

java - 将 ImageReader 与较旧的 Camera API 一起使用(由 API <20 支持)

ImageReader我从这里使用了 Google 示例。

该代码使用Camera2API,ImageReader以便查询图像在与预览图像不同的线程中运行。

由于我想以 Android KitKat (API 20) 为目标,因此我需要修改代码以使用较旧的 Camera API,同时保持ImageReader部件不变。

这是设置的原始代码部分onImageAvailableListener

现在我可以使用较旧的 Camera API。但我迷失在将它与ImageReader. 所以我不知道我应该如何设置onImageListener,以便在图像交付后我可以访问它。

这是我的修改:

我的问题是我应该如何添加ImageReader上面的代码以使其正常工作?

提前致谢。

0 投票
1 回答
1881 浏览

android - 即使活动被销毁,也不会调用 onSurfaceTextureDestroyed

我有一个纹理视图,我已经为此设置了setSurfaceTextureListener。我使用这个纹理视图在我的应用程序中显示实时摄像机源。我在应用程序中明确处理BACK KEY在 BACK KEY上按我调用“ finish()”方法来破坏我的活动。活动的“ onDestroy”方法被调用。

但是onSurfaceTextureDestroyed我在纹理视图上设置的“”方法不会被调用。我不确定是否可以将此问题与 android 版本联系起来但是,有趣的是,当我在KITKATonSurfaceTextureDestroyed上使用我的应用程序时会调用“” 。它给果冻豆的问题。

另外,当我检查时,当我按 HOME 键时:- 在果冻豆onPauseonStop并被调用。但是在KITKAT onPause 和onStop所有onDestroy三个都被调用。

我想知道为什么onSurfaceTextureDestroyed即使调用活动的“”也不会调用“ onDestroy”。

0 投票
0 回答
326 浏览

android - GLTextureView 在它后面创建洞

您好,我致力于GLTextureView显示 alpha 视频,但由于我设置了 alpha 通道

我第一次尝试使用 aGLSurfaceView但问题是它需要 asetZOrderOnTop(true)来显示它并且视图不再附加到它的容器(这是一个 zoomView)。ATextureView更好,但现在可悲的是,我的视频在我的容器上的一个矩形孔中!

在此处输入图像描述

资源: 在此处输入图像描述

通缉在此处输入图像描述

- [编辑] -

这里有一些例子:

在此处输入图像描述

上面是一个GLSurfaceView带有 alpha 视频的视频,下面是一个自定义的GLTextureView,两者都在一个horizontalView. 顶部似乎是我想要的好!但是当我向右滚动时检查一下: 在此处输入图像描述

当底部根据需要隐藏时,顶部仍然出现!

0 投票
1 回答
4308 浏览

android - 具有透明度的 TextureView

是否可以有一个具有透明度的 TextureView,以便它下面的视图(z 顺序)可见?

TextureView 的 IOW 部分是透明的,TextureView 位于顶部的视图显示通过。