![]() |
AliyunPlayer v7.10.0
Aliyun Player API Reference Manual for iOS Platforms
|
#include "AliPlayerGlobalSettings.h"
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 协议。 | |
| - (typedef NSString *(* AdaptiveDecoderGetBackupURLCallback) (AVPBizScene oriBizType, AVPCodecType oriCodecType, NSString *oriURL)) |
自适应解码降级时获取后备 URL 的回调函数类型。
当因解码异常触发降级时,SDK 将调用此回调获取替代播放地址。
| oriBizType | 触发降级的业务场景,由 AVPBizScene 枚举定义 |
| oriCodecType | 触发降级的原始编解码类型,由 AVPCodecType 枚举定义 |
| oriURL | 原始播放 URL |
| - (typedef NSString *(* CaheUrlHashCallback) (NSString *url)) |
该回调用于为每个媒体 URL 生成唯一标识符,用于缓存索引。
必须保证不同 URL 返回不同的哈希值。
| url | 媒体资源的 URL |
| - (typedef BOOL(* NetworkDataProcessCallback) (NSString *requestUrl, const uint8_t *inData, const int64_t inOutSize, uint8_t *outData)) |
媒体数据从网络下来后有机会回调出去,可对原始数据进行处理,目前只支持mp4
| requestUrl | 数据归属的URL |
| inData | 输入数据buffer |
| inOutSize | 输入输出数据buffer大小,单位字节 |
| outData | 输出数据buffer,处理后的数据可写入这里,大小必须与inOutSize一样,其内存由sdk内部申请,无需管理内存 |
| + (void) clearCaches |
清除所有本地缓存文件。
该操作会删除所有由播放器生成的缓存内容,包括媒体缓存和元数据。
| + (void) disableCrashUpload: | (BOOL) | disable |
设置是否禁用播放器崩溃堆栈上传。
启用后,播放器在发生崩溃时将不会上传堆栈信息。
| disable | true 表示禁用崩溃上传,false 表示启用(默认) |
| + (void) enableAdaptiveIpDegrade: | (BOOL) | enable |
设置是否开启自适应 IP 降级机制,默认开启。
启用该功能后,SDK 可以根据网络状况或服务器响应,自动采用不同的 IP 策略以提升播放稳定性。 请确保播放域名在alicdn平台添加并配置对应功能,确保可提供线上服务。配置方法请参考:https://www.alibabacloud.com/product/content-delivery-network
| enable | true 开启自适应 IP 降级,false 关闭此功能 |
| + (void) enableBufferToLocalCache: | (BOOL) | enable |
是否开启缓冲区溢出到本地缓存的功能。
启用后,当 maxBufferDuration 设置大于 50 秒时,超出 50 秒的部分将被缓存到本地。
默认关闭。
| enable | 是否启用缓冲区溢出缓存 |
| + (void) enableCodecPlugin: | (NSString *) | target | |
| valid: | (BOOL) | valid |
开启或关闭指定的解码插件。
| target | 解码插件标识符;若为空字符串,则忽略此调用 |
| valid | true 表示开启插件,false 表示关闭插件 |
| + (void) enableEnhancedHttpDns: | (BOOL) | enable |
是否开启增强型 HTTP DNS 功能。默认开启。
开启后需注意以下事项:
| enable | 是否启用增强型 HTTP DNS |
| + (void) enableEnhancedNetworkBalance: | (BOOL) | enable |
是否启用内建多播放器实例间的增强版网络负载均衡策略。
启用后,播放过程中会自动在多个播放器实例间分配网络负载。默认开启。
注意:
+enableNetworkBalance: 的影响,如果 enableNetworkBalance 被关闭,则本策略也会被关闭。 +enableNetworkBalance: 的功能状态。 | enable | 是否启用增强版网络平衡策略 |
| + (void) enableHttpDns: | (BOOL) | enable |
是否开启标准 HTTP DNS 功能。
已弃用:此 API 已移除,SDK 默认启用增强型 HTTP DNS。
无需调用此方法。
| enable | 是否启用 HTTP DNS(此参数已无实际作用) |
| + (void) enableHWAduioTempo: | (bool) | enable |
设置是否启用硬件提供的音频变速播放能力。
关闭后将使用软件实现音频倍速播放。
此设置会影响音频渲染回调(PCM 回调)的数据格式。
若需修改此设置,必须在**同一线程**中操作。
默认启用。
| enable | 是否启用硬件音频变速 |
| + (NSString *) enableLocalCache: | (BOOL) | enable |
开启或关闭本地缓存功能。
开启后,媒体内容将被缓存到本地文件中。
默认关闭。
| enable | true 表示开启本地缓存,false 表示关闭 |
| + (void) enableLocalCache: | (bool) | enable | |
| maxBufferMemoryKB: | (int) | maxBufferMemoryKB | |
| localCacheDir: | (NSString *) | localCacheDir |
开启或关闭本地缓存功能,并指定缓存目录。
开启后,媒体内容将被缓存到指定的本地目录中。
注意:参数 maxBufferMemoryKB 已弃用,设置无效。
默认关闭。
| enable | true 表示开启本地缓存,false 表示关闭 |
| maxBufferMemoryKB | 此参数已弃用,设置无效 |
| localCacheDir | 本地缓存的绝对路径目录 |
| + (void) enableNetworkBalance: | (BOOL) | enable |
是否开启内建的网络平衡策略。
启用后,播放器将在播放过程中自动控制预加载器(参考 AliMediaLoader)的运行时机,以优化网络资源使用。
默认开启。
| enable | 是否启用网络平衡策略 |
| + (void) forceAudioRendingFormat: | (bool) | force | |
| fmt: | (NSString *) | fmt | |
| channels: | (int) | channels | |
| sample_rate: | (int) | sample_rate |
强制音频渲染器使用指定的 PCM 格式进行渲染。
若设备不支持指定格式,则设置无效,将使用默认格式。
无效参数(如超出范围的声道数或采样率)将被忽略。
此设置会影响音频渲染回调(PCM 回调)的数据格式。
若需修改此设置,必须在**同一线程**中操作。
默认关闭。
| force | 是否启用强制格式设置 |
| fmt | PCM 格式,当前仅支持 s16(16 位有符号整数) |
| channels | PCM 声道数,有效范围为 1~8 |
| sample_rate | PCM 采样率,有效范围为 1~48000 Hz |
| + (void) setAdaptiveDecoderGetBackupURLCallback: | (AdaptiveDecoderGetBackupURLCallback) | callback |
设置取BackupUrl回调。
| callback | 获取后备 URL 的回调; |
| + (void) setCacheFileClearConfig: | (int64_t) | expireMin | |
| maxCapacityMB: | (int64_t) | maxCapacityMB | |
| freeStorageMB: | (int64_t) | freeStorageMB |
本地缓存文件自动清理相关的设置
| expireMin | 缓存多久过期:单位分钟,默认值30天,过期的缓存不管容量如何,都会在清理时淘汰掉; |
| maxCapacityMB | 最大缓存容量:单位兆,默认值2GB,在清理时,如果缓存总大小超过此大小,会以cacheItem为粒度,按缓存的最后时间排序,一个一个淘汰掉一些缓存,直到小于等于最大缓存容量;推荐短视频业务设置最大缓存容量为500MB; |
| freeStorageMB | 磁盘最小空余容量:单位兆,默认值1GB,在清理时,同最大缓存容量,如果当前磁盘容量小于该值,也会按规则一个一个淘汰掉一些缓存,直到freeStorage大于等于该值或者所有缓存都被干掉; |
| + (void) setCacheUrlHashCallback: | (CaheUrlHashCallback) | callback |
设置加载 URL 的hash值回调。
若未设置,SDK 将使用内置的 MD5 算法生成哈希值。
| callback | 自定义哈希生成回调;设为 nil 则恢复使用 MD5 |
| + (void) setDNSResolve: | (NSString *) | host | |
| ip: | (NSString *) | ip |
设置域名对应的解析 IP。
该方法用于自定义 DNS 解析,将指定域名(含端口)映射到固定 IP 地址。
设置空字符串可清除已有设定。
| host | 域名,需指定端口(HTTP 默认端口 80,HTTPS 默认端口 443),例如:player.alicdn.com:443 |
| ip | 对应的 IP 地址;设置为空字符串可清空该域名的解析设定 |
| + (void) setFairPlayCertID: | (NSString *) | certID |
设置 FairPlay 用户证书 ID。
每次调用此方法更新证书 ID 时,每次设置必须在同一个线程,否则更新无效。
| certID | 用户证书 ID 字符串 |
| + (void) setIpResolveType: | (AVPIpResolveType) | type |
| + (void) setNetworkDataProcessCallback: | (NetworkDataProcessCallback) | callback |
设置网络数据回调。
| + (void) setOption: | (GlobalOption) | key | |
| value: | (NSString *) | value |
设置字符串类型的全局功能选项。
该方法用于配置影响所有播放器实例的底层行为参数。
注意:部分选项(如 MAX_ERROR_FRAMES_HARDWARE_DECODE) 在此重载中被忽略,应使用整型重载方法设置。
| key | 选项 key,由 SDK 定义的整型常量,参考 GlobalOption |
| value | 选项对应的字符串值 |
| + (void) setOption: | (GlobalOption) | key | |
| valueInt: | (int) | value |
设置整型类型的全局功能选项。
该方法用于配置影响所有播放器实例的底层行为参数。
| key | 选项 key,由 SDK 定义的整型常量,参考 GlobalOption |
| valueInt | 选项对应的整型值 |
| + (void) setUseHttp2: | (bool) | use |
设置是否启用 HTTP/2 协议。
自 SDK 版本 v5.5.0.0 起默认启用。
| use | 是否启用 HTTP/2 |