0

我已经知道我应该使用 AVFoundation 从 .mp4 文件中获取 CGContextRef;

并使用:

CATextLayer *subtitle1Text = [[CATextLayer alloc] init];
[subtitle1Text setFont:@"Helvetica-Bold"];
[subtitle1Text setFontSize:36];
[subtitle1Text setFrame:CGRectMake(0, 0, size.width, 400)];
[subtitle1Text setString:[self.subtitles objectAtIndex:idx]];
[subtitle1Text setAlignmentMode:kCAAlignmentCenter];
[subtitle1Text setForegroundColor:[[UIColor whiteColor] CGColor]];

[subtitle1Text drawInContext:context];

制作字幕;

现在的问题是如何从 .mp4 文件中获取 CGContextRef ?

我的意思是我有 .mp4 文件的 url,但是如何在 mp4 中添加 CATextLayer?

4

1 回答 1

0

您必须使用 AVFoundation 框架才能在视频上添加文本,您可以查看以下链接以获取更多详细信息。您已经在视频层上添加了文本层,然后必须将其导出。

AVMutableComposition

看看下面的示例代码,有一种添加水印的方法,您可以通过更改一些属性(如开始时间和结束时间)来创建字幕。

AVSimpleEditoriOS

于 2015-05-18T08:01:39.183 回答