camera全景模式預覽方向異常

2021-06-19 07:46:25 字數 1001 閱讀 8729

1.gpio口,在第一次除錯的時候,gpio配置不正常的話,會導致進不了相機(/dev/目錄下無相應節點video0,video1)。之後交換gpio口,不影響進入相機,影響前後置成像方向;

2.除錯camera方向,主要是指board方向,ro.sf.hwrotation=0,後置設定成0度,前置設定成180度;

3.除錯camera驅動,查詢控制mirror和upside的暫存器。以sp2518為例,p0:0x31

[7] fix frame length 

[6] upside down 

[5] mirror 

[4] pclk inversion 

[3] binning_sel 

[2] 1/4 sub-sample: 800x600 

[0] 720p_sel 

注意其中的p0,.指的是儲存在第0頁上,由以下暫存器控制:p0:0xfd

[2:0] page select 

000: page 0 

001: pgae 1

因此,在驅動**上更新暫存器0x31控制映象和upside時,離它最近的0xfd暫存器值bit0必須是0,改動才有效,一般在sensor_init_data裡面改動,如果在此函式裡有多處0x31,一般是以最後乙個0x31為準,改前面的沒有作用,因為後面的0x31又被覆寫了。至於說0x31的值不確定的話,可以乙個乙個的嘗試,畢竟只有四組值,嘗試也不是很困難。

4.第一次開啟相機預設開啟的是前置還是後置,這個決定於前後置camera在board中的註冊順序,先註冊的camera將被設定成預設開啟的camera。

5.camera相機拍照和錄影均正常,但是全景模式上下倒180度,而且使用ctsverifier.apk測試camera的方向,發現前置攝像頭第乙個方向是乙個倒立的成像。這兩個問題同屬於一類問題,就是camera驅動方向跟映象設定的不對。我遇到的實際問題是這樣處理的,系統方向是0度,那麼我在核心中將camera方向也設定成了0度,然後找到控制驅動映象的暫存器,按照說明進行逐個除錯,最後一切顯示正常。

Camera設定預覽尺寸的總結

總結下個人經驗,由於預覽尺寸設定不當會導致camera預覽變形,經過一番折騰,發現要先獲得camera支援的尺寸在跟螢幕分辯率進行比較,把最接近尺寸設定為預覽尺寸就可以了。首先獲得螢幕寬高 public void getscreensize 以下 簡寫,在su cechanged介面中 overri...

Android系統Camera預覽剛開啟時由暗變明

一 回憶下v4l2驅動操作流程 1.查詢驅動功能 struct v4l2 capability cap ioctl fd,vidioc querycap,cap printf tk driver name s ncard name s nbus info s n cap.driver,cap.car...

Camera2教程之2 實現預覽

public class usecamera2 2activity extends catch cameraacces ception e override public void onsu cetexturesizechanged nonnull su cetexture su ce,int wi...