【问题标题】:AVAssetExportSession with and without break points带和不带断点的 AVAssetExportSession
【发布时间】:2011-07-06 06:08:07
【问题描述】:

我有低质量转换的简单视频压缩代码。我正在使用 IOS-4.2.1 在 iphone 4 中测试我的代码。问题是当我在没有断点的设备上测试我的代码时,代码无法创建视频(它只是创建了一个零 kb 文件或空文件)但是当我使用断点逐行检查此代码时,它会制作一个完美的压缩视频,该视频也可以在 mac 中的 quicktime 播放器上运行。压缩后我制作这个视频文件的 zip。

NSURL *videoURL=[[self.videourlarray objectAtIndex:i] valueForKey:UIImagePickerControllerReferenceURL];
        NSURL *outputURL = [NSURL fileURLWithPath:videoFile];

        [[NSFileManager defaultManager] removeItemAtURL:outputURL error:nil];
        AVURLAsset *asset = [AVURLAsset URLAssetWithURL:videoURL options:nil];
        AVAssetExportSession *exportSession = [[AVAssetExportSession alloc] initWithAsset:asset presetName:AVAssetExportPresetLowQuality];
        exportSession.outputURL = outputURL;
        exportSession.shouldOptimizeForNetworkUse = YES;
        exportSession.outputFileType = AVFileTypeQuickTimeMovie;
        [exportSession exportAsynchronouslyWithCompletionHandler:^(void) 
         {
             NSLog(@"Export Complete %d %@", exportSession.status, exportSession.error);
             [exportSession release];
         }];

感谢任何帮助...

【问题讨论】:

  • 什么是出口状态?如果不释放 exportSession 会怎样?
  • 不释放export且exportSession.status为3且exportSession.error为null后仍然没有成功。
  • 不,没有错误没有崩溃,正如我所说,有时它会制作我想要的精确视频,有时它会制作 zerokb 视频文件。

标签: iphone objective-c ios4 avfoundation avassetexportsession


【解决方案1】:

我认为你需要确保你没有弄乱线程..(AVFoundation 指南说导出器不能保证在任何特定线程上运行)。

使用这样的块。

    [exportSession exportAsynchronouslyWithCompletionHandler:^(void) 
    {
    dispatch_async(dispatch_get_main_queue(), ^{
         NSLog(@"Export Complete %d %@", exportSession.status, exportSession.error);
            });

     }];

我会亲自从块中调用代表,但我认为您的简单日志语句仅用于此示例,您已经知道:)

【讨论】:

    【解决方案2】:

    我遇到了同样的问题。经过几个小时的调试,我发现我的音频文件的扩展名是.M4A全大写。小写字母将解决问题

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-03-07
      • 2017-02-26
      • 1970-01-01
      • 2014-06-01
      • 2013-10-01
      • 2014-07-02
      相关资源
      最近更新 更多