Zadbaj o dobrą organizację dzięki kolekcji
Zapisuj i kategoryzuj treści zgodnie ze swoimi preferencjami.
Camera_device_ops Odniesienie do struktury
#include < camera.h >
|
int(* | set_preview_window )(struktura urządzenie_kamery *, struktura podgląd_stream_ops *okno) |
|
próżnia(* | set_callbacks )(struct kamera_device *, kamera_notify_callback notify_cb, kamera_data_callback data_cb, kamera_data_timestamp_callback data_cb_timestamp, kamera_request_memory get_memory, void *user) |
|
próżnia(* | włącz_msg_type )(struktura urządzenie_kamery *, int32_t msg_type) |
|
próżnia(* | dezaktywuj_msg_type )(struktura urządzenie_kamery *, int32_t msg_type) |
|
int(* | msg_type_enabled )(struct kamera_urządzenie *, int32_t msg_type) |
|
int(* | start_preview )(struktura urządzenie_kamery *) |
|
próżnia(* | stop_preview )(struktura urządzenie_kamery *) |
|
int(* | podgląd_włączony )(struktura urządzenie_kamery *) |
|
int(* | store_meta_data_in_buffers )(struct kamera_device *, int włącz) |
|
int(* | start_recording )(struktura urządzenie_kamery *) |
|
próżnia(* | stop_recording )(struktura urządzenie_kamery *) |
|
int(* | nagrywanie_włączone )(struktura urządzenie_kamery *) |
|
próżnia(* | release_recording_frame )(struct kamera_urządzenie *, const void *nieprzezroczysty) |
|
int(* | auto_focus )(struktura urządzenie_kamery *) |
|
int(* | cancel_auto_focus )(struktura urządzenie_kamery *) |
|
int(* | take_picture )(struktura urządzenie_kamery *) |
|
int(* | cancel_picture )(struktura urządzenie_kamery *) |
|
int(* | set_parameters )(struct kamera_device *, const char *parms) |
|
znak *(* | get_parameters )(struktura urządzenie_kamery *) |
|
próżnia(* | put_parameters )(struct kamera_urządzenie *, char *) |
|
int(* | send_command )(struct kamera_urządzenie *, int32_t cmd, int32_t arg1, int32_t arg2) |
|
próżnia(* | wydanie )(struktura urządzenie_kamery *) |
|
int(* | zrzut )(struktura urządzenie_kamery *, int fd) |
|
Definicja w linii 99 pliku kamera.h .
Uruchom automatyczne ustawianie ostrości. Po zakończeniu ustawiania ostrości wywoływana jest procedura powiadamiania zwrotnego za pomocą CAMERA_MSG_FOCUS. funkcja autoFocus() zostanie wywołana ponownie, jeśli będzie potrzebna kolejna funkcja automatycznego ustawiania ostrości.
Definicja w linii 227 pliku kamera.h .
Anuluje funkcję automatycznego ustawiania ostrości. Jeżeli automatyczne ustawianie ostrości jest nadal w toku, funkcja ta anuluje je. Niezależnie od tego, czy trwa automatyczna regulacja ostrości, czy nie, funkcja ta przywróci domyślną pozycję ostrości. Jeśli aparat nie obsługuje automatycznego ustawiania ostrości, nie jest to możliwe.
Definicja w linii 235 pliku kamera.h .
Anuluj zdjęcie rozpoczęte za pomocą takePicture. Wywoływanie tej metody, gdy nie jest robione żadne zdjęcie, nie ma sensu.
Definicja w linii 246 pliku kamera.h .
Wyłącz wiadomość lub zestaw wiadomości.
Po odebraniu wywołania DisableMsgType(CAMERA_MSG_VIDEO_FRAME) warstwa HAL kamery nie powinna polegać na swoim kliencie w zakresie wywołania metody releaseRecordingFrame() w celu zwolnienia klatek nagrania wideo wysłanych przez kamerową warstwę HAL przed i po wywołaniu DisableMsgType(CAMERA_MSG_VIDEO_FRAME). Klientom HAL kamery nie wolno modyfikować ani uzyskiwać dostępu do żadnej klatki nagrywania wideo po wywołaniu funkcji DisableMsgType(CAMERA_MSG_VIDEO_FRAME).
Definicja w linii 132 pliku kamera.h .
Zrzut stanu sprzętu kamery
Definicja w linii 282 pliku kamera.h .
void(* Enable_msg_type)(struct kamera_device *, int32_t msg_type) |
Wszystkie poniższe trzy funkcje pobierają msg_type, który jest maską bitową wiadomości zdefiniowanych w include/ui/Camera.h Włącz wiadomość lub zestaw wiadomości.
Definicja w linii 120 pliku kamera.h .
Pobierz parametry kamery. Bufor zwrócony przez kamerę HAL musi zostać do niego zwrócony z parametrami put_parameters, jeśli parametry put_parameters nie mają wartości NULL.
Definicja w linii 258 pliku kamera.h .
Zapytanie, czy wiadomość lub zestaw wiadomości jest włączony. Należy pamiętać, że działa to jak AND, jeśli którykolwiek z zapytanych komunikatów jest wyłączony, zwróci wartość false.
Definicja w linii 139 pliku kamera.h .
Zwraca wartość true, jeśli podgląd jest włączony.
Definicja w linii 154 pliku kamera.h .
Kamera HAL wykorzystuje własną pamięć do przekazywania nam parametrów, gdy wywołujemy get_parameters. Użyj tej funkcji, aby zwrócić pamięć z powrotem do HAL kamery, jeśli put_parameters nie ma wartości NULL. Jeśli put_parameters ma wartość NULL, musisz użyć funkcji free(), aby zwolnić pamięć.
Definicja w linii 265 pliku kamera.h .
Zwraca wartość true, jeśli włączone jest nagrywanie.
Definicja w linii 208 pliku kamera.h .
Zwolnij zasoby sprzętowe należące do tego obiektu. Należy pamiętać, że nie jest to wykonywane w destruktorze.
Definicja w linii 277 pliku kamera.h .
void(* release_recording_frame)(struct kamera_device *, const void *opaque) |
Zwolnij klatkę zapisu zwróconą wcześniej przez CAMERA_MSG_VIDEO_FRAME.
Klient HAL kamery jest odpowiedzialny za zwolnienie klatek nagrania wideo wysyłanych przez warstwę HAL kamery, zanim HAL kamery odbierze wywołanie dezaktywująceMsgType(CAMERA_MSG_VIDEO_FRAME). Po odebraniu wywołania dezaktywacjiMsgType(CAMERA_MSG_VIDEO_FRAME) za zarządzanie cyklem życia klatek zapisu wideo odpowiada warstwa HAL kamery.
Definicja w linii 219 pliku kamera.h .
int(* send_command)(struct kamera_urządzenie *, int32_t cmd, int32_t arg1, int32_t arg2) |
Wyślij polecenie do sterownika kamery.
Definicja w linii 270 pliku kamera.h .
Ustaw powiadomienia i wywołania zwrotne danych
Definicja w linii 105 pliku kamera.h .
Ustaw parametry kamery. Zwraca BAD_VALUE, jeśli którykolwiek parametr jest nieprawidłowy lub nie jest obsługiwany.
Definicja w linii 252 pliku kamera.h .
Ustaw ANativeWindow, do którego wysyłane są ramki podglądu
Definicja w linii 101 pliku kamera.h .
Uruchom tryb podglądu.
Definicja w linii 144 pliku kamera.h .
Uruchom tryb nagrywania. Gdy dostępny jest zarejestrowany obraz, wysyłany jest komunikat CAMERA_MSG_VIDEO_FRAME z odpowiednią ramką. Każda klatka zapisu musi zostać zwolniona przez klienta HAL kamery za pomocą metody releaseRecordingFrame(), zanim klient wywoła opcję DisableMsgType(CAMERA_MSG_VIDEO_FRAME). Po wywołaniu przez klienta DisableMsgType(CAMERA_MSG_VIDEO_FRAME) za zarządzanie cyklem życia klatek nagrywania wideo odpowiedzialna jest warstwa HAL kamery, a klientowi nie wolno modyfikować ani uzyskiwać dostępu do żadnych klatek nagrywania wideo.
Definicja w linii 198 pliku kamera.h .
Zatrzymaj wcześniej rozpoczęty podgląd.
Definicja w linii 149 pliku kamera.h .
Zatrzymaj wcześniej rozpoczęte nagrywanie.
Definicja w linii 203 pliku kamera.h .
int(* store_meta_data_in_buffers)(struct kamera_device *, int włącz) |
Poproś kamerę HAL o przechowywanie metadanych lub rzeczywistych danych YUV w buforach wideo wysyłanych za pośrednictwem CAMERA_MSG_VIDEO_FRAME dla sesji nagraniowej. Jeśli nie zostanie wywołane, domyślnym zachowaniem HAL kamery będzie przechowywanie prawdziwych danych YUV w buforach wideo.
Aby metoda ta była skuteczna, powinna zostać wywołana przed startRecording().
Jeżeli metadane są przechowywane w buforach wideo, do odbiorcy buforów wideo należy interpretacja zawartości i znalezienie rzeczywistych danych klatki za pomocą metadanych w buforze. Sposób, w jaki to się robi, wykracza poza zakres tej metody.
Niektóre warstwy HAL kamer mogą nie obsługiwać przechowywania metadanych w buforach wideo, ale wszystkie warstwy HAL kamer powinny obsługiwać przechowywanie prawdziwych danych YUV w buforach wideo. Jeśli warstwa HAL kamery nie obsługuje przechowywania metadanych w buforach wideo, gdy jest to wymagane, należy zwrócić INVALID_OPERATION. Bardzo przydatne jest, aby kamera HAL przesyłała metadane zamiast rzeczywistych danych klatki bezpośrednio do kodera wideo, ponieważ ilość nieskompresowanych danych klatki może być bardzo duża, jeśli rozmiar wideo jest duży.
- Parametry
włączać | jeśli true, instruuje kamerę HAL, aby przechowywała metadane w buforach wideo; false , aby poinstruować kamerę HAL, aby przechowywała prawdziwe dane YUV w buforach wideo. |
- Zwroty
- OK, jeśli chodzi o sukces.
Definicja w linii 186 pliku kamera.h .
Dokumentacja tej struktury została wygenerowana z następującego pliku:
- hardware/libhardware/include/hardware/ camera.h
Treść strony i umieszczone na niej fragmenty kodu podlegają licencjom opisanym w Licencji na treści. Java i OpenJDK są znakami towarowymi lub zastrzeżonymi znakami towarowymi należącymi do firmy Oracle lub jej podmiotów stowarzyszonych.
Ostatnia aktualizacja: 2023-12-01 UTC.
[[["Łatwo zrozumieć","easyToUnderstand","thumb-up"],["Rozwiązało to mój problem","solvedMyProblem","thumb-up"],["Inne","otherUp","thumb-up"]],[["Brak potrzebnych mi informacji","missingTheInformationINeed","thumb-down"],["Zbyt skomplikowane / zbyt wiele czynności do wykonania","tooComplicatedTooManySteps","thumb-down"],["Nieaktualne treści","outOfDate","thumb-down"],["Problem z tłumaczeniem","translationIssue","thumb-down"],["Problem z przykładami/kodem","samplesCodeIssue","thumb-down"],["Inne","otherDown","thumb-down"]],["Ostatnia aktualizacja: 2023-12-01 UTC."],[],[]]