

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 錯誤碼參考
<a name="producer-sdk-errors"></a>

本節包含 [上傳至 Kinesis Video Streams](producer-sdk.md) 的錯誤碼與狀態碼資訊。

有關常見問題的解決方法，請參閱 [對 Kinesis Video Streams 進行故障診斷](troubleshooting.md)。

**Topics**
+ [PutFrame 回呼傳回的錯誤和狀態碼 - 平台獨立代碼 (PIC)](#producer-sdk-errors-putframe)
+ [PutFrame 回呼 - C 生產者程式庫傳回的錯誤和狀態碼](#producer-sdk-errors-putframe-c)

## PutFrame 回呼傳回的錯誤和狀態碼 - 平台獨立代碼 (PIC)
<a name="producer-sdk-errors-putframe"></a>

下列各節包含 平台獨立程式碼 (PIC) 內 `PutFrame` 操作的回呼所傳回的錯誤和狀態資訊。

**Topics**
+ [用戶端程式庫傳回的錯誤和狀態碼](#producer-sdk-errors-client)
+ [持續時間程式庫傳回的錯誤和狀態碼](#producer-sdk-errors-duration)
+ [常見程式庫傳回的錯誤和狀態碼](#producer-sdk-errors-common)
+ [堆積程式庫傳回的錯誤和狀態碼](#producer-sdk-errors-heap)
+ [MKVGen 程式庫傳回的錯誤和狀態碼](#producer-sdk-errors-mkvgen)
+ [追蹤程式庫傳回的錯誤和狀態碼](#producer-sdk-errors-trace)
+ [Utils 程式庫傳回的錯誤和狀態碼](#producer-sdk-errors-utils)
+ [檢視程式庫傳回的錯誤和狀態碼](#producer-sdk-errors-view)

### 用戶端程式庫傳回的錯誤和狀態碼
<a name="producer-sdk-errors-client"></a>

下表包含 Kinesis Video Streams `Client`程式庫中方法傳回的錯誤和狀態資訊。


****  

| 代碼 | 訊息 | Description | 建議的動作 | 
| --- | --- | --- | --- | 
| 0x52000001 | STATUS\_MAX\_STREAM\_COUNT | 已達串流次數上限。 | 請依照 [生產者開發套件配額](limits.md#producer-sdk-limits) 中說明之方式在 DeviceInfo 中指定較大的最高串流計數。 | 
| 0x52000002 | STATUS\_MIN\_STREAM\_COUNT | 最低串流計數錯誤。 | 在 中指定大於零的串流數目上限DeviceInfo。 | 
| 0x52000003 | STATUS\_INVALID\_DEVICE\_NAME\_LENGTH | 無效裝置名稱長度。 | 請參閱 中指定的字元的最大裝置名稱長度[生產者開發套件配額](limits.md#producer-sdk-limits)。 | 
| 0x52000004 | STATUS\_INVALID\_DEVICE\_INFO\_VERSION | 無效的 DeviceInfo 架構版本。 | 指定正確的目前架構版本。 | 
| 0x52000005 | STATUS\_MAX\_TAG\_COUNT | 已達標籤次數上限。 | 請參閱 中指定的目前最大標籤計數[生產者開發套件配額](limits.md#producer-sdk-limits)。 | 
| 0x52000006 | STATUS\_DEVICE\_FINGERPRINT\_LENGTH | 
| 0x52000007 | STATUS\_INVALID\_CALLBACKS\_VERSION | 無效的 Callbacks 架構版本。 | 指定正確的目前架構版本。 | 
| 0x52000008 | STATUS\_INVALID\_STREAM\_INFO\_VERSION | 無效的 StreamInfo 架構版本。 | 指定正確的目前架構版本。 | 
| 0x52000009 | STATUS\_INVALID\_STREAM\_NAME\_LENGTH | 無效串流名稱長度。 | 請參閱 中指定的字元的最大串流名稱長度[生產者開發套件配額](limits.md#producer-sdk-limits)。 | 
| 0x5200000a | STATUS\_INVALID\_STORAGE\_SIZE | 指定了無效的儲存空間大小。 | 以位元表示的儲存空間大小需介於 [生產者開發套件配額](limits.md#producer-sdk-limits) 中所指定的上限內。 | 
| 0x5200000b | STATUS\_INVALID\_ROOT\_DIRECTORY\_LENGTH | 無效的根目錄字串長度。 | 請參閱 中指定的根目錄路徑長度上限[生產者開發套件配額](limits.md#producer-sdk-limits)。 | 
| 0x5200000c | STATUS\_INVALID\_SPILL\_RATIO | 無效的溢出率。 | 以 0–100 的百分比表示溢出率。 | 
| 0x5200000d | STATUS\_INVALID\_STORAGE\_INFO\_VERSION | 無效的 StorageInfo 架構版本。 | 指定正確的目前架構版本。 | 
| 0x5200000e | STATUS\_INVALID\_STREAM\_STATE | 串流的狀態不允許目前的操作。 | 最常見的情況是，當 SDK 無法達到執行請求的操作所需的狀態時，就會發生此錯誤。例如，如果 GetStreamingEndpoint API 呼叫失敗，且用戶端應用程式忽略該失敗並繼續將影格放入串流中，則會出現該錯誤。 | 
| 0x5200000f | STATUS\_SERVICE\_CALL\_CALLBACKS\_MISSING | 對於部分必要函數來說，Callbacks 架構含有遺失的函數入口點。 | 確認用戶端應用程式中已實作強制回呼。此錯誤只會向平台獨立程式碼 (PIC) 用戶端公開。C\+\+ 和其他更高級別的包裝函式可滿足這些呼叫的要求。 | 
| 0x52000010 | STATUS\_SERVICE\_CALL\_NOT\_AUTHORIZED\_ERROR | 未獲授權。 | 驗證安全字符、憑證、安全字符整合和過期。確認字符具有與其相關的正確權限。對於 Kinesis Video Streams 範例應用程式，請確認環境變數已正確設定。 | 
| 0x52000011 | STATUS\_DESCRIBE\_STREAM\_CALL\_FAILED | DescribeStreamAPI 失敗。 | 此錯誤會在 DescribeStream API 重試失敗後傳回。PIC 用戶端會在停止重試後傳回此錯誤。 | 
| 0x52000012 | STATUS\_INVALID\_DESCRIBE\_STREAM\_RESPONSE | 無效的 DescribeStreamResponse 架構。 | 傳遞到 DescribeStreamResultEvent 的架構會是 null 或者包含無效項目，例如 null 的 Amazon Resource Name (ARN)。 | 
| 0x52000013 | STATUS\_STREAM\_IS\_BEING\_DELETED\_ERROR | 正在刪除的串流。 | 刪除串流時導致 API 失敗。確認沒有其他程序在使用串流時嘗試刪除串流。 | 
| 0x52000014 | STATUS\_SERVICE\_CALL\_INVALID\_ARG\_ERROR | 服務呼叫指定了無效引數。 | 當服務呼叫引數無效，或 SDK 遇到無法解譯的錯誤時，後端會傳回此錯誤。 | 
| 0x52000015 | STATUS\_SERVICE\_CALL\_DEVICE\_NOT\_FOUND\_ERROR | 找不到該裝置。 | 確認在使用中時未刪除裝置。 | 
| 0x52000016 | STATUS\_SERVICE\_CALL\_DEVICE\_NOT\_PROVISIONED\_ERROR | 該裝置未佈建。 | 確認裝置已佈建。 | 
| 0x52000017 | STATUS\_SERVICE\_CALL\_RESOURCE\_NOT\_FOUND\_ERROR | 找不到該服務傳回的一般資源。 | 在服務找不到資源 (例如，串流) 時，將會出現該錯誤。它可能在不同上下文中具有不同的含意，但可能的原因是在建立串流之前使用 API。使用 SDK 會確認先建立串流。 | 
| 0x52000018 | STATUS\_INVALID\_AUTH\_LEN | 無效授權資訊長度。 | 請參考 [生產者開發套件配額](limits.md#producer-sdk-limits) 中指定的目前數值。 | 
| 0x52000019 | STATUS\_CREATE\_STREAM\_CALL\_FAILED | CreateStream API 呼叫失敗。 | 有關操作失敗原因的詳細資訊，請參考錯誤字串。 | 
| 0x5200002a | STATUS\_GET\_STREAMING\_TOKEN\_CALL\_FAILED | GetStreamingToken 呼叫失敗。 | 有關操作失敗原因的詳細資訊，請參考錯誤字串。 | 
| 0x5200002b | STATUS\_GET\_STREAMING\_ENDPOINT\_CALL\_FAILED | GetStreamingEndpoint API 呼叫失敗。 | 有關操作失敗原因的詳細資訊，請參考錯誤字串。 | 
| 0x5200002c | STATUS\_INVALID\_URI\_LEN | 從 GetStreamingEndpoint API 傳回了無效的 URI 字串長度。 | 請參考 [生產者開發套件配額](limits.md#producer-sdk-limits) 中指定的目前最高數值。 | 
| 0x5200002d | STATUS\_PUT\_STREAM\_CALL\_FAILED | PutMedia API 呼叫失敗。 | 有關操作失敗原因的詳細資訊，請參考錯誤字串。 | 
| 0x5200002e | STATUS\_STORE\_OUT\_OF\_MEMORY | 內容存放區大於記憶體容量。 | 內容存放區是在串流之間共用的，應具有足夠的容量以儲存所有串流的最大持續時間內的內容 \+ \~20% (考慮磁碟重組)。請勿超出儲存空間。請選擇與累計儲存空間大小和容許的延遲所對應的每個串流的最大持續時間值。我們建議您捨棄影格，因為它們掉出內容檢視視窗，而不是只是被放置 （內容存放區記憶體壓力）。這是因為捨棄影格會啟動串流壓力通知回呼。然後，應用程式可以調整上游媒體元件 (如編碼器) 以降低位元速率，刪除影格或執行對應的操作。 | 
| 0x5200002f | STATUS\_NO\_MORE\_DATA\_AVAILABLE | 目前的串流沒有其他可用資料。 | 在媒體管道產生影格的速度比網路執行緒使用傳送到服務的影格的速度慢時，這可能是一個有效的結果。較高層級的用戶端 （例如 C\+\+、Java 或 Android) 不會看到此警告，因為它是在內部處理。 | 
| 0x52000030 | STATUS\_INVALID\_TAG\_VERSION | 無效的 Tag 架構版本。 | 指定正確的目前架構版本。 | 
| 0x52000031 | STATUS\_SERVICE\_CALL\_UNKNOWN\_ERROR | 從網路堆疊中傳回未知或常規錯誤。 | 有關更詳細資訊，請參閱記錄。 | 
| 0x52000032 | STATUS\_SERVICE\_CALL\_RESOURCE\_IN\_USE\_ERROR | 資源使用中。 | 從服務傳回。如需詳細資訊，請參閱 Kinesis Video Streams API 參考。 | 
| 0x52000033 | STATUS\_SERVICE\_CALL\_CLIENT\_LIMIT\_ERROR | 客戶端限制。 | 從服務傳回。如需詳細資訊，請參閱 Kinesis Video Streams API 參考。 | 
| 0x52000034 | STATUS\_SERVICE\_CALL\_DEVICE\_LIMIT\_ERROR | 裝置限制。 | 從服務傳回。如需詳細資訊，請參閱 Kinesis Video Streams API 參考。 | 
| 0x52000035 | STATUS\_SERVICE\_CALL\_STREAM\_LIMIT\_ERROR | 串流限制。 | 從服務傳回。如需詳細資訊，請參閱 Kinesis Video Streams API 參考。 | 
| 0x52000036 | STATUS\_SERVICE\_CALL\_RESOURCE\_DELETED\_ERROR | 已刪除或正在刪除資源。 | 從服務傳回。如需詳細資訊，請參閱 Kinesis Video Streams API 參考。 | 
| 0x52000037 | STATUS\_SERVICE\_CALL\_TIMEOUT\_ERROR | 服務呼叫逾時。 | 呼叫特定服務 API 產生逾時。確認您具有有效的網路連線。PIC 會自動重試操作。 | 
| 0x52000038 | STATUS\_STREAM\_READY\_CALLBACK\_FAILED | 串流就緒通知。 | 該通知從 PIC 發送到客戶端，表示已建立非同步串流。 | 
| 0x52000039 | STATUS\_DEVICE\_TAGS\_COUNT\_NON\_ZERO\_TAGS\_NULL | 指定了無效的標籤。 | 標籤計數不是零，但標籤是空的。確認標籤已指定或計數為零。 | 
| 0x5200003a | STATUS\_INVALID\_STREAM\_DESCRIPTION\_VERSION | 無效的 StreamDescription 架構版本。 | 指定正確的目前架構版本。 | 
| 0x5200003b | STATUS\_INVALID\_TAG\_NAME\_LEN | 無效標籤名稱長度。 | 請參考 [生產者開發套件配額](limits.md#producer-sdk-limits) 中指定的標籤名稱限制。 | 
| 0x5200003c | STATUS\_INVALID\_TAG\_VALUE\_LEN | 無效標籤值長度。 | 請參考 [生產者開發套件配額](limits.md#producer-sdk-limits) 中指定的標籤值限制。 | 
| 0x5200003d | STATUS\_TAG\_STREAM\_CALL\_FAILED | TagResource API 失敗。 | TagResource API 呼叫失敗。檢查是否有有效的網路連線。查看關於操作失敗的記錄詳細資訊。 | 
| 0x5200003e | STATUS\_INVALID\_CUSTOM\_DATA | 無效的自訂資料呼叫 PIC API。 | 無效的自訂資料已在對 PIC API 的呼叫中指定。此情況只會在直接使用 PIC 的客戶端發生。 | 
| 0x5200003f | STATUS\_INVALID\_CREATE\_STREAM\_RESPONSE | 無效的 CreateStreamResponse 架構。 | 架構或其成員欄位無效 (也就是 ARN 為 null 或大於 [生產者開發套件配額](limits.md#producer-sdk-limits) 中指定的值)。 | 
| 0x52000040 | STATUS\_CLIENT\_AUTH\_CALL\_FAILED  | 客戶端授權失敗。 | 多次重試後，PIC 無法取得適當的身分驗證資訊 (AccessKeyId 或 SecretAccessKey)。檢查身分驗證整合。範例應用程式使用環境變數將登入資料資訊傳入到 C\+\+ Producer Library。 | 
| 0x52000041 | STATUS\_GET\_CLIENT\_TOKEN\_CALL\_FAILED | 取得安全字符呼叫失敗。 | 此情況只會在直接使用 PIC 的客戶端發生。在重試一定次數後，呼叫失敗並出現該錯誤。 | 
| 0x52000042 | STATUS\_CLIENT\_PROVISION\_CALL\_FAILED | 佈建錯誤。 | 佈建未實作。 | 
| 0x52000043 | STATUS\_CREATE\_CLIENT\_CALL\_FAILED | 無法建立製作者客戶端。 | 在客戶端建立失敗時，在重試一定次數後，PIC 會傳回一個一般錯誤。 | 
| 0x52000044 | STATUS\_CLIENT\_READY\_CALLBACK\_FAILED | 無法讓製作者用戶端成為「就緒」(Ready) 狀態。 | 若 PIC 無法移動為「就緒」(Ready) 狀態，將由 PIC 狀態機器傳回。查看關於根本原因的記錄詳細資訊。 | 
| 0x52000045 | STATUS\_TAG\_CLIENT\_CALL\_FAILED | 製作者客戶端的 TagResource 失敗。 | 製作者客戶端的 TagResource API 呼叫失敗。查看關於根本原因的記錄詳細資訊。 | 
| 0x52000046 | STATUS\_INVALID\_CREATE\_DEVICE\_RESPONSE | 裝置/製作者建立失敗。 | 高階 SDKs （例如 C\+\+ 或 Java) 尚未實作裝置或生產者建立 API。直接使用 PIC 的客戶端可以使用結果通知來顯示操作失敗。 | 
| 0x52000047 | STATUS\_ACK\_TIMESTAMP\_NOT\_IN\_VIEW\_WINDOW | 在視圖中不顯示收到的 ACK 的時間戳記。 | 如果與收到的 ACK 對應的影格未位於內容視圖視窗中，則會出現該錯誤。通常，如果 ACK 傳送速率較慢就會發生這種情況。可以將其解釋為警告，並顯示下行線路速度較慢。 | 
| 0x52000048 | STATUS\_INVALID\_FRAGMENT\_ACK\_VERSION | 無效的 FragmentAck 架構版本。 | 指定正確的目前 FragmentAck 架構版本。 | 
| 0x52000049 | STATUS\_INVALID\_TOKEN\_EXPIRATION | 無效的安全字符過期。 | 安全性字符過期應具有未來大於目前時間戳記的絕對時間戳記，並具有寬限期。對於寬限期的限制，請參閱 [生產者開發套件配額](limits.md#producer-sdk-limits)。 | 
| 0x5200004a | STATUS\_END\_OF\_STREAM | 串流結束 (EOS) 指標。 | 在 GetStreamData API 呼叫中，表示目前上傳處理工作階段已結束。如果工作階段結束或出現錯誤，或者工作階段字符已過期並且正在輪換工作階段，則會發生這種情況。 | 
| 0x5200004b | STATUS\_DUPLICATE\_STREAM\_NAME | 重複的串流名稱。 | 多個串流不能具有相同的串流名稱。請為串流選擇專屬名稱。 | 
| 0x5200004c | STATUS\_INVALID\_RETENTION\_PERIOD | 無效保留期間。 | StreamInfo 結構中指定了無效的保留期。關於保留期數值的有效範圍資訊，請參閱 [生產者開發套件配額](limits.md#producer-sdk-limits)。 | 
| 0x5200004d | STATUS\_INVALID\_ACK\_KEY\_START | 無效的 FragmentAck。 | 無法解析區段 ACK 字串。無效的金鑰開始指標。區段 ACK 字串可能已損壞。它可以自行更正，並且可以將該錯誤視為警告。 | 
| 0x5200004e | STATUS\_INVALID\_ACK\_DUPLICATE\_KEY\_NAME | 無效的 FragmentAck。 | 無法解析區段 ACK 字串。多個金鑰有相同的名稱。區段 ACK 字串可能已損壞。它可以自行更正，並且可以將該錯誤視為警告。 | 
| 0x5200004f | STATUS\_INVALID\_ACK\_INVALID\_VALUE\_START | 無效的 FragmentAck。 | 因為無效的金鑰值開始指標而無法解析區段 ACK 字串。區段 ACK 字串可能已損壞。它可以自行更正，並且可以將該錯誤視為警告。 | 
| 0x52000050 | STATUS\_INVALID\_ACK\_INVALID\_VALUE\_END | 無效的 FragmentAck。 | 因為無效的金鑰值結束指標而無法解析區段 ACK 字串。區段 ACK 字串可能已損壞。它可以自行更正，並且可以將該錯誤視為警告。 | 
| 0x52000051 | STATUS\_INVALID\_PARSED\_ACK\_TYPE | 無效的 FragmentAck。 | 因指定了無效的 ACK 類型，無法解析區段 ACK 字串。 | 
| 0x52000052 | STATUS\_STREAM\_HAS\_BEEN\_STOPPED | 串流已停止。 | 串流已停止，但影格仍放入串流中。 | 
| 0x52000053 | STATUS\_INVALID\_STREAM\_METRICS\_VERSION | 無效的 StreamMetrics 架構版本。 | 指定正確的目前 StreamMetrics 架構版本。 | 
| 0x52000054 | STATUS\_INVALID\_CLIENT\_METRICS\_VERSION | 無效的 ClientMetrics 架構版本。 | 指定正確的目前 ClientMetrics 架構版本。 | 
| 0x52000055 | STATUS\_INVALID\_CLIENT\_READY\_STATE | 製作者初始化無法達到「就緒」(Ready) 狀態。 | 無法在製作者客戶端初始化期間達到「就緒」(Ready) 狀態。查看記錄了解更多資訊。 | 
| 0x52000056 | STATUS\_STATE\_MACHINE\_STATE\_NOT\_FOUND | 內部狀態機器錯誤。 | 不是公開顯示的錯誤。 | 
| 0x52000057 | STATUS\_INVALID\_FRAGMENT\_ACK\_TYPE | FragmentAck 結構中指定的無效 ACK 類型。 | FragmentAck 結構應包含公開標題中定義的 ACK 類型。 | 
| 0x52000058 | STATUS\_INVALID\_STREAM\_READY\_STATE | 內部狀態機器轉移錯誤。 | 不是公開顯示的錯誤。 | 
| 0x52000059 | STATUS\_CLIENT\_FREED\_BEFORE\_STREAM | 在釋放建立者後釋放串流對象。 | 嘗試在釋放製作者物件後釋放串流物件。只有在直接使用 PIC 的客戶端中可能會發生這種情況。 | 
| 0x5200005a | STATUS\_ALLOCATION\_SIZE\_SMALLER\_THAN\_REQUESTED | 內部儲存空間錯誤。 | 內部錯誤，指出內容存放區的實際配置大小小於封裝影格和片段的大小。 | 
| 0x5200005b | STATUS\_VIEW\_ITEM\_SIZE\_GREATER\_THAN\_ALLOCATION | 內部儲存空間錯誤。 | 分配在內容視圖的儲存大小大於內容存放區中的分配大小。 | 
| 0x5200005c | STATUS\_ACK\_ERR\_STREAM\_READ\_ERROR | 串流讀取錯誤 ACK。 | ACK 從後端傳回的錯誤，指出串流讀取或剖析錯誤。在後端無法擷取串流時，通常會發生這種情況。自動重新資料串流通常可以修正該錯誤。 | 
| 0x5200005d | STATUS\_ACK\_ERR\_FRAGMENT\_SIZE\_REACHED | 已達最高區段大小上限。 | 以位元表示的最高區段大小定義於 [生產者開發套件配額](limits.md#producer-sdk-limits) 中。該錯誤表示具有非常大的影格，或者沒有用於建立可管理大小的區段的關鍵影格。檢查編碼器設定並確認已正確產生關鍵影格。對於具有較高密度的串流，請將編碼器配置以較小持續時間產生的區段以管理最大大小。 | 
| 0x5200005e | STATUS\_ACK\_ERR\_FRAGMENT\_DURATION\_REACHED | 已達最高區段持續時間上限。 | 最高區段持續時間定義於 [生產者開發套件配額](limits.md#producer-sdk-limits) 中。該錯誤表示每秒具有非常小的影格，或者沒有用於建立可管理持續時間的區段的關鍵影格。檢查編碼器設定，並確認金鑰影格是否定期正確產生。 | 
| 0x5200005f | STATUS\_ACK\_ERR\_CONNECTION\_DURATION\_REACHED | 已達最高連線持續時間上限。 | Kinesis Video Streams 會強制執行 中指定的最長連線持續時間[生產者開發套件配額](limits.md#producer-sdk-limits)。製作者開發套件會在達到上限之前自動輪換串流或字符。使用 SDK 的用戶端不應收到此錯誤。 | 
| 0x52000060 | STATUS\_ACK\_ERR\_FRAGMENT\_TIMECODE\_NOT\_MONOTONIC | 時間碼並非以單調遞增。 | Producer SDK 會強制執行時間戳記，因此使用 SDK 的用戶端不應收到此錯誤。 | 
| 0x52000061 | STATUS\_ACK\_ERR\_MULTI\_TRACK\_MKV | 在 MKV 中的多個音軌。 | Producer SDK 會強制執行單一追蹤串流，因此使用 SDK 的用戶端不應收到此錯誤。 | 
| 0x52000062 | STATUS\_ACK\_ERR\_INVALID\_MKV\_DATA | 無效的 MKV 資料。 | 後端 MKV 解析器在解析串流時遇到錯誤。如果轉換期間串流損毀，使用 SDK 的用戶端可能會遇到此錯誤。如果緩衝壓力強制 SDK 捨棄部分傳輸的尾影格，也會發生這種情況。在後一種情況下，我們建議您減少 FPS 和解析度、提高壓縮率，或 （如果有「爆量」網路） 允許較大的內容存放區和緩衝區持續時間，以適應暫時壓力。 | 
| 0x52000063 | STATUS\_ACK\_ERR\_INVALID\_PRODUCER\_TIMESTAMP | 無效的製作者時間戳記。 | 如果製作者時鐘大幅漂移到將來的時間，服務將傳回該錯誤 ACK。更高級別的軟體開發套件 (例如，Java 或 C\+\+) 使用某種版本的系統時鐘以符合從 PIC 中回呼目前時間的要求。確認系統時鐘已正確設定。直接使用 PIC 的用戶端應驗證其回呼函數是否傳回正確的時間戳記。 | 
| 0x52000064 | STATUS\_ACK\_ERR\_STREAM\_NOT\_ACTIVE | 閒置串流。 | 在串流未處於「使用中」狀態時，對後端 API 進行呼叫。如果客戶端建立串流並立即繼續將影格推入串流中，則會發生這種情況。軟體開發套件使用狀態機器和復原機制來處理這種情況。 | 
| 0x52000065 | STATUS\_ACK\_ERR\_KMS\_KEY\_ACCESS\_DENIED | AWS KMS 存取遭拒錯誤。 | 當帳戶沒有存取特定金鑰的權限時傳回。 | 
| 0x52000066 | STATUS\_ACK\_ERR\_KMS\_KEY\_DISABLED | AWS KMS 金鑰已停用。 | 指定的金鑰已停用。 | 
| 0x52000067 | STATUS\_ACK\_ERR\_KMS\_KEY\_VALIDATION\_ERROR  | AWS KMS 金鑰驗證錯誤。 | 一般驗證錯誤。如需詳細資訊，請參閱 [AWS Key Management Service API 參考](https://docs.aws.amazon.com/kms/latest/APIReference/)。 | 
| 0x52000068 | STATUS\_ACK\_ERR\_KMS\_KEY\_UNAVAILABLE | AWS KMS key 無法使用。 | 金鑰無法使用。如需詳細資訊，請參閱 [AWS Key Management Service API 參考](https://docs.aws.amazon.com/kms/latest/APIReference/)。 | 
| 0x52000069 | STATUS\_ACK\_ERR\_KMS\_KEY\_INVALID\_USAGE | KMS 金鑰的使用無效。 |  AWS KMS key 未設定為在此內容中使用。如需詳細資訊，請參閱 [AWS Key Management Service API 參考](https://docs.aws.amazon.com/kms/latest/APIReference/)。 | 
| 0x5200006a | STATUS\_ACK\_ERR\_KMS\_KEY\_INVALID\_STATE | AWS KMS 無效狀態。 | 如需詳細資訊，請參閱 [AWS Key Management Service API 參考](https://docs.aws.amazon.com/kms/latest/APIReference/)。 | 
| 0x5200006b | STATUS\_ACK\_ERR\_KMS\_KEY\_NOT\_FOUND | 找不到 KMS 金鑰。 | 找不到金鑰。如需詳細資訊，請參閱 [AWS Key Management Service API 參考](https://docs.aws.amazon.com/kms/latest/APIReference/)。 | 
| 0x5200006c | STATUS\_ACK\_ERR\_STREAM\_DELETED | 串流已被刪除或者正在刪除。 | 串流正由其他應用程式刪除或者透過 AWS 管理主控台刪除。 | 
| 0x5200006d | STATUS\_ACK\_ERR\_ACK\_INTERNAL\_ERROR | 內部錯誤。 | 一般服務內部錯誤。 | 
| 0x5200006e | STATUS\_ACK\_ERR\_FRAGMENT\_ARCHIVAL\_ERROR | 區段存檔錯誤。 | 在服務無法長期保留區段並為其編制索引時傳回。雖然非常少見，但可能會因為各種原因而發生此情況。預設情況下，軟體開發套件會再次嘗試發送區段。 | 
| 0x5200006f | STATUS\_ACK\_ERR\_UNKNOWN\_ACK\_ERROR | 不明錯誤. | 此服務傳回了一個不明錯誤。 | 
| 0x52000070 | STATUS\_MISSING\_ERR\_ACK\_ID | 遺失的 ACK 資訊。 | ACK 解析器已完成解析，但是仍缺少 FragmentAck 資訊。 | 
| 0x52000071 | STATUS\_INVALID\_ACK\_SEGMENT\_LEN | 無效的 ACK 區段長度。 | 指定給 ACK 解析器的 ACK 區段字串為無效長度。如需詳細資訊，請參閱[生產者開發套件配額](limits.md#producer-sdk-limits)。 | 
| 0x52000074 | STATUS\_MAX\_FRAGMENT\_METADATA\_COUNT | 片段中繼資料項目新增數量已達上限。 | Kinesis 影片串流最多可以將 10 個中繼資料項目新增至片段，方法是將非持久性項目新增至片段，或將持久性項目新增至中繼資料佇列。如需詳細資訊，請參閱[搭配 Kinesis Video Streams 使用串流中繼資料](how-meta.md)。 | 
| 0x52000075 | STATUS\_ACK\_ERR\_FRAGMENT\_METADATA\_LIMIT\_REACHED | 已達上限 (中繼資料計數上限、中繼資料名稱長度上限、中繼資料數值長度上限)。 | 製作者開發套件會限制中繼資料項目的名稱與大小。除非 Producer SDK 程式碼中的限制變更，否則不會發生此錯誤。如需詳細資訊，請參閱[搭配 Kinesis Video Streams 使用串流中繼資料](how-meta.md)。 | 
| 0x52000076 | STATUS\_BLOCKING\_PUT\_INTERRUPTED\_STREAM\_TERMINATED | 不實作。 |  | 
| 0x52000077 | STATUS\_INVALID\_METADATA\_NAME | 中繼資料名稱無效。 | 中繼資料名稱不能以字串 "AWS" 開頭。如果發生此錯誤，中繼資料項目不會新增至片段或中繼資料佇列。如需詳細資訊，請參閱[搭配 Kinesis Video Streams 使用串流中繼資料](how-meta.md)。 | 
| 0x52000078 | STATUS\_END\_OF\_FRAGMENT\_FRAME\_INVALID\_STATE | 片段影格的結尾為無效狀態。 | 片段結尾不應在non-key-frame分段串流中傳送。 | 
| 0x52000079 | STATUS\_TRACK\_INFO\_MISSING | 遺失軌道資訊。 | 軌跡編號必須大於零，且符合軌跡 ID。 | 
| 0x5200007a | STATUS\_MAX\_TRACK\_COUNT\_EXCEEDED | 超過最大軌道數量。 | 每個串流最多可有三個音軌。 | 
| 0x5200007b | STATUS\_OFFLINE\_MODE\_WITH\_ZERO\_RETENTION | 離線串流模式保留時間設定為零。 | 離線串流模式保留時間不應設定為零。 | 
| 0x5200007c | STATUS\_ACK\_ERR\_TRACK\_NUMBER\_MISMATCH | 錯誤 ACK 的軌道編號不符。 |  | 
| 0x5200007d | STATUS\_ACK\_ERR\_FRAMES\_MISSING\_FOR\_TRACK | 軌道遺漏影格。 |  | 
| 0x5200007e | STATUS\_ACK\_ERR\_MORE\_THAN\_ALLOWED\_TRACKS\_FOUND | 超過允許的軌道數量上限。 |  | 
| 0x5200007f | STATUS\_UPLOAD\_HANDLE\_ABORTED | 上傳處理中止。 |  | 
| 0x52000080 | STATUS\_INVALID\_CERT\_PATH\_LENGTH | 無效的憑證路徑長度。 |  | 
| 0x52000081 | STATUS\_DUPLICATE\_TRACK\_ID\_FOUND | 找到重複的軌道 ID。 |  | 
| 0x52000082 | STATUS\_INVALID\_CLIENT\_INFO\_VERSION |  |  | 
| 0x52000083 | STATUS\_INVALID\_CLIENT\_ID\_STRING\_LENGTH |  |  | 
| 0x52000084 | STATUS\_SETTING\_KEY\_FRAME\_FLAG\_WHILE\_USING\_EOFR |  |  | 
| 0x52000085 | STATUS\_MAX\_FRAME\_TIMESTAMP\_DELTA\_BETWEEN\_TRACKS\_EXCEEDED |  |  | 
| 0x52000086 | STATUS\_STREAM\_SHUTTING\_DOWN |  |  | 
| 0x52000087 | STATUS\_CLIENT\_SHUTTING\_DOWN |  |  | 
| 0x52000088 | STATUS\_PUTMEDIA\_LAST\_PERSIST\_ACK\_NOT\_RECEIVED |  |  | 
| 0x52000089 | STATUS\_NON\_ALIGNED\_HEAP\_WITH\_IN\_CONTENT\_STORE\_ALLOCATORS |  |  | 
| 0x5200008a | STATUS\_MULTIPLE\_CONSECUTIVE\_EOFR |  |  | 
| 0x5200008b | STATUS\_DUPLICATE\_STREAM\_EVENT\_TYPE |  |  | 
| 0x5200008c | STATUS\_STREAM\_NOT\_STARTED |  |  | 
| 0x5200008d | STATUS\_INVALID\_IMAGE\_PREFIX\_LENGTH |  |  | 
| 0x5200008e | STATUS\_INVALID\_IMAGE\_METADATA\_KEY\_LENGTH |  |  | 
| 0x5200008f | STATUS\_INVALID\_IMAGE\_METADATA\_VALUE\_LENGTH |  |  | 

### 持續時間程式庫傳回的錯誤和狀態碼
<a name="producer-sdk-errors-duration"></a>

下表包含程式`Duration`庫中方法傳回的錯誤和狀態資訊。


****  

| 代碼 | 訊息 | 
| --- | --- | 
| 0xFFFFFFFFFFFFFFFF | INVALID\_DURATION\_VALUE | 

### 常見程式庫傳回的錯誤和狀態碼
<a name="producer-sdk-errors-common"></a>

下表包含程式`Common`庫中方法傳回的錯誤和狀態資訊。

**注意**  
這些錯誤與狀態資訊代碼常見於許多 API。


****  

| Code | 沒有前導 0 的程式碼 | 訊息 | Description | 
| --- | --- | --- | --- | 
| 0x00000001  | 0x1 | STATUS\_NULL\_ARG | 為必要引數傳遞 NULL。 | 
| 0x00000002  | 0x2 | STATUS\_INVALID\_ARG  | 為引數指定了無效的值。 | 
| 0x00000003  | 0x3 | STATUS\_INVALID\_ARG\_LEN  | 指定了無效的引數長度。 | 
| 0x00000004  | 0x4 | STATUS\_NOT\_ENOUGH\_MEMORY  | 無法配置足夠的記憶體。 | 
| 0x00000005  | 0x5 | STATUS\_BUFFER\_TOO\_SMALL  | 指定的緩衝大小太小。 | 
| 0x00000006  | 0x6 | STATUS\_UNEXPECTED\_EOF  | 達到未預期的檔案結尾。 | 
| 0x00000007  | 0x7 | STATUS\_FORMAT\_ERROR  | 遇到無效的格式。 | 
| 0x00000008  | 0x8 | STATUS\_INVALID\_HANDLE\_ERROR  | 無效的處理常式值。 | 
| 0x00000009  | 0x9 | STATUS\_OPEN\_FILE\_FAILED  | 無法開啟檔案。 | 
| 0x0000000a  | 0xa | STATUS\_READ\_FILE\_FAILED | 無法從檔案讀取。 | 
| 0x0000000b  | 0xb | STATUS\_WRITE\_TO\_FILE\_FAILED  | 無法寫入檔案。 | 
| 0x0000000c  | 0xc | STATUS\_INTERNAL\_ERROR  | 通常不會出現的內部錯誤，可能表示軟體開發套件或服務 API 錯誤。 | 
| 0x0000000d  | 0xd | STATUS\_INVALID\_OPERATION  | 具有無效的操作，或者不允許執行該操作。 | 
| 0x0000000e  | 0xe | STATUS\_NOT\_IMPLEMENTED  | 未套用功能。 | 
| 0x0000000f  | 0xf | STATUS\_OPERATION\_TIMED\_OUT  | 此操作逾時。 | 
| 0x00000010  | 0x10 | STATUS\_NOT\_FOUND  | 找不到需要的資源。 | 
| 0x00000011 | 0x11 | STATUS\_CREATE\_THREAD\_FAILED  | 無法建立執行緒。 | 
| 0x00000012 | 0x12 | STATUS\_THREAD\_NOT\_ENOUGH\_RESOURCES  | 資源不足以建立另一個執行緒，或遇到系統對執行緒數量施加的限制。 | 
| 0x00000013  | 0x13 | STATUS\_THREAD\_INVALID\_ARG  | 指定的執行緒屬性無效，或另一個執行緒已等待加入此執行緒。 | 
| 0x00000014  | 0x14 | STATUS\_THREAD\_PERMISSIONS  | 沒有許可來設定執行緒屬性中指定的排程政策和參數。 | 
| 0x00000015  | 0x15 | STATUS\_THREAD\_DEADLOCKED  | 偵測到死結或聯結執行緒指定呼叫執行緒。 | 
| 0x00000016  | 0x16 | STATUS\_THREAD\_DOES\_NOT\_EXIST  | 找不到具有指定執行緒 ID 的執行緒。 | 
| 0x00000017  | 0x17 | STATUS\_JOIN\_THREAD\_FAILED  | 從執行緒聯結操作傳回未知或一般錯誤。 | 
| 0x00000018  | 0x18 | STATUS\_WAIT\_FAILED  | 超過等待條件式變數的時間上限。 | 
| 0x00000019  | 0x19 | STATUS\_CANCEL\_THREAD\_FAILED  | 從執行緒取消操作傳回未知或一般錯誤。 | 
| 0x0000001a  | 0x1a | STATUS\_THREAD\_IS\_NOT\_JOINABLE  | 在不可聯結的執行緒上請求執行緒聯結操作。 | 
| 0x0000001b  | 0x1b | STATUS\_DETACH\_THREAD\_FAILED   | 從執行緒分離操作傳回未知或一般錯誤。 | 
| 0x0000001c  | 0x1c | STATUS\_THREAD\_ATTR\_INIT\_FAILED  | 無法初始化執行緒屬性物件。 | 
| 0x0000001d  | 0x1d | STATUS\_THREAD\_ATTR\_SET\_STACK\_SIZE\_FAILED  | 無法設定執行緒屬性物件的堆疊大小。 | 
| 0x0000001e  | 0x1e | STATUS\_MEMORY\_NOT\_FREED  | 僅用於測試。表示尚未釋放所有請求的記憶體。 | 
| 0x0000001f | 0x1f | STATUS\_INVALID\_THREAD\_PARAMS\_VERSION  | 無效的 "ThreadParams" 結構版本。指定正確的目前架構版本。 | 

### 堆積程式庫傳回的錯誤和狀態碼
<a name="producer-sdk-errors-heap"></a>

下表包含程式`Heap`庫中方法傳回的錯誤和狀態資訊。


****  

| 代碼 | 訊息 | Description | 
| --- | --- | --- | 
| 0x10000001  | STATUS\_HEAP\_FLAGS\_ERROR  | 指定的標籤組合無效。 | 
| 0x10000002  | STATUS\_HEAP\_NOT\_INITIALIZED  | 堆積初始化前已嘗試操作。 | 
| 0x10000003  | STATUS\_HEAP\_CORRUPTED  | 督機已損壞或已覆蓋保護頻寬 (在偵錯模式下)。客戶端代碼中的緩衝區溢位可能導致堆積損壞。 | 
| 0x10000004  | STATUS\_HEAP\_VRAM\_LIB\_MISSING  | 無法載入或遺失 VRAM （影片 RAM) 使用者或核心模式程式庫。檢查基礎平台是否支援 VRAM 分配。 | 
| 0x10000005  | STATUS\_HEAP\_VRAM\_LIB\_REOPEN  | 無法開啟 VRAM 程式庫。 | 
| 0x10000006  | STATUS\_HEAP\_VRAM\_INIT\_FUNC\_SYMBOL  | 無法載入 INIT 函數匯出。 | 
| 0x10000007  | STATUS\_HEAP\_VRAM\_ALLOC\_FUNC\_SYMBOL  | 無法載入 ALLOC 函數匯出。 | 
| 0x10000008  | STATUS\_HEAP\_VRAM\_FREE\_FUNC\_SYMBOL  | 無法載入 FREE 函數匯出。 | 
| 0x10000009  | STATUS\_HEAP\_VRAM\_LOCK\_FUNC\_SYMBOL  | 無法載入 LOCK 函數匯出。 | 
| 0x1000000a  | STATUS\_HEAP\_VRAM\_UNLOCK\_FUNC\_SYMBOL  | 無法載入 UNLOCK 函數匯出。 | 
| 0x1000000b  | STATUS\_HEAP\_VRAM\_UNINIT\_FUNC\_SYMBOL  | 無法載入 UNINIT 函數匯出。 | 
| 0x1000000c  | STATUS\_HEAP\_VRAM\_GETMAX\_FUNC\_SYMBOL  | 無法載入 GETMAX 函數匯出。 | 
| 0x1000000d  | STATUS\_HEAP\_DIRECT\_MEM\_INIT  | 無法初始化在混合堆積中的主要堆積集區。 | 
| 0x1000000e  | STATUS\_HEAP\_VRAM\_INIT\_FAILED  | VRAM 動態初始化失敗。 | 
| 0x1000000f  | STATUS\_HEAP\_LIBRARY\_FREE\_FAILED  | 無法取消分配和釋放 VRAM 程式庫。 | 
| 0x10000010  | STATUS\_HEAP\_VRAM\_ALLOC\_FAILED  | VRAM 分配失敗。 | 
| 0x10000011  | STATUS\_HEAP\_VRAM\_FREE\_FAILED  | VRAM 釋放失敗。 | 
| 0x10000012  | STATUS\_HEAP\_VRAM\_MAP\_FAILED  | VRAM 對應失敗。 | 
| 0x10000013  | STATUS\_HEAP\_VRAM\_UNMAP\_FAILED  | VRAM 取消對應失敗。 | 
| 0x10000014  | STATUS\_HEAP\_VRAM\_UNINIT\_FAILED  | VRAM 取消初始化失敗。 | 
| 0x10000015 | STATUS\_INVALID\_ALLOCATION\_SIZE |  | 
| 0x10000016 | STATUS\_HEAP\_REALLOC\_ERROR |  | 
| 0x10000017 | STATUS\_HEAP\_FILE\_HEAP\_FILE\_CORRUPT |  | 

### MKVGen 程式庫傳回的錯誤和狀態碼
<a name="producer-sdk-errors-mkvgen"></a>

下表包含程式`MKVGen`庫中方法傳回的錯誤和狀態資訊。


****  

| 代碼 | 訊息 | 描述/建議的動作 | 
| --- | --- | --- | 
| 0x32000001  | STATUS\_MKV\_INVALID\_FRAME\_DATA  | Frame 資料結構的無效成員。請確定持續時間、大小和影格資料有效，且在 中指定的限制內[生產者開發套件配額](limits.md#producer-sdk-limits)。 | 
| 0x32000002  | STATUS\_MKV\_INVALID\_FRAME\_TIMESTAMP  | 無效的影格時間戳記。計算的 PTS (簡報時間戳記) 和 DTS (解碼時間戳記) 大於或等於片段開始影格的時間戳記。這表示有潛在的媒體管道重新開機或編碼器穩定性問題。如需故障診斷資訊，請參閱 [錯誤：「無法將影格提交到 Kinesis Video 用戶端」](troubleshooting.md#troubleshooting-producer-failed-frame-client)。 | 
| 0x32000003  | STATUS\_MKV\_INVALID\_CLUSTER\_DURATION  | 指定了無效的區段持續時間。如需詳細資訊，請參閱[生產者開發套件配額](limits.md#producer-sdk-limits)。 | 
| 0x32000004  | STATUS\_MKV\_INVALID\_CONTENT\_TYPE\_LENGTH  | 無效的內容類型字串長度。如需詳細資訊，請參閱[生產者開發套件配額](limits.md#producer-sdk-limits)。 | 
| 0x32000005  | STATUS\_MKV\_NUMBER\_TOO\_BIG  | 嘗試編碼的數位太大，無法使用 EBML (可擴展二進位元語言) 格式表示。不會向軟體開發套件客戶端顯示該錯誤。 | 
| 0x32000006  | STATUS\_MKV\_INVALID\_CODEC\_ID\_LENGTH  | 無效的轉碼器 ID 字串長度。如需詳細資訊，請參閱[生產者開發套件配額](limits.md#producer-sdk-limits)。 | 
| 0x32000007  | STATUS\_MKV\_INVALID\_TRACK\_NAME\_LENGTH  | 無效的音軌名稱字串長度。如需詳細資訊，請參閱[生產者開發套件配額](limits.md#producer-sdk-limits)。 | 
| 0x32000008  | STATUS\_MKV\_INVALID\_CODEC\_PRIVATE\_LENGTH  | 無效的轉碼器私有資料長度。如需詳細資訊，請參閱[生產者開發套件配額](limits.md#producer-sdk-limits)。 | 
| 0x32000009  | STATUS\_MKV\_CODEC\_PRIVATE\_NULL  | 轉碼器私有資料 (CPD) 為 NULL，而 CPD 大小大於零。 | 
| 0x3200000a  | STATUS\_MKV\_INVALID\_TIMECODE\_SCALE  | 時間碼比例值無效。如需詳細資訊，請參閱[生產者開發套件配額](limits.md#producer-sdk-limits)。 | 
| 0x3200000b  | STATUS\_MKV\_MAX\_FRAME\_TIMECODE  | 影格時間碼大於最大值。如需詳細資訊，請參閱[生產者開發套件配額](limits.md#producer-sdk-limits)。 | 
| 0x3200000c  | STATUS\_MKV\_LARGE\_FRAME\_TIMECODE  | 已達最高影格時間碼。MKV 格式使用有符號 16 位元表示影格相對於叢集開頭的時間碼。如果無法表示影格時間碼，則會產生錯誤。該錯誤表示選擇的時間碼比例不正確叢集持續時間太長，因此，表示影格時間碼將導致有符號 16 位元空間溢出。 | 
| 0x3200000d  | STATUS\_MKV\_INVALID\_ANNEXB\_NALU\_IN\_FRAME\_DATA  | 遇到無效的 Annex-B 啟動代碼。例如，指定了 Annex-B 調節標記，且代碼遇到包含超過三個零的無效開始序列。有效的 Annex-B 格式應具有「模擬防護」序列，以便對位元組串流中包含三個或更多零的序列進行逸出。如需詳細資訊，請參閱 MPEG 規格。如需 Android 上此錯誤的詳細資訊，請參閱[在 Android 上發生 STATUS\_MKV\_INVALID\_ANNEXB\_NALU\_IN\_FRAME\_DATA (0x3200000d) 錯誤](troubleshooting.md#troubleshooting-producer-android-invalid-annexb)。 | 
| 0x3200000e  | STATUS\_MKV\_INVALID\_AVCC\_NALU\_IN\_FRAME\_DATA  | 指定調整 AVCC 旗標時，無效的 AVCC NALU 封裝。確認位元組串流是有效的 AVCC 格式。如需詳細資訊，請參閱 MPEG 規格。 | 
| 0x3200000f  | STATUS\_MKV\_BOTH\_ANNEXB\_AND\_AVCC\_SPECIFIED  | 已指定調整 AVCC 和 Annex-B NALUs。指定其中的一個 NAL，或者不指定任何 NAL。 | 
| 0x32000010  | STATUS\_MKV\_INVALID\_ANNEXB\_NALU\_IN\_CPD  | 在指定了調節 Annex-B 標記時，CPD 的 Annex-B 格式無效。確認 CPD 為有效的 Annex-B 格式。如果不是，請移除 CPD Annex-B 適應旗標。 | 
| 0x32000011  | STATUS\_MKV\_PTS\_DTS\_ARE\_NOT\_SAME  | Kinesis Video Streams 會強制執行片段開始影格的 PTS （呈現時間戳記） 和 DTS （解碼時間戳記） 相同。這些是區段開頭的關鍵影格。 | 
| 0x32000012  | STATUS\_MKV\_INVALID\_H264\_H265\_CPD  | 無法解析 H264/H265 轉碼器私有資料。 | 
| 0x32000013  | STATUS\_MKV\_INVALID\_H264\_H265\_SPS\_WIDTH  | 無法從轉碼器私有資料中取得寬度。 | 
| 0x32000014  | STATUS\_MKV\_INVALID\_H264\_H265\_SPS\_HEIGHT  | 無法從轉碼器私有資料中取得高度。 | 
| 0x32000015  | STATUS\_MKV\_INVALID\_H264\_H265\_SPS\_NALU  | 無效的 H264/H265 SPS NALU。 | 
| 0x32000016  | STATUS\_MKV\_INVALID\_BIH\_CPD  | 轉碼器私有資料中的點陣圖資訊標題格式無效。 | 
| 0x32000017  | STATUS\_MKV\_INVALID\_HEVC\_NALU\_COUNT  | 無效的高效能視訊編碼 (HEVC) 網路抽象層單元 (NALU) 計數。 | 
| 0x32000018  | STATUS\_MKV\_INVALID\_HEVC\_FORMAT  | 無效的 HEVC 格式。 | 
| 0x32000019  | STATUS\_MKV\_HEVC\_SPS\_NALU\_MISSING  | 序列參數集 (SPS) 中缺少 HEVC NALU。 | 
| 0x3200001a  | STATUS\_MKV\_INVALID\_HEVC\_SPS\_NALU\_SIZE   | 無效的 HEVC SPS NALU 大小。 | 
| 0x3200001b  | STATUS\_MKV\_INVALID\_HEVC\_SPS\_CHROMA\_FORMAT\_IDC   | 無效的 Chroma 格式 IDC。 | 
| 0x3200001c  | STATUS\_MKV\_INVALID\_HEVC\_SPS\_RESERVED   | 無效的 HEVC 預留 SPS。 | 
| 0x3200001d  | STATUS\_MKV\_MIN\_ANNEX\_B\_CPD\_SIZE   | AnnexBb 轉碼器私有 Beta 值大小下限。對於 H264，此數值必須等於或大於 11。對於 H265，此數值必須等於或大於 15。 | 
| 0x3200001e  | STATUS\_MKV\_ANNEXB\_CPD\_MISSING\_NALUS  | Annex-B NALU 中缺少轉碼器私有資料。 | 
| 0x3200001f  | STATUS\_MKV\_INVALID\_ANNEXB\_CPD\_NALUS  | Annex-B NALU 中的轉碼器私有 beta 無效。 | 
| 0x32000020  | STATUS\_MKV\_INVALID\_TAG\_NAME\_LENGTH   | 無效標籤名稱長度。有效值為大於零並小於 128。 | 
| 0x32000021  | STATUS\_MKV\_INVALID\_TAG\_VALUE\_LENGTH   | 無效標籤值長度。有效值大於零且小於 256。 | 
| 0x32000022  | STATUS\_MKV\_INVALID\_GENERATOR\_STATE\_TAGS   | 無效的產生器狀態標籤。 | 
| 0x32000023  | STATUS\_MKV\_INVALID\_AAC\_CPD\_SAMPLING\_FREQUENCY\_INDEX   | 無效的 AAC 轉碼器私有資料取樣頻率索引。 | 
| 0x32000024  | STATUS\_MKV\_INVALID\_AAC\_CPD\_CHANNEL\_CONFIG   | 無效的 AAC 轉碼器私有資料管道組態。 | 
| 0x32000025  | STATUS\_MKV\_INVALID\_AAC\_CPD   | 無效的 AAC 轉碼器私有資料。 | 
| 0x32000026  | STATUS\_MKV\_TRACK\_INFO\_NOT\_FOUND   | 找不到軌道資訊。 | 
| 0x32000027  | STATUS\_MKV\_INVALID\_SEGMENT\_UUID   | 無效的區段 UUID。 | 
| 0x32000028  | STATUS\_MKV\_INVALID\_TRACK\_UID   | 無效的軌道 UID。 | 
| 0x32000029 | STATUS\_MKV\_INVALID\_CLIENT\_ID\_LENGTH |  | 
| 0x3200002a | STATUS\_MKV\_INVALID\_AMS\_ACM\_CPD |  | 
| 0x3200002b | STATUS\_MKV\_MISSING\_SPS\_FROM\_H264\_CPD |  | 
| 0x3200002c | STATUS\_MKV\_MISSING\_PPS\_FROM\_H264\_CPD |  | 
| 0x3200002d | STATUS\_MKV\_INVALID\_PARENT\_TYPE |  | 

### 追蹤程式庫傳回的錯誤和狀態碼
<a name="producer-sdk-errors-trace"></a>

下表包含程式`Trace`庫中方法傳回的錯誤和狀態資訊。


****  

| 代碼 | 訊息 | 
| --- | --- | 
| 0x10100001 | STATUS\_MIN\_PROFILER\_BUFFER  | 

### Utils 程式庫傳回的錯誤和狀態碼
<a name="producer-sdk-errors-utils"></a>

下表包含程式`Utils`庫中方法傳回的錯誤和狀態資訊。


****  

| 代碼 | 訊息 | 
| --- | --- | 
| 0x40000001 | STATUS\_INVALID\_BASE64\_ENCODE  | 
| 0x40000002 | STATUS\_INVALID\_BASE  | 
| 0x40000003 | STATUS\_INVALID\_DIGIT  | 
| 0x40000004 | STATUS\_INT\_OVERFLOW  | 
| 0x40000005 | STATUS\_EMPTY\_STRING  | 
| 0x40000006 | STATUS\_DIRECTORY\_OPEN\_FAILED  | 
| 0x40000007 | STATUS\_PATH\_TOO\_LONG  | 
| 0x40000008 | STATUS\_UNKNOWN\_DIR\_ENTRY\_TYPE  | 
| 0x40000009 | STATUS\_REMOVE\_DIRECTORY\_FAILED  | 
| 0x4000000a | STATUS\_REMOVE\_FILE\_FAILED  | 
| 0x4000000b | STATUS\_REMOVE\_LINK\_FAILED  | 
| 0x4000000c | STATUS\_DIRECTORY\_ACCESS\_DENIED  | 
| 0x4000000d | STATUS\_DIRECTORY\_MISSING\_PATH  | 
| 0x4000000e | STATUS\_DIRECTORY\_ENTRY\_STAT\_ERROR  | 
| 0x4000000f | STATUS\_STRFTIME\_FALIED | 
| 0x40000010 | STATUS\_MAX\_TIMESTAMP\_FORMAT\_STR\_LEN\_EXCEEDED | 
| 0x40000011 | STATUS\_UTIL\_MAX\_TAG\_COUNT | 
| 0x40000012 | STATUS\_UTIL\_INVALID\_TAG\_VERSION | 
| 0x40000013 | STATUS\_UTIL\_TAGS\_COUNT\_NON\_ZERO\_TAGS\_NULL | 
| 0x40000014 | STATUS\_UTIL\_INVALID\_TAG\_NAME\_LEN | 
| 0x40000015 | STATUS\_UTIL\_INVALID\_TAG\_VALUE\_LEN | 
| 0x4000002a | STATUS\_EXPONENTIAL\_BACKOFF\_INVALID\_STATE | 
| 0x4000002b | STATUS\_EXPONENTIAL\_BACKOFF\_RETRIES\_EXHAUSTED | 
| 0x4000002c | STATUS\_THREADPOOL\_MAX\_COUNT | 
| 0x4000002d | STATUS\_THREADPOOL\_INTERNAL\_ERROR | 
| 0x40100001 | STATUS\_HASH\_KEY\_NOT\_PRESENT | 
| 0x40100002 | STATUS\_HASH\_KEY\_ALREADY\_PRESENT | 
| 0x40100003 | STATUS\_HASH\_ENTRY\_ITERATION\_ABORT | 
| 0x41000001 | STATUS\_BIT\_READER\_OUT\_OF\_RANGE | 
| 0x41000002 | STATUS\_BIT\_READER\_INVALID\_SIZE | 
| 0x41100001 | STATUS\_TIMER\_QUEUE\_STOP\_SCHEDULING | 
| 0x41100002 | STATUS\_INVALID\_TIMER\_COUNT\_VALUE | 
| 0x41100003 | STATUS\_INVALID\_TIMER\_PERIOD\_VALUE | 
| 0x41100004 | STATUS\_MAX\_TIMER\_COUNT\_REACHED | 
| 0x41100005 | STATUS\_TIMER\_QUEUE\_SHUTDOWN | 
| 0x41200001 | STATUS\_SEMAPHORE\_OPERATION\_AFTER\_SHUTDOWN | 
| 0x41200002 | STATUS\_SEMAPHORE\_ACQUIRE\_WHEN\_LOCKED | 
| 0x41300001 | STATUS\_FILE\_LOGGER\_INDEX\_FILE\_INVALID\_SIZE | 

### 檢視程式庫傳回的錯誤和狀態碼
<a name="producer-sdk-errors-view"></a>

下表包含程式`View`庫中方法傳回的錯誤和狀態資訊。


****  

| 代碼 | 訊息 | Description | 
| --- | --- | --- | 
| 0x30000001  | STATUS\_MIN\_CONTENT\_VIEW\_ITEMS  | 指定的內容視圖項目數無效。如需詳細資訊，請參閱[生產者開發套件配額](limits.md#producer-sdk-limits)。 | 
| 0x30000002  | STATUS\_INVALID\_CONTENT\_VIEW\_DURATION  | 指定的內容視圖持續時間無效。如需詳細資訊，請參閱[生產者開發套件配額](limits.md#producer-sdk-limits)。 | 
| 0x30000003  | STATUS\_CONTENT\_VIEW\_NO\_MORE\_ITEMS  | 嘗試獲取的位置超過標題。 | 
| 0x30000004  | STATUS\_CONTENT\_VIEW\_INVALID\_INDEX  | 指定的索引無效。 | 
| 0x30000005  | STATUS\_CONTENT\_VIEW\_INVALID\_TIMESTAMP  | 具有無效的時間戳記，或者時間戳記發生重疊。影格解碼時間戳記應大於或等於前一個影格時間戳記，加上前一個影格持續時間：`DTS(n) >= DTS(n-1) \+ Duration(n-1)`。此錯誤通常會指出「不穩定」的編碼器。編碼器會產生一組突發編碼影格，並且其時間戳記小於影格內的持續時間。或者，串流配置為使用軟體開發套件時間戳記，並且發送影格的速度比影格持續時間快。為了說明解決編碼器中的一些「抖動」問題，請在 StreamInfo.StreamCaps 架構中指定較小的影格持續時間。例如，如果串流為 25 FPS，則每個影格的持續時間為 40 毫秒。不過，若要處理編碼器「抖動」，建議您使用該影格持續時間的一半 (20 毫秒）。某些串流要求更精確地控制錯誤檢測時間。 | 
| 0x30000006  | STATUS\_INVALID\_CONTENT\_VIEW\_LENGTH  | 指定的內容視圖項目資料長度無效。 | 

## PutFrame 回呼 - C 生產者程式庫傳回的錯誤和狀態碼
<a name="producer-sdk-errors-putframe-c"></a>

下一節包含 C 生產者程式庫中 `PutFrame`操作的回呼所傳回的錯誤和狀態資訊。


****  

| 代碼 | 訊息 | Description | 建議的動作 | 
| --- | --- | --- | --- | 
| 0x15000001 | STATUS\_STOP\_CALLBACK\_CHAIN | 回呼鏈已停止。 |  | 
| 0x15000002 | STATUS\_MAX\_CALLBACK\_CHAIN | 已達到回呼鏈上限。 |  | 
| 0x15000003 | STATUS\_INVALID\_PLATFORM\_CALLBACKS\_VERSION | 無效的 PlatformCallbacks 架構版本。 | 指定正確的目前架構版本。 | 
| 0x15000004 | STATUS\_INVALID\_PRODUCER\_CALLBACKS\_VERSION | 無效的 ProducerCallbacks 架構版本。 | 指定正確的目前架構版本。 | 
| 0x15000005 | STATUS\_INVALID\_STREAM\_CALLBACKS\_VERSION | 無效的 StreamCallbacks 架構版本。 | 指定正確的目前架構版本。 | 
| 0x15000006 | STATUS\_INVALID\_AUTH\_CALLBACKS\_VERSION | 無效的 AuthCallbacks 架構版本。 | 指定正確的目前架構版本。 | 
| 0x15000007 | STATUS\_INVALID\_API\_CALLBACKS\_VERSION | 無效的 ApiCallbacks 架構版本。 | 指定正確的目前架構版本。 | 
| 0x15000008 | STATUS\_INVALID\_AWS\_CREDENTIALS\_VERSION | 無效的 AwsCredentials 架構版本。 | 指定正確的目前架構版本。 | 
| 0x15000009 | STATUS\_MAX\_REQUEST\_HEADER\_COUNT | 已達到的請求標頭計數上限。 |  | 
| 0x1500000a | STATUS\_MAX\_REQUEST\_HEADER\_NAME\_LEN | 已達到請求標頭名稱長度上限。 |  | 
| 0x1500000b | STATUS\_MAX\_REQUEST\_HEADER\_VALUE\_LEN | 已達到請求標頭值長度上限。 |  | 
| 0x1500000c | STATUS\_INVALID\_API\_CALL\_RETURN\_JSON | 針對 API 呼叫傳回無效的 JSON。 |  | 
| 0x1500000d | STATUS\_CURL\_INIT\_FAILED | Curl 初始化失敗。 |  | 
| 0x1500000e | STATUS\_CURL\_LIBRARY\_INIT\_FAILED | Curl lib 初始化失敗。 |  | 
| 0x1500000f | STATUS\_INVALID\_DESCRIBE\_STREAM\_RETURN\_JSON | 針對 DescribeStream 傳回無效的 JSON。 |  | 
| 0x15000010 | STATUS\_HMAC\_GENERATION\_ERROR | HMAC 產生錯誤。 |  | 
| 0x15000011 | STATUS\_IOT\_FAILED | IoT 授權失敗。 |  | 
| 0x15000012 | STATUS\_MAX\_ROLE\_ALIAS\_LEN\_EXCEEDED | 已達到角色別名長度上限。 | 指定較短的別名長度。 | 
| 0x15000013 | STATUS\_MAX\_USER\_AGENT\_NAME\_POSTFIX\_LEN\_EXCEEDED | 已達到代理程式名稱後置長度上限。 |  | 
| 0x15000014 | STATUS\_MAX\_CUSTOM\_USER\_AGENT\_LEN\_EXCEEDED | 已達到客戶使用者代理程式長度上限。 |  | 
| 0x15000015 | STATUS\_INVALID\_USER\_AGENT\_LENGTH | 無效的使用者代理程式長度。 |  | 
| 0x15000016 | STATUS\_INVALID\_ENDPOINT\_CACHING\_PERIOD | 無效的端點快取期間。 | 指定少於 24 小時的快取期間。 | 
| 0x15000017 | STATUS\_IOT\_EXPIRATION\_OCCURS\_IN\_PAST | IoT 過期時間戳記發生在過去。 |  | 
| 0x15000018 | STATUS\_IOT\_EXPIRATION\_PARSING\_FAILED | IoT 過期剖析失敗。 |  | 
| 0x15000019 | STATUS\_DUPLICATE\_PRODUCER\_CALLBACK\_FREE\_FUNC |  |  | 
| 0x1500001a | STATUS\_DUPLICATE\_STREAM\_CALLBACK\_FREE\_FUNC |  |  | 
| 0x1500001b | STATUS\_DUPLICATE\_AUTH\_CALLBACK\_FREE\_FUNC |  |  | 
| 0x1500001c | STATUS\_DUPLICATE\_API\_CALLBACK\_FREE\_FUNC |  |  | 
| 0x1500001d | STATUS\_FILE\_LOGGER\_INDEX\_FILE\_TOO\_LARGE |  |  | 
| 0x1500001e | STATUS\_MAX\_IOT\_THING\_NAME\_LENGTH |  |  | 
| 0x1500001f | STATUS\_IOT\_CREATE\_LWS\_CONTEXT\_FAILED |  |  | 
| 0x15000020 | STATUS\_INVALID\_CA\_CERT\_PATH |  |  | 
| 0x15000022 | STATUS\_FILE\_CREDENTIAL\_PROVIDER\_OPEN\_FILE\_FAILED |  |  | 
| 0x15000023 | STATUS\_FILE\_CREDENTIAL\_PROVIDER\_INVALID\_FILE\_LENGTH |  |  | 
| 0x15000024 | STATUS\_FILE\_CREDENTIAL\_PROVIDER\_INVALID\_FILE\_FORMAT |  |  | 
| 0x15000026 | STATUS\_STREAM\_BEING\_SHUTDOWN |  |  | 
| 0x15000027 | STATUS\_CLIENT\_BEING\_SHUTDOWN |  |  | 
| 0x15000028 | STATUS\_CONTINUOUS\_RETRY\_RESET\_FAILED |  |  | 
| 0x16000001 | STATUS\_CURL\_PERFORM\_FAILED | CURL 傳回非成功代碼。 | 檢閱日誌以取得其他資訊。常見的 CURL 錯誤是「無法解析主機名稱」，請檢查裝置的網際網路連線。<br />另一個常見的錯誤是 403 錯誤代碼。這表示未正確建立或指定 IoT 憑證。檢查 IoT 憑證和許可的檔案路徑是否已正確設定。如需詳細資訊，請參閱[使用 控制對 Kinesis Video Streams 資源的存取 AWS IoT](how-iot.md)。 | 
| 0x16000002 | STATUS\_IOT\_INVALID\_RESPONSE\_LENGTH | 擷取 IoT 登入資料時收到 0 長度的回應。 | 檢閱 AWS 運作狀態儀表板，稍後再試一次。 | 
| 0x16000003 | STATUS\_IOT\_NULL\_AWS\_CREDS | 從 IoT 登入資料端點傳回的 JSON 不包含登入資料物件。 | 如需其他資訊，請參閱 JSON 中的「訊息」項目。 | 
| 0x16000004 | STATUS\_IOT\_INVALID\_URI\_LEN | 傳入擷取 IoT 登入資料函數的 URL 長度不介於 1 到 10，000 之間。 | 檢閱傳遞至此函數的 URL。 | 
| 0x16000005 | STATUS\_TIMESTAMP\_STRING\_UNRECOGNIZED\_FORMAT | JSON 中從擷取 IoT 登入資料的「過期」項目的格式不是：`YYYY-MM-DDTHH:mm:SSZ`。 | 檢閱 AWS 運作狀態儀表板，稍後再試一次。 | 