步驟 4:整合 IVS 廣播 SDK
IVS 提供適用於 Web、Android 和 iOS 的廣播 SDK,並且您可以將其整合至應用程式。廣播 SDK 用於傳送和接收影片。如果已為舞台設定 RTMP 擷取,則可以使用任何可以廣播到 RTMP 端點的編碼器 (例如 OBS 或 ffmpeg)。
在本節中,我們編寫了一個簡單的應用程式,讓兩個或更多參與者可以即時進行互動。下列步驟將引導您建立一個稱為 BasicRealTime 的應用程式。應用程式的完整程式碼位於 CodePen 和 GitHub:
Web
設定檔案
首先,建立資料夾和初始 HTML 和 JS 檔案來設定檔案:
mkdir realtime-web-example cd realtime-web-example touch index.html touch app.js
您可以使用指令碼標籤或 NPM 來安裝廣播 SDK。為了簡單起見,範例使用指令碼標籤,但如果您稍後選擇使用 NPM,修改起來會很容易。
使用指令碼標籤
Web 廣播 SDK 以 JavaScript 程式庫的形式發布 ,可以在 https://web-broadcast.live-video.net/1.21.0/amazon-ivs-web-broadcast.js
透過 <script>
標籤載入時,程式庫會在名為 IVSBroadcastClient
的視窗範圍中公開全域變數。
使用 NPM
安裝 NPM 套件:
npm install amazon-ivs-web-broadcast
您現在可以存取 IVSBroadcastClient 物件:
const { Stage } = IVSBroadcastClient;
Android
建立 Android 專案
-
在 Android Studio 中,建立新專案。
-
選擇空白檢視活動。
注意:在舊版 Android Studio 中,以檢視為基礎的活動被稱為空活動。如果您的 Android Studio 視窗顯示空活動,並確實不顯示空檢視活動,則請選取空活動。否則,請勿選取空活動,因為我們將使用 View API (而不是 Jetpack Compose)。
-
為您的專案命名,然後選取完成。
安裝廣播 SDK
若要將 Amazon IVS Android 廣播程式庫新增到您的 Android 開發環境中,請將該程式庫新增到模組的 build.gradle
檔案,如下所示 (適用於 Amazon IVS 廣播 SDK 的最新版本)。在較新的專案中,mavenCentral
儲存庫可能已包含在您的 settings.gradle
檔案中,如果是這種情況,則您可以省略 repositories
區塊。在我們的範例中,也需要在 android
區塊中啟用資料繫結。
android { dataBinding.enabled true } repositories { mavenCentral() } dependencies { implementation 'com.amazonaws:ivs-broadcast:1.27.0:stages@aar' }
或者,若要手動安裝 SDK,請從此位置下載最新版本:
https://search.maven.org/artifact/com.amazonaws/ivs-broadcast
iOS
建立 iOS 專案
-
建立新的 Xcode 專案。
-
若是平台,請選取 iOS。
-
若是應用程式,請選取应用程式。
-
輸入應用程式的產品名稱,然後選取下一步。
-
選擇 (導覽至) 儲存專案的目錄,然後選取建立。
接著,您需要在 SDK 使用。我們建議您透過 CocoaPods 整合廣播 SDK。(或者,您可以手動將架構新增至您的專案中)。這兩種方法如下所述。
建議:安裝廣播 SDK (CocoaPods)
假設您的專案名稱是 BasicRealTime
,在包含下列內容的專案資料夾中建立 Podfile
,然後執行 pod install
:
target 'BasicRealTime' do # Comment the next line if you don't want to use dynamic frameworks use_frameworks! # Pods for BasicRealTime pod 'AmazonIVSBroadcast/Stages' end
替代方法:手動安裝架構
-
從 https://broadcast.live-video.net/1.27.0/AmazonIVSBroadcast-Stages.xcframework.zip
中下載最新版本。 -
解壓縮封存檔的內容。
AmazonIVSBroadcast.xcframework
包含用於裝置和模擬器的 SDK。 -
內嵌
AmazonIVSBroadcast.xcframework
,方法是將其拖曳至您的應用程式目標的一般索引標籤的架構、程式庫和內嵌內容部分中:
設定許可
您需要更新您的專案 Info.plist
,以新增 NSCameraUsageDescription
和 NSMicrophoneUsageDescription
的兩個項目。針對這些值,請提供解釋應用程式為何要求攝影機和麥克風存取權的面向使用者的說明。
