我正在尝试创建一个空的QTMovie对象,我可以添加段,然后播放。这很容易做到:
movie = [[QTMovie alloc] initToWritableData:[NSMutableData dataWithCapacity:1048576] error:&error];
然后我可以使用-insertSegmentOfMovie将其他电影中的片段插入到此片段中,以便我可以播放它。问题是我还需要在创建QTMovie对象时设置某个属性。特别是,我需要设置QTMovieRateChangesPreservePitchAttribute属性,以便我可以在播放期间改变播放速度而不改变音高。电影初始化后无法写入此属性。
所以,我可以像这样创建QTMovie对象:
movie = [[QTMovie alloc] initWithAttributes:[NSDictionary dictionaryWithObjectsAndKeys:[NSNumber numberWithBool:YES], QTMovieRateChangesPreservePitchAttribute, nil] error:&error];
不幸的是,这不可编辑。我已经尝试在创建时设置QTMovieEditableAttribute,但它没有帮助。当我尝试在这部电影中插入任何内容时,我仍然会遇到异常。我认为这是因为没有与QTMovie相关联的可写文件或数据引用。
关于如何解决这个问题的任何想法?