1
我有一個Cocoa應用程序應該播放完全同步的兩個不同QTMovie對象。兩部電影在分辨率,尺寸等方面都相同,但可能有不同的長度。電影是壓縮的,它們是多線程的必要條件。同步播放兩個QTMovie
我目前的aproach是:
NSMutableDictionary *movieAttributes1 = [NSMutableDictionary dictionaryWithObjectsAndKeys:
[NSNumber numberWithBool:NO], QTMovieOpenAsyncOKAttribute,
[NSNumber numberWithBool:YES], QTMovieOpenForPlaybackAttribute,
nil];
[movieAttributes1 setValue:pathOfFile1 forKey:QTMovieFileNameAttribute];
NSMutableDictionary *movieAttributes2 = [NSMutableDictionary dictionaryWithObjectsAndKeys:
[NSNumber numberWithBool:NO], QTMovieOpenAsyncOKAttribute,
[NSNumber numberWithBool:YES], QTMovieOpenForPlaybackAttribute,
nil];
[movieAttributes2 setValue:pathOfFile2 forKey:QTMovieFileNameAttribute];
QTMovie* leftMovie = [QTMovie movieWithAttributes:movieAttributes1 error:nil];
QTMovie* rightMovie = [QTMovie movieWithAttributes:movieAttributes2 error:nil];
....
[leftMovie play];
[rightMovie play];
完成在播放按鈕clickHandler事件。
在這10個案例中有9個可以工作,但有時電影是異步播放的。我也確定他們會在CPU負載過高的情況下變成異步的。
任何想法?非常感謝。
謝謝,我試過類似 [leftMovie setCurrentTime:[rightMovie currentTime]]; 但事情會變得更糟。 我相信我必須仔細看看QuickTime API而不是QTKit。 – 2010-11-21 13:57:59