AliyunPlayer v7.10.0
Aliyun Player API Reference Manual for iOS Platforms
Loading...
Searching...
No Matches
AliPlayerGlobalSettings Class Reference

#include "AliPlayerGlobalSettings.h"

Inheritance diagram for AliPlayerGlobalSettings:

Public Types

typedef NSString *(* AdaptiveDecoderGetBackupURLCallback) (AVPBizScene oriBizType, AVPCodecType oriCodecType, NSString *oriURL)
 自适应解码降级时获取后备 URL 的回调函数类型。
typedef NSString *(* CaheUrlHashCallback) (NSString *url)
 该回调用于为每个媒体 URL 生成唯一标识符,用于缓存索引。
typedef BOOL(* NetworkDataProcessCallback) (NSString *requestUrl, const uint8_t *inData, const int64_t inOutSize, uint8_t *outData)
 媒体数据从网络下来后有机会回调出去,可对原始数据进行处理,目前只支持mp4

Class Methods

(void) + clearCaches
 清除所有本地缓存文件。
(void) + disableCrashUpload:
 设置是否禁用播放器崩溃堆栈上传。
(void) + enableAdaptiveIpDegrade:
 设置是否开启自适应 IP 降级机制,默认开启。
(void) + enableBufferToLocalCache:
 是否开启缓冲区溢出到本地缓存的功能。
(void) + enableCodecPlugin:valid:
 开启或关闭指定的解码插件。
(void) + enableEnhancedHttpDns:
 是否开启增强型 HTTP DNS 功能。默认开启。
(void) + enableEnhancedNetworkBalance:
 是否启用内建多播放器实例间的增强版网络负载均衡策略。
(void) + enableHttpDns:
 是否开启标准 HTTP DNS 功能。
(void) + enableHWAduioTempo:
 设置是否启用硬件提供的音频变速播放能力。
(NSString *) + enableLocalCache:
 开启或关闭本地缓存功能。
(void) + enableLocalCache:maxBufferMemoryKB:localCacheDir:
 开启或关闭本地缓存功能,并指定缓存目录。
(void) + enableNetworkBalance:
 是否开启内建的网络平衡策略。
(void) + forceAudioRendingFormat:fmt:channels:sample_rate:
 强制音频渲染器使用指定的 PCM 格式进行渲染。
(void) + setAdaptiveDecoderGetBackupURLCallback:
 设置取BackupUrl回调。
(void) + setCacheFileClearConfig:maxCapacityMB:freeStorageMB:
 本地缓存文件自动清理相关的设置
(void) + setCacheUrlHashCallback:
 设置加载 URL 的hash值回调。
(void) + setDNSResolve:ip:
 设置域名对应的解析 IP。
(void) + setFairPlayCertID:
 设置 FairPlay 用户证书 ID。
(void) + setIpResolveType:
 设置域名解析时使用的 IP 地址类型。
(void) + setNetworkDataProcessCallback:
 设置网络数据回调。
(void) + setOption:value:
 设置字符串类型的全局功能选项。
(void) + setOption:valueInt:
 设置整型类型的全局功能选项。
(void) + setUseHttp2:
 设置是否启用 HTTP/2 协议。

Member Typedef Documentation

◆ AdaptiveDecoderGetBackupURLCallback

- (typedef NSString *(* AdaptiveDecoderGetBackupURLCallback) (AVPBizScene oriBizType, AVPCodecType oriCodecType, NSString *oriURL))

自适应解码降级时获取后备 URL 的回调函数类型。

当因解码异常触发降级时,SDK 将调用此回调获取替代播放地址。

Parameters
oriBizType触发降级的业务场景,由 AVPBizScene 枚举定义
oriCodecType触发降级的原始编解码类型,由 AVPCodecType 枚举定义
oriURL原始播放 URL
Returns
后备播放 URL;若返回 nil 或空字符串,则不进行 URL 切换

◆ CaheUrlHashCallback

- (typedef NSString *(* CaheUrlHashCallback) (NSString *url))

该回调用于为每个媒体 URL 生成唯一标识符,用于缓存索引。

必须保证不同 URL 返回不同的哈希值。

Parameters
url媒体资源的 URL
Returns
该 URL 对应的唯一哈希字符串

◆ NetworkDataProcessCallback

- (typedef BOOL(* NetworkDataProcessCallback) (NSString *requestUrl, const uint8_t *inData, const int64_t inOutSize, uint8_t *outData))

媒体数据从网络下来后有机会回调出去,可对原始数据进行处理,目前只支持mp4

Parameters
requestUrl数据归属的URL
inData输入数据buffer
inOutSize输入输出数据buffer大小,单位字节
outData输出数据buffer,处理后的数据可写入这里,大小必须与inOutSize一样,其内存由sdk内部申请,无需管理内存
Returns
是否处理过了。如果处理了返回YES,sdk会以outData中的数据做后续处理,否则返回NO,继续使用原始数据

Method Documentation

◆ clearCaches

+ (void) clearCaches

清除所有本地缓存文件。

该操作会删除所有由播放器生成的缓存内容,包括媒体缓存和元数据。

◆ disableCrashUpload:

+ (void) disableCrashUpload: (BOOL) disable

设置是否禁用播放器崩溃堆栈上传。

启用后,播放器在发生崩溃时将不会上传堆栈信息。

Parameters
disabletrue 表示禁用崩溃上传,false 表示启用(默认)

◆ enableAdaptiveIpDegrade:

+ (void) enableAdaptiveIpDegrade: (BOOL) enable

设置是否开启自适应 IP 降级机制,默认开启。

启用该功能后,SDK 可以根据网络状况或服务器响应,自动采用不同的 IP 策略以提升播放稳定性。 请确保播放域名在alicdn平台添加并配置对应功能,确保可提供线上服务。配置方法请参考:https://www.alibabacloud.com/product/content-delivery-network

Parameters
enabletrue 开启自适应 IP 降级,false 关闭此功能

◆ enableBufferToLocalCache:

+ (void) enableBufferToLocalCache: (BOOL) enable

是否开启缓冲区溢出到本地缓存的功能。

启用后,当 maxBufferDuration 设置大于 50 秒时,超出 50 秒的部分将被缓存到本地。

默认关闭。

Parameters
enable是否启用缓冲区溢出缓存

◆ enableCodecPlugin:valid:

+ (void) enableCodecPlugin: (NSString *) target
valid: (BOOL) valid 

开启或关闭指定的解码插件。

Parameters
target解码插件标识符;若为空字符串,则忽略此调用
validtrue 表示开启插件,false 表示关闭插件

◆ enableEnhancedHttpDns:

+ (void) enableEnhancedHttpDns: (BOOL) enable

是否开启增强型 HTTP DNS 功能。默认开启。

开启后需注意以下事项:

  • 该功能与标准 HTTP DNS 互斥;若同时开启,后开启者生效
  • 需要有效的高级 HTTP DNS License,否则功能不生效
  • 确保播放域名已在阿里云 CDN 平台配置并启用对应功能,确保可提供线上服务。配置方法请参考:https://www.alibabacloud.com/product/content-delivery-network
Parameters
enable是否启用增强型 HTTP DNS

◆ enableEnhancedNetworkBalance:

+ (void) enableEnhancedNetworkBalance: (BOOL) enable

是否启用内建多播放器实例间的增强版网络负载均衡策略。

启用后,播放过程中会自动在多个播放器实例间分配网络负载。默认开启。

注意

Parameters
enable是否启用增强版网络平衡策略
See also
+enableNetworkBalance:

◆ enableHttpDns:

+ (void) enableHttpDns: (BOOL) enable

是否开启标准 HTTP DNS 功能。

已弃用:此 API 已移除,SDK 默认启用增强型 HTTP DNS。

无需调用此方法。

Parameters
enable是否启用 HTTP DNS(此参数已无实际作用)
Deprecated
此功能已移除,请勿使用

◆ enableHWAduioTempo:

+ (void) enableHWAduioTempo: (bool) enable

设置是否启用硬件提供的音频变速播放能力。

关闭后将使用软件实现音频倍速播放。

此设置会影响音频渲染回调(PCM 回调)的数据格式。

若需修改此设置,必须在**同一线程**中操作。

默认启用。

Parameters
enable是否启用硬件音频变速

◆ enableLocalCache:

+ (NSString *) enableLocalCache: (BOOL) enable

开启或关闭本地缓存功能。

开启后,媒体内容将被缓存到本地文件中。

默认关闭。

Parameters
enabletrue 表示开启本地缓存,false 表示关闭
Returns
本地缓存的根目录路径

◆ enableLocalCache:maxBufferMemoryKB:localCacheDir:

+ (void) enableLocalCache: (bool) enable
maxBufferMemoryKB: (int) maxBufferMemoryKB
localCacheDir: (NSString *) localCacheDir 

开启或关闭本地缓存功能,并指定缓存目录。

开启后,媒体内容将被缓存到指定的本地目录中。

注意:参数 maxBufferMemoryKB 已弃用,设置无效。

默认关闭。

Parameters
enabletrue 表示开启本地缓存,false 表示关闭
maxBufferMemoryKB此参数已弃用,设置无效
localCacheDir本地缓存的绝对路径目录

◆ enableNetworkBalance:

+ (void) enableNetworkBalance: (BOOL) enable

是否开启内建的网络平衡策略。

启用后,播放器将在播放过程中自动控制预加载器(参考 AliMediaLoader)的运行时机,以优化网络资源使用。

默认开启。

Parameters
enable是否启用网络平衡策略
See also
AliMediaLoader

◆ forceAudioRendingFormat:fmt:channels:sample_rate:

+ (void) forceAudioRendingFormat: (bool) force
fmt: (NSString *) fmt
channels: (int) channels
sample_rate: (int) sample_rate 

强制音频渲染器使用指定的 PCM 格式进行渲染。

若设备不支持指定格式,则设置无效,将使用默认格式。

无效参数(如超出范围的声道数或采样率)将被忽略。

此设置会影响音频渲染回调(PCM 回调)的数据格式。

若需修改此设置,必须在**同一线程**中操作。

默认关闭。

Parameters
force是否启用强制格式设置
fmtPCM 格式,当前仅支持 s16(16 位有符号整数)
channelsPCM 声道数,有效范围为 1~8
sample_ratePCM 采样率,有效范围为 1~48000 Hz

◆ setAdaptiveDecoderGetBackupURLCallback:

+ (void) setAdaptiveDecoderGetBackupURLCallback: (AdaptiveDecoderGetBackupURLCallback) callback

设置取BackupUrl回调。

Parameters
callback获取后备 URL 的回调;

◆ setCacheFileClearConfig:maxCapacityMB:freeStorageMB:

+ (void) setCacheFileClearConfig: (int64_t) expireMin
maxCapacityMB: (int64_t) maxCapacityMB
freeStorageMB: (int64_t) freeStorageMB 

本地缓存文件自动清理相关的设置

Parameters
expireMin缓存多久过期:单位分钟,默认值30天,过期的缓存不管容量如何,都会在清理时淘汰掉;
maxCapacityMB最大缓存容量:单位兆,默认值2GB,在清理时,如果缓存总大小超过此大小,会以cacheItem为粒度,按缓存的最后时间排序,一个一个淘汰掉一些缓存,直到小于等于最大缓存容量;推荐短视频业务设置最大缓存容量为500MB;
freeStorageMB磁盘最小空余容量:单位兆,默认值1GB,在清理时,同最大缓存容量,如果当前磁盘容量小于该值,也会按规则一个一个淘汰掉一些缓存,直到freeStorage大于等于该值或者所有缓存都被干掉;

◆ setCacheUrlHashCallback:

+ (void) setCacheUrlHashCallback: (CaheUrlHashCallback) callback

设置加载 URL 的hash值回调。

若未设置,SDK 将使用内置的 MD5 算法生成哈希值。

Parameters
callback自定义哈希生成回调;设为 nil 则恢复使用 MD5

◆ setDNSResolve:ip:

+ (void) setDNSResolve: (NSString *) host
ip: (NSString *) ip 

设置域名对应的解析 IP。

该方法用于自定义 DNS 解析,将指定域名(含端口)映射到固定 IP 地址。

设置空字符串可清除已有设定。

Parameters
host域名,需指定端口(HTTP 默认端口 80,HTTPS 默认端口 443),例如:player.alicdn.com:443
ip对应的 IP 地址;设置为空字符串可清空该域名的解析设定

◆ setFairPlayCertID:

+ (void) setFairPlayCertID: (NSString *) certID

设置 FairPlay 用户证书 ID。

每次调用此方法更新证书 ID 时,每次设置必须在同一个线程,否则更新无效。

Parameters
certID用户证书 ID 字符串

◆ setIpResolveType:

+ (void) setIpResolveType: (AVPIpResolveType) type

设置域名解析时使用的 IP 地址类型。

控制 DNS 解析时优先使用的 IP 协议版本。

Parameters
typeIP 地址类型,由 AVPIpResolveType 枚举定义

◆ setNetworkDataProcessCallback:

+ (void) setNetworkDataProcessCallback: (NetworkDataProcessCallback) callback

设置网络数据回调。

◆ setOption:value:

+ (void) setOption: (GlobalOption) key
value: (NSString *) value 

设置字符串类型的全局功能选项。

该方法用于配置影响所有播放器实例的底层行为参数。

注意:部分选项(如 MAX_ERROR_FRAMES_HARDWARE_DECODE) 在此重载中被忽略,应使用整型重载方法设置。

Parameters
key选项 key,由 SDK 定义的整型常量,参考 GlobalOption
value选项对应的字符串值
See also
+setOption:valueInt:

◆ setOption:valueInt:

+ (void) setOption: (GlobalOption) key
valueInt: (int) value 

设置整型类型的全局功能选项。

该方法用于配置影响所有播放器实例的底层行为参数。

Parameters
key选项 key,由 SDK 定义的整型常量,参考 GlobalOption
valueInt选项对应的整型值
See also
+setOption:value:

◆ setUseHttp2:

+ (void) setUseHttp2: (bool) use

设置是否启用 HTTP/2 协议。

自 SDK 版本 v5.5.0.0 起默认启用。

Parameters
use是否启用 HTTP/2

The documentation for this class was generated from the following file: