【问题标题】:How do we retrieve status of VideoAnnotation request in Google Cloud Video Intelligence API?我们如何在 Google Cloud Video Intelligence API 中检索 VideoAnnotation 请求的状态?
【发布时间】:2018-09-25 07:56:08
【问题描述】:

我正在使用以下nodejs代码来检索视频注释请求的操作实例

var vidOptions = {
        "inputUri": gCloudURL,
        "features": [ 'LABEL_DETECTION' ]
        };
    client.annotateVideo(vidOptions).then(function(results){
        //console.log(results[0].name);
        //return JSON.stringify(results[0].name);
        const operation = results[0];
        res.json(operation);
        //console.log('Waiting for operation to complete...');
        //return operation.promise();
        })

但是一旦我有了操作名称,我需要调用哪个函数/库来获取操作状态和结果。视频可能会持续很长时间。因此,我不想依赖承诺。而是在第一次通话中,我启动了视频注释。在第二次调用中,我运行了一个 for 循环并继续检查视频注释操作是否完成?

顺便说一句,AWS rekognition 在这方面非常出色,它们允许与 SNS 集成,因此您可以在视频处理完成时自动接收事件,并避免客户端轮询的所有开销。 GCP没有类似的功能吗?

【问题讨论】:

    标签: node.js amazon-web-services google-app-engine google-cloud-platform google-api-nodejs-client


    【解决方案1】:

    和你说的差不多。

    因为异步操作针对的是大量数据,所以它们没有明确的操作时间,也不会在完成时自动通知您。

    应实施检查“done=true”值的任务轮询,以定期检查状态。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-09-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-12-03
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多