- Żądanie HTTP
- Parametry zapytania
- Treść żądania
- Treść odpowiedzi
- Zakresy autoryzacji
- PhotoSequence
- GpsSource
- Imu
- Pomiar 3D
- ProcessingState
- ProcessingFailureReason
- ProcessingFailureDetails
- InsufficientGpsFailureDetails
- GpsDataGapFailureDetails
- ImuDataGapFailureDetails
- NotOutdoorsFailureDetails
- NoOverlapGpsFailureDetails
- LatLngBounds
- InputType
- Wypróbuj
Gdy klient zakończy przesyłanie PhotoSequence ze zwróconym UploadRef, photoSequence.create wyodrębnia sekwencję zdjęć sferycznych z filmu lub metadanych urządzenia Extensible Device Metadata (XDM, http://www.xdm.org/) do opublikowania w Street View w Mapach Google.
photoSequence.create zwraca wartość Operation z identyfikatorem PhotoSequence ustawionym w polu Operation.name.
Ta metoda zwraca te kody błędów:
- google.rpc.Code.INVALID_ARGUMENT, jeśli żądanie jest uszkodzone.
- google.rpc.Code.NOT_FOUND, jeśli plik referencyjny nie istnieje.
Żądanie HTTP
POST https://streetviewpublish.googleapis.com/v1/photoSequence
Adres URL używa składni transkodowania gRPC.
Parametry zapytania
| Parametry | |
|---|---|
| inputType | 
 Wymagane. Forma wejściowa  | 
Treść żądania
Treść żądania zawiera wystąpienie elementu PhotoSequence.
Treść odpowiedzi
Jeśli operacja się uda, treść odpowiedzi będzie zawierała nowo utworzoną instancję Operation.
Zakresy autoryzacji
Wymaga następującego zakresu OAuth:
- https://www.googleapis.com/auth/streetviewpublish
Więcej informacji znajdziesz w artykule Omówienie protokołu OAuth 2.0.
PhotoSequence
Sekwencja zdjęć sferycznych wraz z metadanymi.
| Zapis JSON | 
|---|
| { "id": string, "photos": [ { object ( | 
| Pola | |
|---|---|
| id | 
 Tylko dane wyjściowe. Unikalny identyfikator sekwencji zdjęć. Jeśli przesyłanie odbywa się asynchronicznie, pełni również funkcję identyfikatora długo trwającej operacji. | 
| photos[] | 
 Tylko dane wyjściowe. Zdjęcia z coraz większą liczbą sygnatur czasowych. | 
| uploadReference | 
 Tylko dane wejściowe. Wymagane przy tworzeniu sekwencji zdjęć. Nazwa zasobu, do którego przesyłane są bajty sekwencji zdjęć (w formie filmu). | 
| captureTimeOverride | 
 Opcjonalnie: Bezwzględny czas, w którym rozpocznie się wykonywanie sekwencji zdjęć. Jeśli sekwencja zdjęć to film, jest to czas jego rozpoczęcia. Jeśli to pole zostanie wypełnione, zastępuje czas przechwytywania filmu lub pliku XDM. Sygnatura czasowa w RFC3339 UTC „Zulu” z rozdzielczością nanosekundową i maksymalnie 9 cyframi po przecinku. Przykłady:  | 
| uploadTime | 
 Tylko dane wyjściowe. Godzina utworzenia tej sekwencji zdjęć w usłudze Sklep uSV. Sygnatura czasowa w RFC3339 UTC „Zulu” z rozdzielczością nanosekundową i maksymalnie 9 cyframi po przecinku. Przykłady:  | 
| rawGpsTimeline[] | 
 Tylko dane wejściowe. Nieprzetworzone pomiary GPS z rosnącymi sygnaturami czasowymi z urządzenia, które nie są synchronizowane z każdym zdjęciem. Te nieprzetworzone pomiary posłużą do ustalenia pozycji każdej klatki. Wymagane w przypadku danych wejściowych, gdy typ źródła ma wartość VIDEO, a nieprzetworzone pomiary GPS nie są uwzględniane w ramach ścieżki metadanych aparatu (CAMM). Użytkownik może wskazać, który z tych parametrów ma pierwszeństwo, korzystając z parametru gpsSource, jeśli nieprzetworzone pomiary GPS są podane zarówno w rawGpsTimeline, jak i w Cam Motion Metadata Track (CAMM). | 
| gpsSource | 
 Tylko dane wejściowe. Jeśli zarówno rawGpsTimeline, jak i CAMM zawierają pomiary GPS, wskaż, który z nich ma pierwszeństwo. | 
| imu | 
 Tylko dane wejściowe. Trójosiowe dane IMU dla zbioru. Jeśli dane są zbyt duże, aby umieścić je w żądaniu, należy je umieścić w ścieżce CAMM dla filmu. Te dane mają zawsze pierwszeństwo przed równoważnymi danymi CAMM, jeśli istnieją. | 
| processingState | 
 Tylko dane wyjściowe. Stan przetwarzania tej sekwencji. | 
| failureReason | 
 Tylko dane wyjściowe. Jeśli ta sekwencja ma parametr conversionState = FAILED, w tym miejscu pojawi się przyczyna niepowodzenia. Jeśli parametr „processState” ma inną wartość, to pole nie zostanie odznaczone. | 
| failureDetails | 
 Tylko dane wyjściowe. Jeśli ta sekwencja ma ustawiony typ  | 
| distanceMeters | 
 Tylko dane wyjściowe. Obliczona odległość sekwencji zdjęć w metrach. | 
| sequenceBounds | 
 Tylko dane wyjściowe. Prostokątne pole, które obejmuje wszystkie obrazy w tej sekwencji zdjęć. | 
| viewCount | 
 Tylko dane wyjściowe. Łączna liczba wyświetleń wszystkich opublikowanych zdjęć w tej sekwencji zdjęć. | 
| filename | 
 Tylko dane wyjściowe. Nazwa przesyłanego pliku. Nie obejmuje ścieżki katalogu. Dostępne tylko wtedy, gdy sekwencja została przesłana na platformę, która zapewnia nazwę pliku. | 
GpsSource
Podstawowe źródło pomiarów GPS.
| Wartości w polu enum | |
|---|---|
| PHOTO_SEQUENCE | GPS w rawGpsTimeline ma pierwszeństwo, jeśli istnieje. | 
| CAMERA_MOTION_METADATA_TRACK | GPS w ścieżce metadanych kamery w ruchu (CAMM) ma pierwszeństwo, jeśli istnieje. | 
Imu
Dane IMU z czujników urządzenia.
| Zapis JSON | 
|---|
| { "accelMpsps": [ { object ( | 
| Pola | |
|---|---|
| accelMpsps[] | 
 Pomiary przy użyciu akcelerometru w metrach/s^2 wraz z rosnącą liczbą sygnatur czasowych z urządzeń. | 
| gyroRps[] | 
 Pomiary żyroskopu w radianach/s z coraz większą liczbą sygnatur czasowych z urządzeń. | 
| magUt[] | 
 Pomiary pola magnetycznego przez magnetometr w mikroteslach (uT) z coraz większą liczbą sygnatur czasowych z urządzeń. | 
Pomiary3d
Ogólna próbka do pomiaru w 3D.
| Zapis JSON | 
|---|
| { "captureTime": string, "x": number, "y": number, "z": number } | 
| Pola | |
|---|---|
| captureTime | 
 Sygnatura czasowa pomiaru IMU. Sygnatura czasowa w RFC3339 UTC „Zulu” z rozdzielczością nanosekundową i maksymalnie 9 cyframi po przecinku. Przykłady:  | 
| x | 
 Pomiar z czujnika na osi X. | 
| y | 
 Pomiar z czujnika na osi Y. | 
| z | 
 Pomiar czujnika na osi Z. | 
ProcessingState
Stan przetwarzania sekwencji. Stany te zmieniają się w ten sposób:
     +-------------------------+
     |                         |
 +---v---+  +----------+  +----+----+
 |PENDING+-->PROCESSING+-->PROCESSED|
 +---+---+  +----+-----+  +----+----+
     |           |             |
     |        +--v---+         |
     +-------->FAILED<---------+
              +------+
Sekwencja może przejść do stanu BŁĄD z dowolnego stanu. Dodatkowo przetworzona sekwencja może w każdej chwili zostać ponownie przetworzona.
| Wartości w polu enum | |
|---|---|
| PROCESSING_STATE_UNSPECIFIED | Stan nie jest określony. Jest to wartość domyślna. | 
| PENDING | Jeszcze nie rozpoczęto przetwarzania sekwencji. | 
| PROCESSING | Sekwencja jest obecnie przetwarzana. | 
| PROCESSED | Zakończono przetwarzanie sekwencji, w tym doprecyzowanie pozycji. | 
| FAILED | Nie udało się przetworzyć sekwencji. Więcej informacji znajdziesz w sekcji Błąd związany z powodem niepowodzenia. | 
ProcessingFailureReason
Możliwe przyczyny, dla których nie udało się przetworzyć tego elementu (PhotoSequence).
| Wartości w polu enum | |
|---|---|
| PROCESSING_FAILURE_REASON_UNSPECIFIED | Przyczyna niepowodzenia nie jest określona. Jest to wartość domyślna. | 
| LOW_RESOLUTION | Rozdzielczość klatki filmu jest za mała. | 
| DUPLICATE | Ten film został już przesłany. | 
| INSUFFICIENT_GPS | Za mało punktów GPS. | 
| NO_OVERLAP_GPS | Przedział czasu ścieżki GPS nie pokrywa się z przedziałem czasu filmu. | 
| INVALID_GPS | GPS jest nieprawidłowy (np. wszystkie punkty GPS są ustawione na (0,0)) | 
| FAILED_TO_REFINE_POSITIONS | Nie udało się dokładnie zlokalizować sekwencji zdjęć w różnych miejscach świata. | 
| TAKEDOWN | Sekwencja została usunięta z powodu naruszenia zasad. | 
| CORRUPT_VIDEO | Plik wideo jest uszkodzony lub nie można go zdekodować. | 
| INTERNAL | Wystąpił trwała awaria w bazowym systemie. | 
| INVALID_VIDEO_FORMAT | Nieprawidłowy lub nieobsługiwany format filmu. | 
| INVALID_VIDEO_DIMENSIONS | Znaleziono nieprawidłowy format obrazu. | 
| INVALID_CAPTURE_TIME | Nieprawidłowy czas przechwytywania. Sygnatury czasowe pochodzą z przyszłości. | 
| GPS_DATA_GAP | Dane GPS zawierają lukę trwającą ponad 5 sekund. | 
| JUMPY_GPS | Dane GPS są zbyt nieregularne, aby można je było przetworzyć. | 
| INVALID_IMU | Dane IMU (akcelerometru, żyroskopu itp.) są nieprawidłowe. Może brakować w nich wymaganych pól (x, y, z lub godzina), mają niepoprawny format lub występują inne problemy, które uniemożliwiają naszym systemom ich analizę. | 
| INSUFFICIENT_IMU | Za mało punktów IMU. | 
| INSUFFICIENT_OVERLAP_TIME_SERIES | Niewystarczające pokrywanie się przedziałów czasowych między danymi GPS, IMU i innymi ciągami czasowymi. | 
| IMU_DATA_GAP | Dane IMU (akcelerometru, żyroskopu itp.) zawierają przerwy trwające ponad 0, 1 sekundy. | 
| UNSUPPORTED_CAMERA | Aparat nie jest obsługiwany. | 
| NOT_OUTDOORS | Niektóre klatki były wyświetlane wewnątrz budynków, co nie jest obsługiwane. | 
| INSUFFICIENT_VIDEO_FRAMES | Za mało klatek wideo. | 
| INSUFFICIENT_MOVEMENT | Za mało danych w ruchu. | 
ProcessingFailureDetails
Dodatkowe informacje dołączane do enum ProcessingFailureReason. Ten komunikat powinien być zawsze używany w połączeniu z parametrem ProcessingFailureReason, a jedna z wartości ustawiona w tej wiadomości powinna być zgodna z parametrem AcceptureReason.
| Zapis JSON | 
|---|
| { // Union field | 
| Pola | |
|---|---|
| Pole sumy details. Ustawiony zostanie tylko 1 zestaw szczegółów, który musi odpowiadać odpowiedniemu wyliczeniu w ProcessingFailureReason.detailsmoże mieć tylko jedną z tych wartości: | |
| insufficientGpsDetails | 
 Zapoznaj się z informacjami o InsufficientGpsFailureDetails. | 
| gpsDataGapDetails | 
 Zobacz GpsDataGapFailureDetails. | 
| imuDataGapDetails | 
 Zobacz ImuDataGapFailureDetails. | 
| notOutdoorsDetails | 
 Zobacz NotOutdoorsFailureDetails. | 
| noOverlapGpsDetails | 
 Zobacz NoOverlapGpsFailureDetails. | 
InsufficientGpsFailureDetails
Szczegóły dotyczące błędu ProcessingFailureReason#INSUFFICIENT_GPS.
| Zapis JSON | 
|---|
| { "gpsPointsFound": integer } | 
| Pola | |
|---|---|
| gpsPointsFound | 
 Liczba punktów GPS znalezionych w filmie. | 
GpsDataGapFailureDetails
Szczegóły dotyczące błędu ProcessingFailureReason#GPS_DATA_GAP. Jeśli w danych GPS występuje wiele luk, w tym raporcie uwzględniana jest tylko ta o najdłuższym czasie trwania.
| Zapis JSON | 
|---|
| { "gapDuration": string, "gapStartTime": string } | 
| Pola | |
|---|---|
| gapDuration | 
 Czas trwania luki w danych GPS, które zostały znalezione. Czas trwania w sekundach składający się z maksymalnie 9 cyfr po przecinku, kończący się cyfrą „ | 
| gapStartTime | 
 Względny czas (od początku strumienia wideo), w którym zaczęła się przerwa. Czas trwania w sekundach składający się z maksymalnie 9 cyfr po przecinku, kończący się cyfrą „ | 
ImuDataGapFailureDetails
Szczegóły dotyczące błędu ProcessingFailureReason#IMU_DATA_GAP. Jeśli występuje wiele luk w danych IMU, w tym raporcie podawana jest tylko ta o najdłuższym czasie trwania.
| Zapis JSON | 
|---|
| { "gapDuration": string, "gapStartTime": string } | 
| Pola | |
|---|---|
| gapDuration | 
 Czas trwania luki w znalezionych danych IMU. Czas trwania w sekundach składający się z maksymalnie 9 cyfr po przecinku, kończący się cyfrą „ | 
| gapStartTime | 
 Względny czas (od początku strumienia wideo), w którym zaczęła się przerwa. Czas trwania w sekundach składający się z maksymalnie 9 cyfr po przecinku, kończący się cyfrą „ | 
NotOutdoorsFailureDetails
Szczegóły dotyczące parametru ProcessingFailureReason#NOT_OUTDOORS. Jeśli zostanie znalezionych kilka klatek wewnątrz, tutaj zostanie zarejestrowana pierwsza z nich.
| Zapis JSON | 
|---|
| { "startTime": string } | 
| Pola | |
|---|---|
| startTime | 
 Względny czas (od początku strumienia wideo), w którym znaleziono klatkę wewnętrzną. Czas trwania w sekundach składający się z maksymalnie 9 cyfr po przecinku, kończący się cyfrą „ | 
NoOverlapGpsFailureDetails
Szczegóły dotyczące błędu PhotoSequenceProcessingFailureReason#NO_OVERLAP_GPS.
| Zapis JSON | 
|---|
| { "gpsStartTime": string, "gpsEndTime": string, "videoStartTime": string, "videoEndTime": string } | 
| Pola | |
|---|---|
| gpsStartTime | 
 Czas pierwszego zarejestrowania punktu GPS. Sygnatura czasowa w RFC3339 UTC „Zulu” z rozdzielczością nanosekundową i maksymalnie 9 cyframi po przecinku. Przykłady:  | 
| gpsEndTime | 
 Czas ostatniego zarejestrowania punktu GPS. Sygnatura czasowa w RFC3339 UTC „Zulu” z rozdzielczością nanosekundową i maksymalnie 9 cyframi po przecinku. Przykłady:  | 
| videoStartTime | 
 Czas rozpoczęcia filmu. Sygnatura czasowa w RFC3339 UTC „Zulu” z rozdzielczością nanosekundową i maksymalnie 9 cyframi po przecinku. Przykłady:  | 
| videoEndTime | 
 Czas zakończenia filmu. Sygnatura czasowa w RFC3339 UTC „Zulu” z rozdzielczością nanosekundową i maksymalnie 9 cyframi po przecinku. Przykłady:  | 
LatLngBounds
Prostokąt we współrzędnych geograficznych.
| Zapis JSON | 
|---|
| { "southwest": { object ( | 
| Pola | |
|---|---|
| southwest | 
 Południowo-zachodni róg tych granic. | 
| northeast | 
 Północno-wschodni róg tych granic. | 
InputType
Wejściowe formy liczb PhotoSequence.
| Wartości w polu enum | |
|---|---|
| INPUT_TYPE_UNSPECIFIED | Nie określono. Serwer zwróci wartość google.rpc.Code.INVALID_ARGUMENT. | 
| VIDEO | Film sferyczny. | 
| XDM | Extensible Device Metadata, http://www.xdm.org | 
