0

当我尝试转录一些视频时,我确实收到以下错误消息:

java.util.concurrent.ExecutionException:com.google.api.gax.rpc.InvalidArgumentException:io.grpc.StatusRuntimeException:INVALID_ARGUMENT:请求包含无效参数。在 com.google.common.util.concurrent.AbstractFuture.getDoneValue(AbstractFuture.java:553) ~[guava-28.2-android.jar!/:na] 在 com.google.common.util.concurrent.AbstractFuture.get( AbstractFuture.java:432) ~[guava-28.2-android.jar!/:na] at com.google.common.util.concurrent.FluentFuture$TrustedFuture.get(FluentFuture.java:93) ~[guava-28.2-android .jar!/:na] at com.google.common.util.concurrent.ForwardingFuture.get(ForwardingFuture.java:68) ~[guava-28.2-android.jar!/:na] at com.google.api.gax .longrunning.OperationFutureImpl.get(OperationFutureImpl.java:133) ~[gax-1.53​​.0.jar!/:1.53.0]

在此过程中 MP4 视频被转换为 WEBM,因此我们能够在我们的前端正确地流式传输视频。我们传给请求的WEBM文件的ByteArray好像有问题,所以我尝试直接传MP4文件的ByteArray。不幸的是,我确实在多个 MP4 文件中遇到了同样的错误。还有一些成功转录的 MP4 文件。所以我不知道 ByteArray 有什么问题以及如何解决这个问题。

我们的 AnnotateVideoRequest 是这样构建的:

    private fun buildRequest(
        videoBytes: ByteString,
        transcriptionLanguage: String
): AnnotateVideoRequest {
    val config: SpeechTranscriptionConfig = SpeechTranscriptionConfig
            .newBuilder()
            .setLanguageCode(transcriptionLanguage)
            .setEnableAutomaticPunctuation(this.enableAutomaticPunctuation)
            .setMaxAlternatives(this.maxAlternatives)
            .build()

    val context: VideoContext = VideoContext
            .newBuilder()
            .setSpeechTranscriptionConfig(config)
            .build()

    return AnnotateVideoRequest
            .newBuilder()
            .setInputContent(videoBytes)
            .addFeatures(Feature.SPEECH_TRANSCRIPTION)
            .setVideoContext(context)
            .build()
}

我们使用以下版本的客户端库:com.google.cloud:google-cloud-video-intelligence:1.2.1

在使用我们的某些 MP4 文件执行此请求时,有哪些可能的方法来确定实际出了什么问题?

4

1 回答 1

0

我调试了它,如果我将文件字节作为“inputContent”发送,我只会收到这个错误。如果我在谷歌云中有文件并且我将文件 url 作为“inputUri”发送,那么我不会收到任何错误。(使用 gs://cloud-samples-data/video/cat.mp4" 作为测试样本)

于 2020-04-13T02:09:08.750 回答