美摄SDK For iOS  3.10.1
构造函数 | 所有成员列表
NvsAudioTrack类 参考

音频轨道,音频片段的集合 更多...

#import <NvsAudioTrack.h>

类 NvsAudioTrack 继承关系图:
NvsTrack NvsObject

构造函数

(NvsAudioClip *) - appendClip:
 在轨道尾部追加片段 更多...
 
(NvsAudioClip *) - appendClip:trimIn:trimOut:
 在轨道尾部追加片段 更多...
 
(NvsAudioClip *) - insertClip:clipIndex:
 在轨道上指定片段索引处插入片段 更多...
 
(NvsAudioClip *) - insertClip:trimIn:trimOut:clipIndex:
 在轨道上指定片段索引处插入片段 更多...
 
(NvsAudioClip *) - addClip:inPoint:
 添加片段 更多...
 
(NvsAudioClip *) - addClip:inPoint:trimIn:trimOut:
 添加指定长度的片段 更多...
 
(NvsAudioClip *) - appendTimelineClip:
 在轨道尾部追加时间线片段 更多...
 
(NvsAudioClip *) - appendTimelineClip:trimIn:trimOut:
 在轨道尾部追加时间线片段 更多...
 
(NvsAudioClip *) - insertTimelineClip:clipIndex:
 在轨道上指定片段索引处插入时间线片段 更多...
 
(NvsAudioClip *) - insertTimelineClip:trimIn:trimOut:clipIndex:
 在轨道上指定片段索引处插入时间线片段 更多...
 
(NvsAudioClip *) - addTimelineClip:inPoint:
 添加时间线片段 更多...
 
(NvsAudioClip *) - addTimelineClip:inPoint:trimIn:trimOut:
 添加指定长度的片段 更多...
 
(NvsAudioClip *) - getClipWithIndex:
 通过索引获取片段 更多...
 
(NvsAudioClip *) - getClipWithTimelinePosition:
 通过时间获取片段对象 更多...
 
(NvsAudioTransition *) - setBuiltinTransition:withName:
 设置内嵌式转场 更多...
 
(NvsAudioTransition *) - getTransitionWithSourceClipIndex:
 通过源片段索引获取转场 更多...
 
- 构造函数 继承自 NvsTrack
(int64_t) - changeInPoint:newInPoint:
 修改片段在时间线上的入点.如果clip没有此函数授权返回当前的inpoint,newInpoint如果小于前一个clip的outpoint,直接返回前一个clip的outpoint,如果当前clip是第0个clip,则newInPoint最小为0。此函数内部会根据newinpoint计算出一个新的trimIn,并修改clip的trimIn,如果新的trimIn小于0时会返回trimIn为0时对应的Inpoint值,如果newinpoint大于trimOut则返回trimOut-1对应的inPoint值 更多...
 
(int64_t) - changeOutPoint:newOutPoint:
 修改片段在时间线上的出点,如果clip没有此函数授权返回当前的outpoint,如果newOutpoint小于clip的outPoint则newOutPoint不会小于inpoint+1,如果clip后面还有nextclip,则newOutPoint不会大于nextClip的inpoint,当前clip如果是最后一个clip最终outpoint的就是timeline的duration,如果newOutPoint大于clip的outpoint则视频末尾会静帧。此函数内部会根据newOutpoint计算出一个新的trimOut,如果clip的inpoint不等于下一个clip的outpoint会移除中间的转场. 更多...
 
(BOOL) - splitClip:splitPoint:
 分割指定的片段 更多...
 
(BOOL) - removeClip:keepSpace:
 移除指定的片段,主题的片头片尾是不允许移除的 更多...
 
(BOOL) - removeRange:endTimelinePos:keepSpace:
 移除指定的区间内的所有片段,如果片段只有部分与该区间重合则调整其时间线入点或者出点,如果片段包含主题片头片尾部分,会移除失败,startTimelinePos < 0 或者 endTimelinePos <= startTimelinePos 也会移除失败 更多...
 
(BOOL) - moveClip:destClipIndex:
 移动指定的片段,主题的片头片尾不能移动,clipIndex和destClipIndex不能于等于clipcount 更多...
 
(BOOL) - moveClip:targetTimelinePos:isInsertTarget:keepSpace:
 移动指定的片段到输入的位置,clipIndex大于等于clipcount会移除失败,targetTimelinePos等于0时,会被移动到0的位置,主题的片头片尾不能被移动。 更多...
 
(BOOL) - removeAllClips
 移除所有片段 更多...
 
(void) - setVolumeGain:rightVolumeGain:
 设置音量,最终的音量值是track音量乘以clip音量 更多...
 
(void) - getVolumeGain:rightVolumeGain:
 获取音量,最终的音量值是track音量乘以clip音量 更多...
 
- 构造函数 继承自 NvsObject
(void) - setAttachment:forKey:
 给NvsObject对象添加附件,用来标识NvsObject的对象或者用于其他用途 更多...
 
(void) - setTemplateAttachment:forKey:
 为NvsObject对象添加模板资源的附加数据,用来标识NvsObject的模板数据 更多...
 
(NSObject *) - getAttachment:
 获取已经添加的附件 更多...
 
(NSString *) - getTemplateAttachment:
 获取NvsObject的模板资源附件 更多...
 

额外继承的成员函数

- 属性 继承自 NvsTrack
NvsTrackType type
 轨道类型 更多...
 
unsigned int index
 轨道索引 更多...
 
int64_t duration
 轨道长度(单位微秒) 更多...
 
unsigned int clipCount
 轨道上的片段数量 更多...
 

详细描述

音频轨道,音频片段的集合

音频轨道是容纳音频片段的实体。每条音频轨道可以添加或者移除多个音频片段。一个音频片段播放到另一个音频片段时,需要进行音频转场设置,以便过渡衔接。

注:对于音频轨道的一系列接口及所其属参数含义,请参照视频轨道NvsVideoTrack的对应接口来对照理解。

警告
NvsAudioTrack类中,所有public API都在UI线程使用!!!

函数文档

◆ addClip:inPoint:

- (NvsAudioClip *) addClip: (NSString *)  filePath
inPoint: (int64_t)  inPoint 

添加片段

参数
filePath片段路径

IOS中,对于导入的音视频片段的路径,有四种方式:

a. 通过ALAssetsLibrary实例导入,片段路径格式如下:"assets-library://asset/asset.mov?id=E0723C86-AA47-409C-B4E2-526D7C2AA9B5&ext=mov";

b. 通过IPod Library库的MPMediaQuery实例导入,片段路径格式如下:"ipod-library://item/item.mp3?id=1217463725835578132";

c. 通过沙河路径路径导入,片段路径格式如下:"/var/mobile/Containers/Data/Documents/tmp/video20170406101714.mp4";

d. IOS 8.0版以后,Photos框架替代ALAssetsLibrary库,通过PHAsset实例导入,片段路径如下:"file:///var/mobile/Media/DCIM/100APPLE/IMG_0646.MP4"。

参数
inPoint片段在时间线上的入点(单位微秒)。inPoint 如果小于0,返回对象为空。
返回
返回添加的音频片段对象
警告
此接口会引发流媒体引擎状态跳转到引擎停止状态,具体情况请参见引擎变化专题
参见
- appendClip:
- insertClip:clipIndex:
- addClip:inPoint:trimIn:trimOut:

◆ addClip:inPoint:trimIn:trimOut:

- (NvsAudioClip *) addClip: (NSString *)  filePath
inPoint: (int64_t)  inPoint
trimIn: (int64_t)  trimIn
trimOut: (int64_t)  trimOut 

添加指定长度的片段

参数
filePath片段路径。对于片段路径方式,请参见addClip()的参数filePath。请参考片段路径指定方式,否则返回对象为空。
inPoint片段在时间线上的入点(单位微秒)。注意:如果inPoint 小于0,返回对象为空。
trimIn片段裁剪入点(单位微秒)
trimOut片段裁剪出点(单位微秒)
返回
返回添加的音频片段对象
警告
参数需要满足(0 <= trimIn < trimOut),如果trimOut大于素材本身长度,后面会以最后一帧播放。
此接口会引发流媒体引擎状态跳转到引擎停止状态,具体情况请参见引擎变化专题
参见
- appendClip:trimIn:trimOut:
- insertClip:trimIn:trimOut:clipIndex:
- addClip:inPoint:

◆ addTimelineClip:inPoint:

- (NvsAudioClip *) addTimelineClip: (NvsTimeline *)  timeline
inPoint: (int64_t)  inPoint 

添加时间线片段

参数
timeline待添加的时间线.
inPoint片段在时间线上的入点(单位微秒)。inPoint 如果小于0,返回对象为空。
返回
返回添加的音频片段对象
警告
此接口会引发流媒体引擎状态跳转到引擎停止状态,具体情况请参见引擎变化专题
参见
- appendTimelineClip:
- insertClip:clipIndex:
- addTimelineClip:inPoint:trimIn:trimOut:

◆ addTimelineClip:inPoint:trimIn:trimOut:

- (NvsAudioClip *) addTimelineClip: (NvsTimeline *)  timeline
inPoint: (int64_t)  inPoint
trimIn: (int64_t)  trimIn
trimOut: (int64_t)  trimOut 

添加指定长度的片段

参数
timeline待添加的时间线.
inPoint片段在时间线上的入点(单位微秒)。注意:如果inPoint 小于0,返回对象为空。
trimIn片段裁剪入点(单位微秒)
trimOut片段裁剪出点(单位微秒)
返回
返回添加的音频片段对象
警告
参数需要满足(0 <= trimIn < trimOut),如果trimOut大于待添加时间线长度,后面会以最后一帧播放。
此接口会引发流媒体引擎状态跳转到引擎停止状态,具体情况请参见引擎变化专题
参见
- appendTimelineClip:trimIn:trimOut:
- insertTimelineClip:trimIn:trimOut:clipIndex:
- addTimelineClip:inPoint:

◆ appendClip:

- (NvsAudioClip *) appendClip: (NSString *)  filePath

在轨道尾部追加片段

参数
filePath片段路径。对于片段路径方式,请参见addClip()的参数filePath。请参考片段路径指定方式,否则返回对象为空。
返回
返回追加的音频片段对象
警告
此接口会引发流媒体引擎状态跳转到引擎停止状态,具体情况请参见引擎变化专题
参见
- appendClip:trimIn:trimOut:
- getClipWithIndex:
- insertClip:clipIndex:

◆ appendClip:trimIn:trimOut:

- (NvsAudioClip *) appendClip: (NSString *)  filePath
trimIn: (int64_t)  trimIn
trimOut: (int64_t)  trimOut 

在轨道尾部追加片段

参数
filePath片段路径。对于片段路径方式,请参见addClip()的参数filePath。请参考片段路径指定方式,否则返回对象为空。
trimIn片段裁剪入点(单位微秒)
trimOut片段裁剪出点(单位微秒)
返回
返回追加的音频片段对象
警告
参数需要满足(0 <= trimIn < trimOut),如果trimOut大于素材本身长度,后面会以最后一帧播放。
此接口会引发流媒体引擎状态跳转到引擎停止状态,具体情况请参见引擎变化专题
参见
- appendClip:
- insertClip:trimIn:trimOut:clipIndex:
- getClipWithIndex:

◆ appendTimelineClip:

- (NvsAudioClip *) appendTimelineClip: (NvsTimeline *)  timeline

在轨道尾部追加时间线片段

参数
timeline待追加的时间线
返回
返回追加的音频片段对象
警告
此接口会引发流媒体引擎状态跳转到引擎停止状态,具体情况请参见引擎变化专题
参见
- appendTimelineClip:trimIn:trimOut:
- getClipWithIndex:
- insertTimelineClip:clipIndex:
自从
2.24.0

◆ appendTimelineClip:trimIn:trimOut:

- (NvsAudioClip *) appendTimelineClip: (NvsTimeline *)  timeline
trimIn: (int64_t)  trimIn
trimOut: (int64_t)  trimOut 

在轨道尾部追加时间线片段

参数
timeline待追加的时间线
trimIn片段裁剪入点(单位微秒)
trimOut片段裁剪出点(单位微秒)
返回
返回追加的音频片段对象
警告
参数需要满足(0 <= trimIn < trimOut),如果trimOut大于待追加时间线长度,后面会以最后一帧播放。
此接口会引发流媒体引擎状态跳转到引擎停止状态,具体情况请参见引擎变化专题
参见
- appendTimelineClip:
- insertTimelineClip:trimIn:trimOut:clipIndex:
- getClipWithIndex:
自从
2.24.0

◆ getClipWithIndex:

- (NvsAudioClip *) getClipWithIndex: (unsigned int)  clipIndex

通过索引获取片段

参数
clipIndex片段索引。注意:如果clipIndex 大于等于clipCount,返回对象为空。
返回
返回获取的音频片段对象
参见
- getClipWithTimelinePosition:
- appendClip:
- insertClip:clipIndex:

◆ getClipWithTimelinePosition:

- (NvsAudioClip *) getClipWithTimelinePosition: (int64_t)  timelinePos

通过时间获取片段对象

参数
timelinePos时间线上的位置(微秒)
返回
返回获取的音频片段对象
警告
timelinePos范围(0 <= timelinePos < timeline.duration),若超出会返回null
参见
- getClipWithIndex:

◆ getTransitionWithSourceClipIndex:

- (NvsAudioTransition *) getTransitionWithSourceClipIndex: (unsigned int)  srcClipIndex

通过源片段索引获取转场

参数
srcClipIndex源片段索引。注意:如果srcClipIndex 大于等于 clipCount - 1,返回对象为空。
返回
返回获取的音频转场对象
参见
- setBuiltinTransition:withName:

◆ insertClip:clipIndex:

- (NvsAudioClip *) insertClip: (NSString *)  filePath
clipIndex: (unsigned int)  clipIndex 

在轨道上指定片段索引处插入片段

参数
filePath片段路径。对于片段路径方式,请参见addClip()的参数filePath。请参考片段路径指定方式,否则返回对象为空。
clipIndex指定片段索引。
返回
返回插入的音频片段对象
警告
如果clipIndex大于已有片段数量,则会在最后添加。如果clipIndex 等于0,当存在主题片头的时候,返回对象为空。如果clipIndex>=clipCount,此时如果存在主题片尾的话,返回对象为空。
此接口会引发流媒体引擎状态跳转到引擎停止状态,具体情况请参见引擎变化专题
参见
- appendClip:
- getClipWithIndex:
- insertClip:trimIn:trimOut:clipIndex:

◆ insertClip:trimIn:trimOut:clipIndex:

- (NvsAudioClip *) insertClip: (NSString *)  filePath
trimIn: (int64_t)  trimIn
trimOut: (int64_t)  trimOut
clipIndex: (unsigned int)  clipIndex 

在轨道上指定片段索引处插入片段

参数
filePath片段路径。对于片段路径方式,请参见addClip()的参数filePath。请参考片段路径指定方式,否则返回对象为空。
trimIn片段裁剪入点(单位微秒)
trimOut片段裁剪出点(单位微秒)
clipIndex指定片段索引。
返回
返回插入的音频片段对象
警告
参数需要满足(0 <= trimIn < trimOut),如果trimOut大于素材本身长度,后面会以最后一帧播放。
如果index大于已有片段数量,则会在最后添加。如果clipIndex 等于0,当存在主题片头的时候,返回对象为空。如果clipIndex>=clipCount,此时如果存在主题片尾的话,返回对象为空。
此接口会引发流媒体引擎状态跳转到引擎停止状态,具体情况请参见引擎变化专题
参见
- appendClip:trimIn:trimOut:
- getClipWithIndex:
- insertClip:clipIndex:

◆ insertTimelineClip:clipIndex:

- (NvsAudioClip *) insertTimelineClip: (NvsTimeline *)  timeline
clipIndex: (unsigned int)  clipIndex 

在轨道上指定片段索引处插入时间线片段

参数
timeline待插入的时间线
clipIndex指定片段索引。
返回
返回插入的音频片段对象
警告
如果clipIndex大于已有片段数量,则会在最后添加。如果clipIndex 等于0,当存在主题片头的时候,返回对象为空。如果clipIndex>=clipCount,此时如果存在主题片尾的话,返回对象为空。
此接口会引发流媒体引擎状态跳转到引擎停止状态,具体情况请参见引擎变化专题
参见
- appendTimelineClip:
- getClipWithIndex:
- insertTimelineClip:trimIn:trimOut:clipIndex:

◆ insertTimelineClip:trimIn:trimOut:clipIndex:

- (NvsAudioClip *) insertTimelineClip: (NvsTimeline *)  timeline
trimIn: (int64_t)  trimIn
trimOut: (int64_t)  trimOut
clipIndex: (unsigned int)  clipIndex 

在轨道上指定片段索引处插入时间线片段

参数
timeline待插入的时间线
trimIn片段裁剪入点(单位微秒)
trimOut片段裁剪出点(单位微秒)
clipIndex指定片段索引。
返回
返回插入的音频片段对象
警告
参数需要满足(0 <= trimIn < trimOut),如果trimOut大于待插入时间线长度,后面会以最后一帧播放。
如果index大于已有片段数量,则会在最后添加。如果clipIndex 等于0,当存在主题片头的时候,返回对象为空。如果clipIndex>=clipCount,此时如果存在主题片尾的话,返回对象为空。
此接口会引发流媒体引擎状态跳转到引擎停止状态,具体情况请参见引擎变化专题
参见
- appendTimelineClip:trimIn:trimOut:
- getClipWithIndex:
- insertTimelineClip:clipIndex:

◆ setBuiltinTransition:withName:

- (NvsAudioTransition *) setBuiltinTransition: (unsigned int)  srcClipIndex
withName: (NSString *)  transitionName 

设置内嵌式转场

参数
srcClipIndex源片段索引。注意:如果srcClipIndex 大于等于clipCount - 1,返回对象为空。
transitionName音频转场名称。注意:如果设为空字符串,则删除原有转场
返回
返回音频转场对象
警告
此接口会引发流媒体引擎状态跳转到引擎停止状态,具体情况请参见引擎变化专题
参见
- getTransitionWithSourceClipIndex:

该类的文档由以下文件生成: