在 Cloud Function 中处理长 运行 任务 - Google Cloud Video Intelligence API

Handling Long Running Task in Cloud Function - Google Cloud Video Intelligence API

我们目前正在为视频中的 tracking objects 使用 cloud intelligence api,但是对于大型视频,这可能需要 > 10 分钟。

我很好奇 Google 云产品是否有任何功能可以在作业完成后发布到 pub/sub 排序队列。

唯一的API出现让我们等待await operation.promise()

亚马逊有解决方案,可以让函数进入休眠状态,你可以稍后检查作业是否完成。

有人知道 Google 是否存在吗?

  const [operation] = await video.annotateVideo(request);
  console.log('Waiting for operation to complete...');
  const [operationResult] = await operation.promise();
  // Gets shot changes
  let shotChanges = operationResult.annotationResults[0];

您可以指定一个 outputUri,它将结果写入您的 GCS 存储桶。如果您这样做,您的方法将不必等待。

然后您可以在将处理结果的输出 GCS 存储桶上设置触发器。