Методы делегата QTMovie не вызываются - PullRequest
0 голосов
/ 13 марта 2011

Эй, я пытаюсь перехватить вызовы метода делегата прогресса QTMovie, и методы делегата, похоже, не вызываются. Я пытаюсь перехватить событие прогресса конверсии, введя

- (BOOL) фильм: (QTMovie *) фильм должен ПродолжитьОперация: (NSString *) Операция withPhase: (QTMovieOperationPhase) фаза atPercent: (NSNumber *) процент с Атрибутами: (NSDictionary *) атрибуты

но метод не вызывается. Я посмотрел пример кода яблок здесь http://developer.apple.com/library/mac/#samplecode/QTKitProgressTester/Introduction/Intro.html#//apple_ref/doc/uid/DTS10003631 и, похоже, не вижу большой разницы между моим кодом и их кодом. Файл конвертируется нормально и отображается на моем рабочем столе, и я могу воспроизводить его без проблем. Я просто не могу получить события прогресса. Есть идеи? Вот мое демонстрационное приложение, которое я использую, чтобы проверить это.

#import "testProjAppDelegate.h"
#import <QTKit/QTKit.h>
@implementation testProjAppDelegate

@synthesize window;

- (void)applicationDidFinishLaunching:(NSNotification *)aNotification
{
    QTMovie* movie = [QTMovie movieWithFile:@"/Users/Morgan/Desktop/sample_iTunes.mov" error:nil];

    if (movie)
    {
        [movie setDelegate:self];

        NSDictionary *dict = [NSDictionary dictionaryWithObjectsAndKeys:[NSNumber numberWithBool:YES], QTMovieExport, 
                              [NSNumber numberWithInt:kQTFileType3GPP], QTMovieExportType, nil];


        [movie writeToFile:@"/Users/Morgan/Desktop/test.mp4" withAttributes:dict error:nil];

        NSLog(@"DONE");
    }
}

- (BOOL)movie:(QTMovie *)movie shouldContinueOperation:(NSString *)op withPhase:(QTMovieOperationPhase)phase atPercent:(NSNumber *)percent withAttributes:(NSDictionary *)attributes
{
    NSLog(@"PROGRESS");
    return YES; 
}

@end

1 Ответ

0 голосов
/ 13 марта 2011

Похоже, что это не работает, потому что мое приложение было скомпилировано для 64 бит. Я предполагаю, что это ошибка в рамках QTKit? Я обнаружил несколько других упоминаний о делегатах QTMovie, не работающих в 64-битных приложениях. Я могу скомпилировать мое приложение для 32-битной, хотя это не проблема. Тем не менее, это должно работать в 64 бит, не так ли?

...