- Solicitação HTTP
- Parâmetros de consulta
- Corpo da solicitação
- Corpo da resposta
- Escopos de autorização
- PhotoSequence
- GpsSource
- Imu
- Measurement3d
- ProcessingState
- ProcessingFailureReason
- ProcessingFailureDetails
- InsufficientGpsFailureDetails
- GpsDataGapFailureDetails
- ImuDataGapFailureDetails
- NotOutdoorsFailureDetails
- NoOverlapGpsFailureDetails
- LatLngBounds
- InputType
- Faça um teste
Depois que o cliente termina de fazer o upload do PhotoSequence
com o UploadRef
retornado, o photoSequence.create
extrai uma sequência de fotos em 360° de um vídeo ou Extensible Device Metadata (XDM, http://www.xdm.org/) para publicar no Street View no Google Maps.
photoSequence.create
retorna um Operation
, com o ID PhotoSequence
definido no campo Operation.name
.
Esse método retorna os seguintes códigos de erro:
google.rpc.Code.INVALID_ARGUMENT
se a solicitação for inválida.google.rpc.Code.NOT_FOUND
se a referência de upload não existir.
Solicitação HTTP
POST https://streetviewpublish.googleapis.com/v1/photoSequence
O URL usa a sintaxe de transcodificação gRPC.
Parâmetros de consulta
Parâmetros | |
---|---|
inputType |
Obrigatório. O formulário de entrada de |
Corpo da solicitação
O corpo da solicitação contém uma instância de PhotoSequence
.
Corpo da resposta
Se a solicitação for bem-sucedida, o corpo da resposta incluirá uma instância de Operation
.
Escopos de autorização
Requer o seguinte escopo OAuth:
https://www.googleapis.com/auth/streetviewpublish
Para mais informações, consulte a Visão geral do OAuth 2.0.
PhotoSequence
Uma sequência de fotos em 360° com metadados.
Representação JSON |
---|
{ "id": string, "photos": [ { object ( |
Campos | |
---|---|
id |
Apenas saída. Identificador exclusivo da sequência de fotos. Ele também funciona como um ID de operação de longa duração se o upload for realizado de forma assíncrona. |
photos[] |
Apenas saída. Fotos com marcações de tempo cada vez maiores. |
uploadReference |
Apenas entrada. Obrigatório ao criar uma sequência de fotos. O nome do recurso em que os bytes da sequência de fotos (na forma de vídeo) são enviados. |
captureTimeOverride |
Opcional. Horário absoluto em que a sequência de fotos começa a ser capturada. Se a sequência de fotos for um vídeo, esse será o horário de início do vídeo. Se esse campo for preenchido na entrada, ele vai substituir o tempo de captura no arquivo de vídeo ou XDM. Um carimbo de data/hora no formato UTC "Zulu" RFC3339, com resolução de nanossegundos e até nove dígitos fracionários. Exemplos: |
uploadTime |
Apenas saída. A hora em que esta sequência de fotos foi criada no serviço uSV Store. Um carimbo de data/hora no formato UTC "Zulu" RFC3339, com resolução de nanossegundos e até nove dígitos fracionários. Exemplos: |
rawGpsTimeline[] |
Apenas entrada. Medições de GPS brutas com carimbos de data/hora crescentes do dispositivo que não são sincronizadas com cada foto. Essas medidas brutas serão usadas para inferir a pose de cada frame. Obrigatório quando o InputType for VIDEO e as medições brutas de GPS não estiverem na faixa de metadados de movimento da câmera (CAMM, na sigla em inglês). O usuário pode indicar qual tem precedência usando gpsSource se as medições de GPS brutas forem fornecidas no RawGpsTimeline e na Camera Motion Motion Metadata Track (CAMM). |
gpsSource |
Apenas entrada. Se o brutoGpsTimeline e a faixa de metadados de movimento da câmera (CAMM, na sigla em inglês) tiverem medições de GPS, indique qual terá precedência. |
imu |
Apenas entrada. Dados da IMU de três eixos para a coleta. Se esses dados forem muito grandes para serem incluídos na solicitação, eles deverão ser colocados na faixa do CAMM do vídeo. Esses dados sempre têm precedência sobre os dados do CAMM equivalentes, se existirem. |
processingState |
Apenas saída. O estado de processamento dessa sequência. |
failureReason |
Apenas saída. Se a sequência tiverprocessingState = FAILED, conterá o motivo da falha. Se ProcessingState for qualquer outro valor, este campo não será definido. |
failureDetails |
Apenas saída. Se a sequência tiver |
distanceMeters |
Apenas saída. A distância calculada da sequência de fotos em metros. |
sequenceBounds |
Apenas saída. Uma caixa retangular que encapsula todas as imagens desta sequência de fotos. |
viewCount |
Apenas saída. O número total de visualizações que todas as imagens publicadas nesta PhotoSequence receberam. |
filename |
Apenas saída. É o nome de arquivo do upload. Não inclui o caminho do diretório. Disponível somente se a sequência tiver sido enviada em uma plataforma que forneça o nome do arquivo. |
GpsSource
Principal fonte de medições de GPS.
Enums | |
---|---|
PHOTO_SEQUENCE |
O GPS no RawGpsTimeline tem precedência, se existir. |
CAMERA_MOTION_METADATA_TRACK |
O GPS na faixa de metadados de movimento da câmera (CAMM, na sigla em inglês) tem precedência, se existir. |
Imu
Dados de IMU dos sensores do dispositivo.
Representação JSON |
---|
{ "accelMpsps": [ { object ( |
Campos | |
---|---|
accelMpsps[] |
As medições do acelerômetro, em metros/s^2, com marcações de tempo crescentes dos dispositivos. |
gyroRps[] |
As medições do giroscópio em radianos/s, com marcações de tempo crescentes dos dispositivos. |
magUt[] |
As medições do magnetômetro do campo magnético em microtesla (uT) com carimbos de data/hora crescentes dos dispositivos. |
Medição 3d
Uma amostra genérica de medição de 3D.
Representação JSON |
---|
{ "captureTime": string, "x": number, "y": number, "z": number } |
Campos | |
---|---|
captureTime |
O carimbo de data/hora da medição da IMU. Um carimbo de data/hora no formato UTC "Zulu" RFC3339, com resolução de nanossegundos e até nove dígitos fracionários. Exemplos: |
x |
A medida do sensor no eixo x. |
y |
A medida do sensor no eixo Y. |
z |
A medida do sensor no eixo z. |
ProcessingState
O estado de processamento da sequência. Os estados se movem da seguinte maneira:
+-------------------------+
| |
+---v---+ +----------+ +----+----+
|PENDING+-->PROCESSING+-->PROCESSED|
+---+---+ +----+-----+ +----+----+
| | |
| +--v---+ |
+-------->FAILED<---------+
+------+
A sequência pode passar de qualquer estado para FAILED. Além disso, uma sequência processada pode ser reprocessada a qualquer momento.
Enums | |
---|---|
PROCESSING_STATE_UNSPECIFIED |
O estado não foi especificado, esse é o valor padrão. |
PENDING |
O processamento da sequência ainda não foi iniciado. |
PROCESSING |
A sequência está em processamento. |
PROCESSED |
O processamento da sequência foi concluído, incluindo o refinamento da posição. |
FAILED |
Falha no processamento da sequência. Consulte o FailureReason para ver mais detalhes. |
ProcessingFailureReason
Os possíveis motivos da falha no processamento de PhotoSequence
.
Enums | |
---|---|
PROCESSING_FAILURE_REASON_UNSPECIFIED |
O motivo da falha não foi especificado. Esse é o valor padrão. |
LOW_RESOLUTION |
A resolução do frame do vídeo é muito pequena. |
DUPLICATE |
Este vídeo já foi enviado. |
INSUFFICIENT_GPS |
Pontos de GPS insuficientes. |
NO_OVERLAP_GPS |
Não há sobreposição entre o período da trilha do GPS e o período do vídeo. |
INVALID_GPS |
O GPS é inválido (por exemplo, todos os pontos do GPS estão em (0,0)) |
FAILED_TO_REFINE_POSITIONS |
Não foi possível localizar a sequência das fotos no mundo com precisão. |
TAKEDOWN |
A sequência foi removida por violação da política. |
CORRUPT_VIDEO |
O arquivo de vídeo estava corrompido ou não pôde ser decodificado. |
INTERNAL |
Ocorreu uma falha permanente no sistema subjacente. |
INVALID_VIDEO_FORMAT |
O formato de vídeo é inválido ou incompatível. |
INVALID_VIDEO_DIMENSIONS |
Proporção de imagem inválida encontrada. |
INVALID_CAPTURE_TIME |
A hora da captura é inválida. As marcações de tempo estavam no futuro. |
GPS_DATA_GAP |
Os dados de GPS contêm um intervalo maior que 5 segundos de duração. |
JUMPY_GPS |
Os dados de GPS são muito irregulares para serem processados. |
INVALID_IMU |
Os dados de IMU (acelerômetro, giroscópio etc.) não são válidos. Talvez estejam faltando campos obrigatórios (x, y, z ou hora), eles não estejam formatados corretamente ou qualquer outro problema que impeça nossos sistemas de analisá-los. |
INSUFFICIENT_IMU |
Há poucos pontos de IMU. |
INSUFFICIENT_OVERLAP_TIME_SERIES |
Sobreposição insuficiente no período entre os dados de GPS, IMU e outras séries temporais. |
IMU_DATA_GAP |
Os dados da IMU (acelerômetro, giroscópio etc.) contêm lacunas maiores que 0, 1 segundo de duração. |
UNSUPPORTED_CAMERA |
A câmera não é compatível. |
NOT_OUTDOORS |
Alguns frames estavam em ambientes fechados, o que não é permitido. |
INSUFFICIENT_VIDEO_FRAMES |
Não há frames de vídeo suficientes. |
INSUFFICIENT_MOVEMENT |
Não há dados móveis suficientes. |
ProcessingFailureDetails
Detalhes adicionais para acompanhar o enum ProcessingFailureReason. Espera-se que essa mensagem seja sempre usada em conjunto com ProcessingFailureReason e o valor oneof definido nesta mensagem corresponda a FailureReason.
Representação JSON |
---|
{ // Union field |
Campos | |
---|---|
Campo de união details . Somente um conjunto de detalhes será definido e precisa corresponder ao tipo enumerado correspondente em ProcessingFailureReason. details pode ser apenas de um dos tipos a seguir: |
|
insufficientGpsDetails |
Consulte InsufficientGpsFailureDetails. |
gpsDataGapDetails |
Consulte GpsDataGapFailureDetails. |
imuDataGapDetails |
Consulte ImuDataGapFailureDetails. |
notOutdoorsDetails |
Consulte NotOutdoorsFailureDetails. |
noOverlapGpsDetails |
Consulte NoOverlayGpsFailureDetails. |
InsufficientGpsFailureDetails
Detalhes relacionados a ProcessingFailureReason#INSUFFICIENT_GPS.
Representação JSON |
---|
{ "gpsPointsFound": integer } |
Campos | |
---|---|
gpsPointsFound |
O número de pontos de GPS que foram encontrados no vídeo. |
GpsDataGapFailureDetails
Detalhes relacionados ao ProcessingFailureReason#GPS_DATA_GAP. Se houver várias lacunas de dados de GPS, somente a que tiver a maior duração será informada aqui.
Representação JSON |
---|
{ "gapDuration": string, "gapStartTime": string } |
Campos | |
---|---|
gapDuration |
A duração da lacuna nos dados de GPS encontrada. Duração em segundos com até nove dígitos fracionários, terminando em " |
gapStartTime |
Tempo relativo (desde o início do stream de vídeo) em que a lacuna começou. Duração em segundos com até nove dígitos fracionários, terminando em " |
ImuDataGapFailureDetails
Detalhes relacionados ao ProcessingFailureReason#IMU_DATA_GAP. Se houver várias lacunas de dados da IMU, apenas a que tiver a maior duração será informada aqui.
Representação JSON |
---|
{ "gapDuration": string, "gapStartTime": string } |
Campos | |
---|---|
gapDuration |
A duração do intervalo encontrado nos dados da IMU. Duração em segundos com até nove dígitos fracionários, terminando em " |
gapStartTime |
Tempo relativo (desde o início do stream de vídeo) em que a lacuna começou. Duração em segundos com até nove dígitos fracionários, terminando em " |
NotOutdoorsFailureDetails
Detalhes relacionados a ProcessingFailureReason#NOT_OUTDOORS. Se forem encontrados vários frames internos, o primeiro frame será registrado aqui.
Representação JSON |
---|
{ "startTime": string } |
Campos | |
---|---|
startTime |
Tempo relativo (do início do stream de vídeo) em que um frame interno foi encontrado. Duração em segundos com até nove dígitos fracionários, terminando em " |
NoOverlapGpsFailureDetails
Detalhes relacionados ao PhotoSequenceProcessingFailureReason#NO_OVERLAP_GPS.
Representação JSON |
---|
{ "gpsStartTime": string, "gpsEndTime": string, "videoStartTime": string, "videoEndTime": string } |
Campos | |
---|---|
gpsStartTime |
Hora do primeiro ponto GPS registrado. Um carimbo de data/hora no formato UTC "Zulu" RFC3339, com resolução de nanossegundos e até nove dígitos fracionários. Exemplos: |
gpsEndTime |
Hora do último ponto GPS registrado. Um carimbo de data/hora no formato UTC "Zulu" RFC3339, com resolução de nanossegundos e até nove dígitos fracionários. Exemplos: |
videoStartTime |
Horário de início do vídeo. Um carimbo de data/hora no formato UTC "Zulu" RFC3339, com resolução de nanossegundos e até nove dígitos fracionários. Exemplos: |
videoEndTime |
Horário de término do vídeo. Um carimbo de data/hora no formato UTC "Zulu" RFC3339, com resolução de nanossegundos e até nove dígitos fracionários. Exemplos: |
LatLngBounds
Um retângulo em coordenadas geográficas.
Representação JSON |
---|
{ "southwest": { object ( |
Campos | |
---|---|
southwest |
O canto sudoeste desses limites. |
northeast |
O canto nordeste desses limites. |
InputType
Formas de entrada de PhotoSequence
.
Enums | |
---|---|
INPUT_TYPE_UNSPECIFIED |
Não especificado. O servidor retornará google.rpc.Code.INVALID_ARGUMENT . |
VIDEO |
Vídeo em 360°. |
XDM |
Extensible Device Metadata, http://www.xdm.org (em inglês) |