我一直在尝试将电影剪辑添加到项目中,但就是不起作用。我已经确保*.mov文件存在于文件目录中。
但是如果我尝试在movieNamed:@"blahblah.mov“上添加初始片段,它就能完美地工作。
不确定问题是否出在代码中,或者我尝试使用的影片剪辑无效(文件不是太大或其他什么)。
可以解释这个问题吗?
下面是代码
#import "C4WorkSpace.h"
C4Movie *movie;
@implementation C4WorkSpace
-(void)setup {
movie = [C4Movie movieNamed:@"thinkdifferent.mov"];
movie.width = self.canvas.width;
CGPoint centerOfScreen = CGPointMake(self.canvas.width/2, self.canvas.height/2);
movie.center = centerOfScreen;
[self.canvas addMovie:movie];
}
@end以下是带有错误的代码环境的图像:

和指向图像的直接链接:Error Image
发布于 2013-09-28 02:09:20
我看过你发给我的链接,发现有几种不同的方式可能会让你出错。
首先,我必须从那个链接下载电影...但是,当我在Safari中这样做时,它出现了一个问题,如下所示:
下载.mov容器
我下载的实际上是一个容器,而不是真正的源电影,这在C4中是行不通的,因为它总是只引用电影,而不是对象本身。
因此,我尝试了一下Chrome的开发工具,并能够将文件保存为源代码。
以下代码适用于我:
#import "C4WorkSpace.h"
@implementation C4WorkSpace {
C4Movie *m;
}
-(void)touchesBegan {
if(m == nil) {
m = [C4Movie movieNamed:@"iPhone.mp4"];
m.shouldAutoplay = YES;
[self.canvas addMovie:m];
}
}
@end 我推迟了电影的开始,因为它是一个大文件。你不会真的想让这么大的一堆文件直接放在你的项目中,但为了测试它是有效的。我开始在touchesBegan中创建电影,以便应用程序在打开应用程序时不会在加载电影时陷入困境。
好吧,这可能并不能真正解决你的问题。因此,我测试了从大电影源文件创建一个小剪辑,步骤如下:
在12秒的剪辑中打开电影(点击裁剪后的电影(或文件> Export)
所以,我怀疑这个答案的第一部分可能是你被挂起的地方。该文件实际上不是电影文件,而是指向某些其他媒体的指针。我之所以想到这一点,是因为我记得,当我为web导出Quicktime mov时,它实际上创建了一个介质文件夹,其中包含一个引用另一个文件夹中的其他介质的.mov文件。
https://stackoverflow.com/questions/18993768
复制相似问题