美摄SDK For iOS
3.7.2
|
音频轨道,音频片段的集合 更多...
#import <NvsAudioTrack.h>
构造函数 | |
(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: |
通过源片段索引获取转场 更多... | |
![]() | |
(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音量 更多... | |
![]() | |
(void) | - setAttachment:forKey: |
给NvsObject对象添加附件,用来标识NvsObject的对象或者用于其他用途 更多... | |
(void) | - setTemplateAttachment:forKey: |
为NvsObject对象添加模板资源的附加数据,用来标识NvsObject的模板数据 更多... | |
(NSObject *) | - getAttachment: |
获取已经添加的附件 更多... | |
(NSString *) | - getTemplateAttachment: |
获取NvsObject的模板资源附件 更多... | |
额外继承的成员函数 | |
![]() | |
NvsTrackType | type |
轨道类型 更多... | |
unsigned int | index |
轨道索引 更多... | |
int64_t | duration |
轨道长度(单位微秒) 更多... | |
unsigned int | clipCount |
轨道上的片段数量 更多... | |
音频轨道,音频片段的集合
音频轨道是容纳音频片段的实体。每条音频轨道可以添加或者移除多个音频片段。一个音频片段播放到另一个音频片段时,需要进行音频转场设置,以便过渡衔接。
注:对于音频轨道的一系列接口及所其属参数含义,请参照视频轨道NvsVideoTrack的对应接口来对照理解。
- (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,返回对象为空。 |
- (NvsAudioClip *) addClip: | (NSString *) | filePath | |
inPoint: | (int64_t) | inPoint | |
trimIn: | (int64_t) | trimIn | |
trimOut: | (int64_t) | trimOut | |
- (NvsAudioClip *) addTimelineClip: | (NvsTimeline *) | timeline | |
inPoint: | (int64_t) | inPoint | |
添加时间线片段
timeline | 待添加的时间线. |
inPoint | 片段在时间线上的入点(单位微秒)。inPoint 如果小于0,返回对象为空。 |
- (NvsAudioClip *) addTimelineClip: | (NvsTimeline *) | timeline | |
inPoint: | (int64_t) | inPoint | |
trimIn: | (int64_t) | trimIn | |
trimOut: | (int64_t) | trimOut | |
添加指定长度的片段
timeline | 待添加的时间线. |
inPoint | 片段在时间线上的入点(单位微秒)。注意:如果inPoint 小于0,返回对象为空。 |
trimIn | 片段裁剪入点(单位微秒) |
trimOut | 片段裁剪出点(单位微秒) |
- (NvsAudioClip *) appendClip: | (NSString *) | filePath |
- (NvsAudioClip *) appendClip: | (NSString *) | filePath | |
trimIn: | (int64_t) | trimIn | |
trimOut: | (int64_t) | trimOut | |
- (NvsAudioClip *) appendTimelineClip: | (NvsTimeline *) | timeline |
- (NvsAudioClip *) appendTimelineClip: | (NvsTimeline *) | timeline | |
trimIn: | (int64_t) | trimIn | |
trimOut: | (int64_t) | trimOut | |
在轨道尾部追加时间线片段
timeline | 待追加的时间线 |
trimIn | 片段裁剪入点(单位微秒) |
trimOut | 片段裁剪出点(单位微秒) |
- (NvsAudioClip *) getClipWithIndex: | (unsigned int) | clipIndex |
通过索引获取片段
clipIndex | 片段索引。注意:如果clipIndex 大于等于clipCount,返回对象为空。 |
- (NvsAudioClip *) getClipWithTimelinePosition: | (int64_t) | timelinePos |
通过时间获取片段对象
timelinePos | 时间线上的位置(微秒) |
- (NvsAudioTransition *) getTransitionWithSourceClipIndex: | (unsigned int) | srcClipIndex |
通过源片段索引获取转场
srcClipIndex | 源片段索引。注意:如果srcClipIndex 大于等于 clipCount - 1,返回对象为空。 |
- (NvsAudioClip *) insertClip: | (NSString *) | filePath | |
clipIndex: | (unsigned int) | clipIndex | |
- (NvsAudioClip *) insertClip: | (NSString *) | filePath | |
trimIn: | (int64_t) | trimIn | |
trimOut: | (int64_t) | trimOut | |
clipIndex: | (unsigned int) | clipIndex | |
在轨道上指定片段索引处插入片段
filePath | 片段路径。对于片段路径方式,请参见addClip()的参数filePath。请参考片段路径指定方式,否则返回对象为空。 |
trimIn | 片段裁剪入点(单位微秒) |
trimOut | 片段裁剪出点(单位微秒) |
clipIndex | 指定片段索引。 |
- (NvsAudioClip *) insertTimelineClip: | (NvsTimeline *) | timeline | |
clipIndex: | (unsigned int) | clipIndex | |
在轨道上指定片段索引处插入时间线片段
timeline | 待插入的时间线 |
clipIndex | 指定片段索引。 |
- (NvsAudioClip *) insertTimelineClip: | (NvsTimeline *) | timeline | |
trimIn: | (int64_t) | trimIn | |
trimOut: | (int64_t) | trimOut | |
clipIndex: | (unsigned int) | clipIndex | |
在轨道上指定片段索引处插入时间线片段
timeline | 待插入的时间线 |
trimIn | 片段裁剪入点(单位微秒) |
trimOut | 片段裁剪出点(单位微秒) |
clipIndex | 指定片段索引。 |
- (NvsAudioTransition *) setBuiltinTransition: | (unsigned int) | srcClipIndex | |
withName: | (NSString *) | transitionName | |
设置内嵌式转场
srcClipIndex | 源片段索引。注意:如果srcClipIndex 大于等于clipCount - 1,返回对象为空。 |
transitionName | 音频转场名称。注意:如果设为空字符串,则删除原有转场 |