1

我已经设置了一个谷歌云功能,它从应用引擎前端引擎上传视频并放置在谷歌云存储桶中,然后应用谷歌云视频智能 api。API 的结果显示在控制台中。我希望将这些结果放入谷歌云存储桶中的 json 文件中,以便我可以通过大查询访问它们。

我已经为 out_put_uri 方法分配了一个关于 json 文件应该在哪里结束的变量,但是我不确定如何调用这个方法。

导入操作系统

从 google.cloud 导入视频智能

def video_dump(事件,上下文):

    """ Detects camera shot changes. """
# [START video_shot_tutorial_construct_request]
video_client = videointelligence.VideoIntelligenceServiceClient()
features = [videointelligence.enums.Feature.SHOT_CHANGE_DETECTION]
operation = video_client.annotate_video('gs://'+event['bucket']+'/'+event['name'], features=features)
output_uri = 'gs://mastersproject-252719.appspot.com/json'
# [END video_shot_tutorial_construct_request]
print('\nProcessing video for shot change annotations:')

# [START video_shot_tutorial_check_operation]
result = operation.result(timeout=120)

print('\nFinished processing.')
# [END video_shot_tutorial_check_operation]

# [START video_shot_tutorial_parse_response]
for i, shot in enumerate(result.annotation_results[0].shot_annotations):
    start_time = (shot.start_time_offset.seconds +
                  shot.start_time_offset.nanos / 1e9)
    end_time = (shot.end_time_offset.seconds +
                shot.end_time_offset.nanos / 1e9)
    print('\tShot {}: {} to {}'.format(i, start_time, end_time))
# [END video_shot_tutorial_parse_response]

我正在寻找要创建并放置在 gs://mastersproject-252719.appspot.com/json 中的结果的 json 文件

4

1 回答 1

0

我相信您只需output_uriannotate_video括号括起来,如下所示:

operation = video_client.annotate_video('gs://'+event['bucket']+'/'+event['name'],
  features=features, output_uri = 'gs://mastersproject-252719.appspot.com/json')
于 2019-10-10T00:19:02.037 回答