小编The*_*nin的帖子

使用AVAsset制作带有图片阵列和歌曲文件的电影文件

我正在尝试使用图片阵列和音频文件制作电影文件.为了制作带有图片阵列的电影,我在这里使用了zoul的大帖子.一切都很完美,我的电影和我的照片一样.但是,当我尝试添加一些音轨时,我遇到了很多问题.要理解我把我的代码:

当我调用此方法时,图片数组和歌曲文件已准备就绪:

-(void) writeImagesToMovieAtPath:(NSString *) path withSize:(CGSize) size
{
    NSString *documentsDirectoryPath = [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) objectAtIndex:0];
    NSArray *dirContents = [[NSFileManager defaultManager] directoryContentsAtPath:documentsDirectoryPath];
    for (NSString *tString in dirContents) {
        if ([tString isEqualToString:@"essai.mp4"]) 
        {
            [[NSFileManager defaultManager]removeItemAtPath:[NSString stringWithFormat:@"%@/%@",documentsDirectoryPath,tString] error:nil];

        }
    }

    NSLog(@"Write Started");

    NSError *error = nil;

    AVAssetWriter *videoWriter = [[AVAssetWriter alloc] initWithURL:
                                  [NSURL fileURLWithPath:path] fileType:AVFileTypeMPEG4
                                                              error:&error];    
    NSParameterAssert(videoWriter);

    NSDictionary *videoSettings = [NSDictionary dictionaryWithObjectsAndKeys:
                                   AVVideoCodecH264, AVVideoCodecKey,
                                   [NSNumber numberWithInt:size.width], AVVideoWidthKey,
                                   [NSNumber numberWithInt:size.height], AVVideoHeightKey,
                                   nil];

    AudioChannelLayout channelLayout;
    memset(&channelLayout, 0, sizeof(AudioChannelLayout));
    channelLayout.mChannelLayoutTag = kAudioChannelLayoutTag_Stereo;

    NSDictionary …
Run Code Online (Sandbox Code Playgroud)

iphone audio video ios avassetwriter

46
推荐指数
1
解决办法
3万
查看次数

标签 统计

audio ×1

avassetwriter ×1

ios ×1

iphone ×1

video ×1