gpt4 book ai didi

ios - AWS Transcribe 在 iOS 中卡在 getTranscriptionJob 中

转载 作者:行者123 更新时间:2023-11-29 05:17:21 26 4
gpt4 key购买 nike

我正在尝试使用 aws-sdk-ios 在 iOS 应用程序中使用 AWS Transcribe。该应用程序启动转录作业,我可以在 AWS 控制台上看到该作业。但应用程序无法列出作业或获取特定作业,因为它卡在对 getTranscriptionJoblistTranscriptionJobs 的请求中,因为这些请求永远不会完成(我添加了打印语句和完成 block 内的断点,并且它永远不会打印,也不会到达断点)。

我向 GitHub 上传了一个演示该问题的示例单 View 应用程序。您需要一个对 S3 和 Transcribe 具有完全权限的 AWS 账户或 IAM 用户。将该帐户的 key 和 S3 存储桶插入到 ViewController.swift 中的相应变量中。

https://github.com/joaomarceloods/AWSTranscribeBug

我需要帮助。这是一个错误,还是我做错了什么?

Swift、iOS 13.2、CocoaPods、AWSCore 2.12.1、AWSTranscribe 2.12.1

最重要的片段:

    /// `getTranscriptionJob` repeatedly until the status is no longer `inProgress`.
/// However, `getTranscriptionJob` never completes.
var transcriptionInProgress = true
while transcriptionInProgress {
print("getTranscriptionJob")
transcribe.getTranscriptionJob(request).continueWith { task -> Any? in
print("getTranscriptionJob never completes...")
let transcriptionJob = task.result?.transcriptionJob
transcriptionInProgress = transcriptionJob?.transcriptionJobStatus == .inProgress
return nil
}.waitUntilFinished()
}
print("...after the getTranscriptionJob")

最佳答案

我找到了解决方案。

我还是不明白为什么getTranscriptionJob会卡住,但是如果你在DispatchQueue.global()上运行它就会正常执行:

.continueWith(executor: AWSExecutor(dispatchQueue: DispatchQueue.global())) {

示例代码差异:https://github.com/joaomarceloods/AWSTranscribeBug/commit/98e43af553413ed2bbd0c3f96e259139a991303e

引用:https://aws-amplify.github.io/docs/ios/how-to-ios-asynchrounous-tasks#executing-a-block-on-the-main-thread-with-awstask

关于ios - AWS Transcribe 在 iOS 中卡在 getTranscriptionJob 中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59061357/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com