2012-12-15 83 views
0

我遇到了从QTMovie和Quicktime电影视图播放视频的问题。这里是我的代码: “AppController.h”QTMovie无法播放任何视频

#import <Foundation/Foundation.h> 
#import <Cocoa/Cocoa.h> 
#import <QTKit/QTKit.h> 
@interface AppController : NSObject 
{ 

    IBOutlet NSTextField *label; 
} 
@property (strong,nonatomic) IBOutlet QTMovieView *movie; 
-(IBAction)play:(id)sender; 
@end 

“AppController.m”

#import "AppController.h" 
#import <QTKit/QTKit.h> 
@implementation AppController 
@synthesize movie; 
- (void)play:(id)sender 

{ 

    [label setStringValue:@"play"]; 

    NSURL *url3=[NSURL URLWithString:@"rtsp://218.204.223.237:554/live/1/66251FC11353191F/e7ooqwcfbqjoo80j.sdp"];  

    NSError* error = nil; 

    NSString *[email protected]"/Users/shenashley/Movies/cookie.mpg"; 

    QTMovie* qtm = [QTMovie movieWithURL: url2 error:&error]; 

    if(qtm != nil) 

    { 

     [movie setMovie:qtm]; 

     [movie play:self]; 

    } 

    else 

    { 

     NSLog(@"Error loading movie: %@", [error localizedDescription]); 

    } 

} 
@end 

我已经尝试过玩耍本地文件和URL。两者都失败。用我玩的本地mpg文件,我可以听到声音,但屏幕是黑色的。并与网址(我已经尝试了许多不同的网址)。从不工作。它总是黑屏,没有任何显示。

当我点击播放。它显示警告: “**警告: - [NSImage compositeToPoint:fromRect:operation:]在MacOSX 10.8及更高版本中不推荐使用,请改用 - [NSImage drawAtPoint:fromRect:operation:fraction:]。

是sdk10.8中的一个bug吗?

有没有其他的框架可以播放rtsp或m3u8流,我可以替换QTKit?

我在这里上传我的项目:https://www.dropbox.com/s/1904isjkkhxecj2/NewOSX.zip

希望有人能帮助我!我已经在这里停留了一段时间。真的需要帮助!

谢谢!

回答

0

检查影片状态:

long state = [[movie attributeForKey:QTMovieLoadStateAttribute] longValue]; 
if(state != QTMovieLoadStateComplete) 
    return; 

不要在意警告。