转场

智能视频SDK VideoCreatingSDK

  • 智能视频SDK开发者个人信息保护合规指引
  • 智能视频SDK隐私政策
  • 功能发布记录
  • 播放器SDK
    • SDK&Demo下载
    • 产品简介与下载
    • ios播放器
      • SDK集成
      • 快速开始
      • 简介
      • 版本更新记录
      • 接口速查
      • 快速进阶
      • 功能列表
      • 高级版功能接入
        • 端上超分功能接入
        • VR功能接入
        • 绿幕抠图功能接入
        • 投屏功能接入
        • 全景声功能接入
        • HDR功能接入
        • 超低延时直播功能接入
    • Unity播放器
      • SDK集成
      • 快速开始
      • 简介
      • 版本更新记录
      • 接口速查
      • 快速进阶
    • uniapp播放器
      • SDK集成
      • 快速开始
      • 简介
      • 版本更新记录
      • 快速进阶
    • HarmonyOS NEXT
      • SDK集成
      • 快速开始
      • 简介
      • 版本更新记录
      • 接口速查
      • 快速进阶
    • Andriod播放器
      • SDK集成
      • 快速开始
      • 简介
      • 版本更新记录
      • 接口速查
      • 快速进阶
      • 高级版功能接入
        • 端上超分功能接入
        • VR功能接入
        • 绿幕抠图功能接入
        • 投屏功能接入
        • 全景声功能接入
        • HDR功能接入
        • 超低延时直播功能接入
    • Web 播放器
      • license指引
      • 简介
      • 使用指南
      • 版本更新记录
      • 开发指南
      • 接口速查
        • 事件响应接口
        • 控制接口
  • 图片加载SDK
    • SDK&Demo下载
    • SDK集成
    • 快速开始
    • 版本更新记录
    • 接口速查
    • 产品简介
    • 快速进阶
  • 短视频SDK
    • 产品描述
      • 名词解释
      • 功能说明
      • 产品简介
      • 核心优势
    • SDK体验
      • 能力限制
      • DEMO体验
      • SDK下载
    • 使用指南
      • License申请
    • 常见问题
      • 内容制作类问题
      • 开发类问题
      • 常见问题总览
      • 常见错误码
    • 购买指南
      • 欠费说明
      • 如何购买
      • 产品定价
    • 开发指南
      • IOS开发说明
        • 录制
        • 编辑
        • 字幕
        • 转场
        • 合成
        • 快速接入
        • IOS版本开发接入文档
      • 视频指导
        • 视频指南
      • Android开发说明
        • 录制
        • Android版本开发接入文档
        • 字幕
        • 转场
        • 合成
        • 快速接入
        • 概述
  • 移动直播SDK
    • 产品描述
      • 名词解释
      • 功能说明
      • 产品简介
      • 核心优势
    • SDK体验
      • demo体验
      • SDK下载
    • 使用指南
      • 接入教程
      • License申请
      • License续费
    • 常见问题
      • 内容制作类问题
      • 开发类问题
      • 常见问题总览
      • 常见错误码
    • 购买指南
      • 欠费说明
      • 如何购买
      • 产品定价
    • 开发指南
      • IOS开发说明
        • 互动直播
        • 特效直播
        • 拉流
        • IOS接入概述
        • 超低延迟直播
        • 直播推流
      • Android开发说明
        • 超低延时直播
        • 互动直播
        • 普通直播
        • 特效直播
        • 拉流
        • Android接入概述
        • 推流参数配置
所有文档
menu
没有找到结果,请重新输入

智能视频SDK VideoCreatingSDK

  • 智能视频SDK开发者个人信息保护合规指引
  • 智能视频SDK隐私政策
  • 功能发布记录
  • 播放器SDK
    • SDK&Demo下载
    • 产品简介与下载
    • ios播放器
      • SDK集成
      • 快速开始
      • 简介
      • 版本更新记录
      • 接口速查
      • 快速进阶
      • 功能列表
      • 高级版功能接入
        • 端上超分功能接入
        • VR功能接入
        • 绿幕抠图功能接入
        • 投屏功能接入
        • 全景声功能接入
        • HDR功能接入
        • 超低延时直播功能接入
    • Unity播放器
      • SDK集成
      • 快速开始
      • 简介
      • 版本更新记录
      • 接口速查
      • 快速进阶
    • uniapp播放器
      • SDK集成
      • 快速开始
      • 简介
      • 版本更新记录
      • 快速进阶
    • HarmonyOS NEXT
      • SDK集成
      • 快速开始
      • 简介
      • 版本更新记录
      • 接口速查
      • 快速进阶
    • Andriod播放器
      • SDK集成
      • 快速开始
      • 简介
      • 版本更新记录
      • 接口速查
      • 快速进阶
      • 高级版功能接入
        • 端上超分功能接入
        • VR功能接入
        • 绿幕抠图功能接入
        • 投屏功能接入
        • 全景声功能接入
        • HDR功能接入
        • 超低延时直播功能接入
    • Web 播放器
      • license指引
      • 简介
      • 使用指南
      • 版本更新记录
      • 开发指南
      • 接口速查
        • 事件响应接口
        • 控制接口
  • 图片加载SDK
    • SDK&Demo下载
    • SDK集成
    • 快速开始
    • 版本更新记录
    • 接口速查
    • 产品简介
    • 快速进阶
  • 短视频SDK
    • 产品描述
      • 名词解释
      • 功能说明
      • 产品简介
      • 核心优势
    • SDK体验
      • 能力限制
      • DEMO体验
      • SDK下载
    • 使用指南
      • License申请
    • 常见问题
      • 内容制作类问题
      • 开发类问题
      • 常见问题总览
      • 常见错误码
    • 购买指南
      • 欠费说明
      • 如何购买
      • 产品定价
    • 开发指南
      • IOS开发说明
        • 录制
        • 编辑
        • 字幕
        • 转场
        • 合成
        • 快速接入
        • IOS版本开发接入文档
      • 视频指导
        • 视频指南
      • Android开发说明
        • 录制
        • Android版本开发接入文档
        • 字幕
        • 转场
        • 合成
        • 快速接入
        • 概述
  • 移动直播SDK
    • 产品描述
      • 名词解释
      • 功能说明
      • 产品简介
      • 核心优势
    • SDK体验
      • demo体验
      • SDK下载
    • 使用指南
      • 接入教程
      • License申请
      • License续费
    • 常见问题
      • 内容制作类问题
      • 开发类问题
      • 常见问题总览
      • 常见错误码
    • 购买指南
      • 欠费说明
      • 如何购买
      • 产品定价
    • 开发指南
      • IOS开发说明
        • 互动直播
        • 特效直播
        • 拉流
        • IOS接入概述
        • 超低延迟直播
        • 直播推流
      • Android开发说明
        • 超低延时直播
        • 互动直播
        • 普通直播
        • 特效直播
        • 拉流
        • Android接入概述
        • 推流参数配置
  • 文档中心
  • arrow
  • 智能视频SDKVideoCreatingSDK
  • arrow
  • 短视频SDK
  • arrow
  • 开发指南
  • arrow
  • IOS开发说明
  • arrow
  • 转场
本页目录
  • 添加基础转场

转场

更新时间:2025-08-22
  • 转场的相关接口在VideoProducer.framewrok中RMVPMediaTrack.h头文件。

添加基础转场

  • 添加基础转场,目前支持淡入、闪黑、闪白、模糊、横滑、纵滑。添加转场,需要传入媒体轨道上插入点(即,片段相应位置,这里可参考转场UI逻辑)
  • 代码示例如下:
Plain Text
1	//创建转场效果实例,这里以读取本地配置文件为例
2	NSString *name = [NSString stringWithFormat:@"bundle/%@.zip",转场唯一签名];
3
4    NSString *path = [[[NSBundle mainBundle]resourcePath] stringByAppendingPathComponent:name];
5
6    BOOL isExist = [[NSFileManager defaultManager] fileExistsAtPath:path];
7
8    //解压
9
10    if (isExist) {
11
12        NSString *destPath = [self localPath];
13
14        destPath = [destPath stringByAppendingPathComponent:item.sign];
15
16        BOOL bSucess = [self unzipStickerPackage:path destPath:destPath];
17
18        if (bSucess) {
19
20            // 读取json文件
21
22            NSString *jsonPath =  [destPath stringByAppendingPathComponent:@"transition_config.json"];
23
24            BOOL isJsonExist = [[NSFileManager defaultManager] fileExistsAtPath:jsonPath];
25
26            if (isJsonExist) {
27
28                NSData *data=[NSData dataWithContentsOfFile:jsonPath];
29
30                NSError *error;
31
32                NSDictionary *jsonDict =[NSJSONSerialization JSONObjectWithData:data
33
34                                                                        options:NSJSONReadingAllowFragments
35
36                                                                          error:&error];                
37
38                if(jsonDict != nil && jsonDict.count > 0) {
39
40                    NSString *library_name      = @"library_name";
41
42                    NSString *vertex_function   = @"vertex_function";
43
44                    NSString *fragment_function = @"fragment_function";
45
46                    NSString *durationKey       = @"duration";
47                    
48                    NSString *library = [jsonDict objectForKey:library_name];
49
50                    NSString *libraryPath = [destPath stringByAppendingPathComponent:library];
51                    
52                    if (![[NSFileManager defaultManager] fileExistsAtPath:libraryPath]) {
53
54                        return nil;
55
56                    }                    
57
58                    NSString *vertexShaderName = [jsonDict objectForKey:vertex_function];
59
60                    NSString *fragmentShaderName = [jsonDict objectForKey:fragment_function];
61
62                    CGFloat defaultDuration = 0.5 * 1000;
63
64                    CGFloat duration = [jsonDict hk_floatForKey:durationKey];
65
66                    if (duration <0.01) {
67
68                        duration = defaultDuration;
69
70                    }
71					//创建转场效果实例
72                    RMVPMediaVideoTransitionItem *mediaItem = [[RMVPMediaVideoTransitionItem alloc] initWithType:RMVPMediaVideoTransitionItemTypeDual transitionType:RMVPMediaVideoTransitionItemTypeTransitionTypeDefault libraryPath:libraryPath vertexFunctionName:vertexShaderName fragmentFunctionName:fragmentShaderName];
73
74                    mediaItem.duration = CMTimeMakeWithSeconds(duration / 1000, NSEC_PER_SEC);
75
76                    mediaItem.transitionId = item.transition_id;             
77
78                }
79
80            }
81
82        }
83
84    }
85
86
87	//删除原有转场效果
88	[self.videoTrack removeTransitionItemAtIndex:index];
89
90
91	//绑定最新转场效果
92	[self.videoTrack bindTransitionItem:mediaItem atIndex:index];

上一篇
字幕
下一篇
合成