0

我开始得到:

concurrent.futures._base.TimeoutError: Operation did not complete within the designated timeout.

(即使是 5 秒的视频,我也有 timeout=1000)

它从 10 月 5 日开始(在此之前它工作了几个月)。

我使用的是:python:3.8.7,pip install google-cloud-videointelligence==2.3.3,Google cloud,在 Cloud Run 上运行 - python:3.8.7-slim

代码:

from google.cloud import videointelligence
video_client = videointelligence.VideoIntelligenceServiceClient()
context = videointelligence.VideoContext(
            segments=None
    )
features=  [  videointelligence.Feature.LABEL_DETECTION,
            videointelligence.Feature.TEXT_DETECTION,
            videointelligence.Feature.OBJECT_TRACKING]
request = videointelligence.AnnotateVideoRequest(
        input_uri="gs://"+path,
        video_context=context,
        features=features
    )
operation = video_client.annotate_video(request)
result = operation.result(timeout=1000)
result = json.loads(MessageToJson(result._pb))
4

1 回答 1

0

您遇到错误的原因之一是您concurrent.futures._base.TimeoutError: Operation did not complete within the designated timeout.每分钟发送的视频资料比以前多,并且您可能在处理过程中达到了“后端时间(以每分钟秒为单位)”配额。有关详细信息,请参阅配额

检查您是否在 Cloud Console > IAM & Admin > Quotas 中达到配额,然后搜索“Backend time in seconds per minute”。如果是这样,请将“后端时间(以每分钟秒数为单位)”配额增加到您想要的值,以增加并行处理的视频数量。

补充一点,当我达到配额时,我能够重现同样的错误。下面是示例图像:

在此处输入图像描述

达到配额时查看实际错误消息:

在此处输入图像描述

于 2021-10-08T02:06:46.897 回答