В Android вы можете получить описание свойств Camera
, извлекая CameraInfo
. Меня интересует ориентация, как описано в http://developer.android.com/reference/android/hardware/Camera.CameraInfo.html#orientation
Однако документация кажется несовместимой с тем, как все четыре из моих устройств ведут себя, и у меня есть новости о пятом устройстве, для которого это кажущееся фиксированное значение изменяется.
В частности, в документации говорится:
Значение - это угол, в котором изображение камеры должно вращаться по часовой стрелке, чтобы он отображался правильно на дисплее в естественном ориентации.... Например, предположим, что устройство имеет естественный высокий экран. Обратный датчик камеры монтируется в ландшафтном режиме. Вы глядя на экран. Если верхняя сторона датчика камеры выровнена с правым краем экрана в естественной ориентации, значение должно быть 90. Если верхняя сторона переднего датчика камеры выровненный справа от экрана, значение должно быть 270.
Но в заявленном примере изображение камеры поворачивается на 90 градусов по часовой стрелке относительно естественной высокой ориентации, а не наоборот. То есть изображение, верхняя часть которого выровнена с правой стороны устройства, требует 270 градусов по часовой стрелке для выравнивания с верхней стороной устройства.
По крайней мере, все четыре из моих устройств сообщают "90" для этого значения, и все действуют так, как будто верх камеры является правой стороной устройства, когда он удерживается в естественной ориентации. То есть изображение должно поворачиваться на 270 градусов по часовой стрелке, а не на 90, чтобы соответствовать естественной ориентации. Пример кажется правильным; в первой строке нет.
Как ни странно, у меня есть данные журналов с одного пользовательского устройства, которое показывает, что оно сообщает это значение как 90 раз и 0 в другое время! Это должно быть физическое свойство того, как камера находится в устройстве, не так ли?
- Может ли кто-нибудь подтвердить, что первая строка документации на самом деле неверна, и пример верен?
- Кто-нибудь заметил изменение значения
CameraInfo.orientation
? Есть ли доказательства в документах, что это юридическое поведение, или это, вероятно, ошибка в устройстве? - Любые другие связанные комментарии, опыты, gotchas Я еще не наткнулся?