几乎相同的手机之间通过 Camera2 API 获得相机内部函数的差异

问题描述 投票:0回答:1

我很清楚,并非所有手机都通过

camera2
API 产生相机内部功能。然而,我发现非常令人困惑的是,有些手机产生内在函数,而其他“几乎相同”的手机却没有。例如。三星 Galaxy S20 FE (SM-G780G) 通过 camera2 API 产生内在函数,而三星 Galaxy S20 5G (SM-G981B) 奇怪地没有。
这看起来很奇怪,原因如下:

这两款手机几乎相同(品牌/制造商、型号、甚至预算......)。
  • 这两款手机列出了与相机相关的相同系统功能(例如,它们都具有
  • android.hardware.camera.level.full
  • 功能等)。
    (如果有相关的话)这两款手机还列出了几乎相同的系统功能,但与相机没有任何关系。
问题:

  • 为什么几乎相同的手机之间存在这种行为差异?

  • 为什么android.hardware.camera.level.full功能

    不能保证内在函数的可用性?我的意思是,这里的“完整”到底是什么意思?
    
    

  • 如何防止我们的应用程序在那些不通过 camera2 API 生成内在函数的设备上显示在 Google Play 中?

    
    

    Google Play 中的应用程序过滤可与系统功能配合使用。
    • 哪个系统功能将最终确定内在函数是否可用?
  • 这种混乱还引发了
更基本的问题:

    如果型号变体的一个
  • 设备(例如三星 S20 FE SM-G780G 设备)产生内在函数,这是否意味着相同型号变体的所有设备(即所有三星S20 FE SM-G780G 器件)也能保证产生内在特性吗? 如果某个型号的一种变体(例如 Samsung S20 FE SM-G780

  • G
  • )产生内在函数,这是否意味着同一型号的所有其他变体(例如 Samsung S20 FE SM-G780F)也保证产生内在函数? 有人有类似经历吗?也许我们做错了什么?

  • 提前非常感谢您提供的任何帮助!

硬件级别

FULL
android google-play android-camera2 camera-intrinsics
1个回答
0
投票
这里

。它过去几乎涵盖了 API 支持的所有内容,但由于定义在定义后无法更改(出于向后兼容性的原因),因此在后续 API 版本中添加了很多

FULL
规范未涵盖的内容。 例如,它不强制要求镜头校准信息,而只有支持
DEPTH_OUTPUT

LOGICAL_MULTI_CAMERA

功能的相机才需要镜头校准信息。 尽管任何设备都可以根据需要宣传它们,即使这些功能未列出。 这些三星都有两个版本,一种使用高通处理器,一种使用Exynos处理器。我怀疑是 SoC 的差异导致了镜头校准字段是否存在的差异。每个 SoC 供应商都会向制造商提供默认的相机实现,我怀疑一个供应商提供了校准信息,而另一个供应商则没有。也有可能一部手机在其默认相机应用程序中确实有一个使用此信息的附加功能,因此将其填充到 API 中。

因此,不幸的是,我不一定相信同一部手机的每个变体都具有相同的功能。

对于那些不通过camera2 API产生内在函数的设备,如何防止我们的应用程序在Google Play中显示?

不幸的是,没有系统功能可以涵盖这一点,因此无法对相机内部功能使用 Play 商店过滤。

© www.soinside.com 2019 - 2024. All rights reserved.