Chcę automatycznie ustawić ostrość aparatu Android, gdy tylko aparat trzyma nieruchomo. Zamierzam poszukać samouczków lub próbek, jak to zrobić, lub przynajmniej niewielkiej próbki, która pokazuje, jakie klasy mogę wykorzystać do przechwycenia takich zdarzeń.Jak automatycznie ustawić ostrość aparatu z Androidem?
Odpowiedz
Wygląda na to, że powinieneś continuous autofocus jak to jest omówione tutaj.
Istnieje question here, do którego można się odwoływać.
Dla mnie to pracowała doskonale:
//set camera to continually auto-focus
Camera.Parameters params = c.getParameters();
//*EDIT*//params.setFocusMode("continuous-picture");
//It is better to use defined constraints as opposed to String, thanks to AbdelHady
params.setFocusMode(Camera.Parameters.FOCUS_MODE_CONTINUOUS_PICTURE);
c.setParameters(params);
bardzo dobra odpowiedź –
Min SDK 14 do tego. Czy istnieje sposób na Min SDK <14? – patrickjason91
nie działa w moim przypadku. –
można spróbować Kod: capture
ShutterCallback _pfnShutterCallback = new ShutterCallback() {
@Override
public void onShutter() {
// TODO Auto-generated method stub
}
};
PictureCallback _pfnRawPictureCallback = new PictureCallback() {
@Override
public void onPictureTaken(byte[] data, Camera camera) {
// TODO Auto-generated method stub
}
};
private AutoFocusCallback _pfnAutoFocusCallback = new AutoFocusCallback() {
@Override
public void onAutoFocus(boolean success, Camera camera) {
// TODO Auto-generated method stub
camera.autoFocus(null);
camera.takePicture(_pfnShutterCallback, _pfnRawPictureCallback,
mPicture);
}
};
private PictureCallback mPicture = new PictureCallback() {
public void onPictureTaken(byte[] data, Camera camera) {
new SavePhotoTask().execute(data);
camera.startPreview();
}
};
class SavePhotoTask extends AsyncTask<byte[], String, String> {
// Process save file image
}
wezwanie: mCamera.autoFocus(autoFocusCallback);
Można odwołać się pod adresem: http://android-er.blogspot.com/2011/01/start-camera-auto-focusing-autofocus.html
obserwuję Kod działa dla mnie.
Ustawianie autofokusa (klasa podgląd): kamera
Parameters params = camera.getParameters();
params.setFocusMode(Parameters.FOCUS_MODE_AUTO);
//some more settings
camera.setParameters(params);
Zaproszenie do strzału obrazu w przypadku, gdy autofokus jest gotowy (klasa aktywności):
public void butClick(View v){
preview.camera.autoFocus(new AutoFocusCallback() {
public void onAutoFocus(boolean success, Camera camera) {
if(success){
camera.takePicture(shutterCallback, rawCallback, jpegCallback);
}
}
});
}
obraz Get (klasa aktywności):
PictureCallback jpegCallback = new PictureCallback() {
public void onPictureTaken(byte[] data, Camera camera) {
//do something
}
};
odpowiedź "Jens van de Mötter" jest lepsza od innych, ponieważ kamera jest ustawiana automatycznie tylko wtedy, gdy zamierzamy ją przechwycić. Myślę, że oszczędza to trochę energii. –
Świetna i kompletna odpowiedź! Dziękuję Ci. –
Dlaczego ustawienie autofokusa przechodzi do klasy podglądu? Wydaje mi się, że bardziej odpowiednia byłaby klasa aktywności. –
Spróbuj użyć Camera.Parameters.FOCUS_MODE_CONTINUOUS_VIDEO
lub Camera.Parameters.FOCUS_MODE_CONTINUOUS_PICTURE
. Patrz poniżej:
Camera.Parameters params = camera.getParameters();
if (params.getSupportedFocusModes().contains(
Camera.Parameters.FOCUS_MODE_CONTINUOUS_VIDEO)) {
params.setFocusMode(Camera.Parameters.FOCUS_MODE_CONTINUOUS_VIDEO);
}
camera.setParameters(params);
Ważne jest, aby sprawdzić, czy telefon jest wspieranie wybranego trybu przed przystąpieniem do korzystania z niego, inaczej setParameters()
rzuci wyjątek czasu wykonywania. (Edycja kodu teraz działa poprawnie)
Działa to doskonale dla podglądu callback:
Camera.Parameters parameters = camera.getParameters();
if (parameters.getSupportedFocusModes().contains(
Camera.Parameters.FOCUS_MODE_CONTINUOUS_VIDEO)) {
parameters.setFocusMode(Camera.Parameters.FOCUS_MODE_CONTINUOUS_VIDEO);
}
camera.setParameters(parameters);
- 1. Kadrowanie aparatu z Androidem
- 2. Widok powierzchni aparatu z Androidem
- 3. Podgląd aparatu z Androidem - jak "zamrozić" aparat?
- 4. Samouczek dotyczący podglądu aparatu z Androidem
- 5. Podgląd aparatu z Androidem Rozmiar wydania
- 6. Podgląd aparatu z Androidem Przełącz między kamerami
- 7. Jak przechwytywać surowy obraz z aparatu z Androidem
- 8. ios AVFoundation stuknij, aby ustawić ostrość
- 9. Jak wyciszyć dźwięk migawki aparatu na telefonie z Androidem
- 10. jak ustawić ostrość w kątowym autouzupełnianiu md?
- 11. Jak ustawić ostrość na inne okno?
- 12. Jak mogę ustawić ostrość tego pola hasła?
- 13. WPF i MVVM: Jak automatycznie przenieść ostrość do następnej Kontroli?
- 14. ustawić ostrość oknie popup każdym razem
- 15. Jak ustawić ostrość na prawo tekstu w EditText dla Androida?
- 16. Jak mogę znaleźć folder zdjęć z aparatu na telefonie z Androidem?
- 17. Jak znaleźć kontury klatki z aparatu z Androidem i przekonwertować je na ciała box2d?
- 18. Jak przycinać obrazy z aparatu
- 19. Jak ustawić ostrość (i wyświetlić klawiaturę) na moim EditText programowo
- 20. Jak ustawić ostrość/rozmycie na komponencie w testach integracyjnych?
- 21. Jak ustawić ostrość i odznaczyć tekst wewnątrz niego?
- 22. Jak ustawić colspan w komórce z Androidem gridview
- 23. Jak automatycznie ustawić szerokość akapitu w CSS?
- 24. Android - ustawić ostrość na EditText po wyborze Spinner
- 25. Prześlij zdjęcie z aparatu do serwera PHP
- 26. Zapisywanie obrazu z aparatu na urządzeniu z Androidem do lokalnego przechowywania
- 27. Autofokus aparatu z systemem Android, gdy użytkownik trzyma aparat fotograficzny
- 28. Przesyłanie strumieniowe wideo na żywo z aparatu z Androidem na serwer
- 29. Jak autozapisywać w Vimie 7, gdy ostrość znika z okna?
- 30. Ostrość klawiatury a ostrość logiczna w WPF
możliwe duplikat [Android Camera AutoFocus on Demand] (http://stackoverflow.com/questions/5878042/android- autofocus-on-demand) – swiftBoy