【问题标题】:how to find out TextureView will work on an android device?如何找出 TextureView 将在 android 设备上工作?
【发布时间】:2017-12-21 22:42:41
【问题描述】:

我正在实施一个 IPTV 项目,所以我有一个播放视频的TextureView。但在某些情况下,由于机顶盒设备中的一些硬件加速窗口问题,它没有图片而只播放音频。

所以我的问题是如何确定TextureView 可以在安卓设备上运行?

我的另一个问题是:

如何判断安卓设备是否能正常运行TextureView

提前致谢

【问题讨论】:

  • 我建议你先阅读TextureView documentation
  • 我已经阅读了,但我们要为这个项目购买机顶盒,我们想知道这些设备将与 TextureView 一起正常运行
  • @Code-Apprentice 请阅读我的评论

标签: android gpu opengl-es-2.0 surfaceview textureview


【解决方案1】:

这可能对 android 新手开发人员或任何会看到此内容的人有益。

在我的例子中,在OnCreate 中使用这个sn-p 方法可以帮助我找出哪个设备可以使用SurfaceView

    if (
            GLES20.glGetString(GLES20.GL_RENDERER) == null ||
                    GLES20.glGetString(GLES20.GL_VENDOR) == null ||
                    GLES20.glGetString(GLES20.GL_VERSION) == null ||
                    GLES20.glGetString(GLES20.GL_EXTENSIONS) == null ||
                    GLES10.glGetString(GLES10.GL_RENDERER) == null ||
                    GLES10.glGetString(GLES10.GL_VENDOR) == null ||
                    GLES10.glGetString(GLES10.GL_VERSION) == null ||
                    GLES10.glGetString(GLES10.GL_EXTENSIONS) == null) {
        // this device can not use TextureView
    } else {
        // this device can use TextureView
    }

要找出SurfaceViewTextureView 之间的区别,请参阅this link

【讨论】:

    【解决方案2】:

    我可以建议你看看Google Exoplayer 2吗?我一直在将它用于 Android TV 项目等,它似乎运行得非常好。它接受身份验证密钥和许多格式,如渐进式 HLS 等。

    演示应用程序here

    【讨论】:

    • 感谢您的回复,我们在项目中使用了Exomedia4.0.2。我们需要知道哪种设备适合我们...注意我们需要将 STB 设备的成本降到最低 :)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多