本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
使用 C++ 生產者程式庫
您可以使用 Amazon Kinesis Video Streams 提供的 C++ 生產者程式庫來撰寫應用程式程式碼,將媒體資料從裝置傳送至 Kinesis 影片串流。
物件模型
C++ 程式庫提供下列物件來管理將資料傳送至 Kinesis 影片串流:
-
KinesisVideoProducer:包含媒體來源和 AWS 登入資料的相關資訊,並維護回呼以報告 Kinesis Video Streams 事件。
-
KinesisVideoStream:代表 Kinesis 影片串流。包含影片串流參數的相關資訊,例如名稱、資料保留期間和媒體內容類型。
將媒體放入串流
您可以使用 C++ 程式庫提供的方法 (例如 PutFrame
) 將資料放入KinesisVideoStream
物件。然後程式庫會管理資料的內部狀態,包括以下任務:
-
執行身分驗證。
-
查看網路延遲。如果延遲太高,程式庫可能選擇減少影格數。
-
追蹤進行中串流的狀態。
回呼介面
此層公開一組回呼界面,使其能與應用程式層溝通。這些回呼界面包含以下項目:
-
服務回呼界面 (
CallbackProvider
):程式庫會在建立串流、取得串流描述,以及刪除串流時,叫用透過此界面取得的事件。 -
用戶端就緒狀態或低儲存事件界面 (
ClientCallbackProvider
):當用戶端就緒時,或偵測到可能耗盡可用儲存體或記憶體時,程式庫會叫用此界面上的事件。 -
串流事件回呼界面 (
StreamCallbackProvider
):當串流事件發生時,程式庫會叫用此界面上的事件,例如進入就緒狀態的串流、捨棄影格或串流錯誤。
Kinesis Video Streams 提供這些介面的預設實作。您也可以提供自己的自訂實作,例如,如果您需要自訂聯網邏輯,或想要向使用者介面公開低儲存條件。
如需生產者程式庫中回呼的詳細資訊,請參閱生產者回SDK呼。
程序:使用 C++ 生產者 SDK
此程序示範如何在 C++ 應用程式中使用 Kinesis Video Streams 用戶端和媒體來源,將資料傳送至 Kinesis 影片串流。
此程序包含以下步驟: