我遇到了从QTMovie和Quicktime电影视图播放视频的问题。这是我的代码: “AppController.h”
#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 *path=@"/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
我已经尝试过播放本地文件和网址。两者都失败了。使用我播放的本地mpg文件,我可以听到声音,但屏幕是黑色的。和网址(我尝试了很多不同的网址)。永远不会工作它始终是黑屏,没有任何显示。
当我点击播放时它显示一个警告: “**警告: - 在MacOSX 10.8及更高版本中不推荐使用[NSImage compositeToPoint:fromRect:operation:]。请使用 - [NSImage drawAtPoint:fromRect:operation:fraction:]代替。”
是sdk10.8中的错误吗?
还有其他可以播放rtsp或m3u8流的框架,我可以替换QTKit吗?
我在这里上传我的项目:https://www.dropbox.com/s/1904isjkkhxecj2/NewOSX.zip
希望有人可以帮助我!!!我已经在这里停留了一段时间。真的需要帮助!谢谢!
答案 0 :(得分:0)
检查电影状态:
long state = [[movie attributeForKey:QTMovieLoadStateAttribute] longValue];
if(state != QTMovieLoadStateComplete)
return;
不关心警告。