全部產品
Search
文件中心

ApsaraVideo VOD:快速開始

更新時間:Aug 20, 2025

本文介紹如何用iOS播放器SDK快速實現視頻起播。

前提條件

已完成iOS播放器的SDK整合

開源樣本工程

詳細程式碼範例可參考API-Example視頻播放示範、播放控制(BasicPlayback)模組,該工程是基於Objective-C的阿里雲播放器SDK iOS樣本工程,能夠協助開發人員快速掌握SDK核心功能整合。

操作步驟

步驟一:建立播放器

建立AliPlayer播放器。

// 建立播放器執行個體
AliPlayer mAliPlayer = [[AliPlayer alloc] init];

// 建立用於承載播放畫面的視圖容器,並設定播放器渲染視圖
UIView playerView = [[UIView alloc] initWithFrame:self.view.bounds];
[self.view addSubview:playerView];
mAliPlayer.playerView = playerView;

[mAliPlayer setTraceID:traceId];
說明

播放器提供的播放品質監控(可查看播放器整體播放品質相關資料)、單點追查(可定位到具體的使用者或裝置,分析其播允許存取為,快速定位播放異常等問題)及視頻播放統計功能都依賴埋點日誌上報功能而實現。

在建立播放器時,根據setTraceID參數的設定不同,其後續可實現的功能不同,具體如下:

  • setTraceID參數不傳(預設):埋點日誌上報功能開啟,後續可以使用播放品質監控和視頻播放統計功能,無法使用單點追查功能。

  • setTraceID參數傳入traceid:traceid的值由您自行定義,需為您的使用者或使用者裝置的唯一識別碼,例如傳入您業務的userid或者IMEI、IDFA等您業務使用者的裝置ID。傳入traceid後,埋點日誌上報功能開啟,後續可以使用播放品質監控、單點追查和視頻播放統計功能。

  • setTraceID參數設定為DisableAnalytics:關閉埋點日誌上報,後續無法使用播放品質監控、單點追查和視頻播放統計功能。

步驟二:設定播放源

VidAuth播放(推薦)

AVPVidAuthSource *authSource = [[AVPVidAuthSource alloc] init];
authSource.vid = @"Vid資訊"; // 必選參數,視頻ID(VideoId)。
authSource.playAuth = @"<yourPlayAuth>"; // 必選參數,播放憑證,需要調用點播服務的GetVideoPlayAuth介面產生。
authSource.region = @"接入地區"; // 5.5.5.0及之後版本播放器SDK,本參數已棄用,無需設定region,播放器會自動解析region;5.5.5.0之前版本播放器SDK,本參數必選,點播服務的接入地區,預設為cn-shanghai。
// authSource.authTimeout = 3600; // 播放地址的有效時間長度,單位:秒。該時間長度會覆蓋在ApsaraVideo for VOD控制台設定的URL鑒權的有效時間長度。如果不傳,則取預設值3600。如需設定此參數,請確保該時間大於視頻的實際時間長度,防止播放地址在播放完成前到期。

// 設定播放源
[mAliPlayer setAuthSource:authSource];

VidSts播放

AVPVidStsSource *source = [[AVPVidStsSource alloc] init];
source.vid = @"Vid資訊"; // 必選參數,視頻ID(VideoId)。
source.region = @"接入地區"; // 必選參數,點播服務的接入地區,預設為cn-shanghai。
source.securityToken = @"<yourSecurityToken>"; // 必選參數,STS安全性權杖,需要調用STS服務的AssumeRole介面產生。
source.accessKeySecret = @"<yourAccessKeySecret>"; // 必選參數,STS臨時AK對的存取金鑰,需要調用STS服務的AssumeRole介面產生。
source.accessKeyId = @"<yourAccessKeyId>"; // 必選參數,STS臨時AK對的存取金鑰ID,需要調用STS服務的AssumeRole介面產生。
// source.authTimeout = 3600; // 播放地址的有效時間長度,單位:秒。該時間長度會覆蓋在ApsaraVideo for VOD控制台設定的URL鑒權的有效時間長度。如果不傳,則取預設值3600。如需設定此參數,請確保該時間大於視頻的實際時間長度,防止播放地址在播放完成前到期。
//若您在VOD控制台開啟了HLS標準加密參數透傳,且預設的參數名為MtsHlsUriToken,那麼需要設定config,並將其傳入vid中,參考下述

// 設定播放源
[mAliPlayer setStsSource:source]

UrlSource播放

// 建立播放來源物件並設定播放地址
// 播放地址,可以是第三方點播地址,或阿里雲ApsaraVideo for VOD服務中的播放地址,也可以是本地視頻地址。
AVPUrlSource *urlSource = [[AVPUrlSource alloc] urlWithString:@"播放地址"];
[mAliPlayer setUrlSource:urlSource];
說明

更多設定播放源方法,請參見基礎功能

步驟三:開始播放

// 準備播放
[mAliPlayer prepare];
// prepare 以後可以同步調用 start 操作,onPrepared 回調完成後會自動起播
[mAliPlayer start];

步驟四:結束播放

// 停止播放
[mAliPlayer stop];
// 同步釋放,內部會自動調用stop介面
[mAliPlayer destroy];
// 清Null 參考,避免記憶體流失
mAliPlayer = nil;

相關文檔

有關更多播放器基礎功能(如播放控制、事件監聽等),請參見基礎功能