自己写了一个Camera的程序,只有主动调用autofous的时候才会进行自动对焦,我手机的Camera支持的对焦模式只有auto和macro, 但是我看我手机系统自带的相机在拍照移动时会进行自动对焦,想知道这是如何实现的?难道是判断手机的rotation吗?可是如果方向不变只是距离改变的时候系统相机也会进行自动对焦,这是如何做到的呢?因为从Camera支持的对焦模式里看应该没有支持连续对焦模式。
人生最曼妙的风景,竟是内心的淡定与从容!
相機變焦是光學變焦,程式只是做後期處理,系統相機依賴底層驅動,可以做到精細一點的處理,應用層開放的Camera API 不是全部的相機控制API,所以是有差別的。另外,Camera API沒有手機移動相關的。
看過zxing的原始碼(雖然是很舊的程式碼,但依然可以用),它是用AsyncTask不停循環對焦。 API裡面雖然有連續對焦的參數,但是要手機支持,試了之後效果不是很好。僅供參考,可參考。 https://github.com/zxing/zxing/blob/master/android/src/com/google/zxing/client/android/camera/AutoFocusManager.java
再附camera2的demohttps://github.com/googlesamples/android-Camera2Basic
相機變焦是光學變焦,程式只是做後期處理,系統相機依賴底層驅動,可以做到精細一點的處理,應用層開放的Camera API 不是全部的相機控制API,所以是有差別的。另外,Camera API沒有手機移動相關的。
看過zxing的原始碼(雖然是很舊的程式碼,但依然可以用),它是用AsyncTask不停循環對焦。 API裡面雖然有連續對焦的參數,但是要手機支持,試了之後效果不是很好。僅供參考,可參考。
https://github.com/zxing/zxing/blob/master/android/src/com/google/zxing/client/android/camera/AutoFocusManager.java
再附camera2的demo
https://github.com/googlesamples/android-Camera2Basic