Я пытался определить лица по видео, хранящемуся на Amazon S3, лица должны быть сопоставлены с коллекцией, в которой есть лица, которые нужно искать в видео. Я использовал Amazon VideoDetect. Мой фрагмент кода выглядит следующим образом:
CreateCollection createCollection = new CreateCollection(collection);
createCollection.makeCollection();
AddFacesToCollection addFacesToCollection = new AddFacesToCollection(collection, bucketName, image);
addFacesToCollection.addFaces();
VideoDetect videoDetect = new VideoDetect(video, bucketName, collection);
videoDetect.CreateTopicandQueue();
try {
videoDetect.StartFaceSearchCollection(bucketName, video, collection);
if (videoDetect.GetSQSMessageSuccess())
videoDetect.GetFaceSearchCollectionResults();
} catch (Exception e) {
e.printStackTrace();
return false;
}
videoDetect.DeleteTopicandQueue();
return true;
Кажется, что все работает нормально до StartFaceSearchCollection, и я получаю задание на выполнение задания и очередь. Но когда он пытается go вокруг получить GetSQSMessageSuccess, он никогда не возвращает мне никакого сообщения. Код, который пытается получить сообщение:
ReceiveMessageRequest.Builder receiveMessageRequest = ReceiveMessageRequest.builder().queueUrl(sqsQueueUrl);
messages = sqs.receiveMessage(receiveMessageRequest.build()).messages();
Имеет исправить sqsQueueUrl, которые существуют. Но я не получаю ничего в сообщении. По таймауту это дает мне исключение:
software.amazon.awssdk.core.exception.SdkClientException: Unable to execute HTTP request: sqs.region.amazonaws.com
at software.amazon.awssdk.core.exception.SdkClientException$BuilderImpl.build(SdkClientException.java:97)
Caused by: java.net.UnknownHostException: sqs.region.amazonaws.com
Так есть ли альтернатива этому, вместо SQSMessage, можем ли мы отслеживать / опрашивать jobId любым другим способом? Или я что-то упускаю ??