gpt4 book ai didi

iphone - 如何在 iPhone sdk 中使用 AVMutableComposition 合并视频

转载 作者:可可西里 更新时间:2023-11-01 04:47:26 24 4
gpt4 key购买 nike

我使用了以下方式,但视频没有合并,在输出中,最后添加到 AVMutableCompositionTrack 的视频存储在库中。

NSArray *arrVideoUrl=[objApp.dictSelectedVideos allKeys];
AVURLAsset *video1=[[AVURLAsset alloc]initWithURL:[arrVideoUrl objectAtIndex:0] options:nil];
AVURLAsset *video2=[[AVURLAsset alloc]initWithURL:[arrVideoUrl objectAtIndex:1] options:nil];
AVURLAsset *audioAsset=[[AVURLAsset alloc]initWithURL:songUrl options:nil];

AVMutableComposition *mixcomposition=[AVMutableComposition composition];

AVMutableCompositionTrack *track1=[mixcomposition addMutableTrackWithMediaType:AVMediaTypeVideo preferredTrackID:kCMPersistentTrackID_Invalid];
[track1 insertTimeRange:CMTimeRangeMake(kCMTimeZero, video1.duration) ofTrack:[[video1 tracksWithMediaType:AVMediaTypeVideo] objectAtIndex:0]
atTime:kCMTimeZero error:nil];


AVMutableCompositionTrack *track2=[mixcomposition addMutableTrackWithMediaType:AVMediaTypeVideo preferredTrackID:kCMPersistentTrackID_Invalid];

[track2 insertTimeRange:CMTimeRangeMake(kCMTimeZero, video2.duration) ofTrack:[[video2 tracksWithMediaType:AVMediaTypeVideo] objectAtIndex:0]
atTime:kCMTimeZero error:nil];

谁能帮帮我?

最佳答案

现在你有两个轨道的 AVMutableComposition,你需要创建 --- AVMutableVideoCompositionLayerInstruction 用于两者。

  • 为您的合并轨道创建 AVMutableVideoCompositionInstruction,其对象将是
    在由 AVMutableVideoCompositionLayerInstruction 组成的数组中有 instructions第一和第二首歌曲。

  • 为 Merged track 对象创建 AVMutableVideoComposition 并在上面提供
    AVMutableVideoCompositionInstruction

此方法来自 this 的一个非常好的教程链接。

关于iphone - 如何在 iPhone sdk 中使用 AVMutableComposition 合并视频,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15902439/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com