我有一个需要从服务器流式传输并在屏幕上显示流式内容...流使用NSStream和NSInputStream和NSOutputStream。如何可以显示它在屏幕?通过流获取帧并在屏幕上显示
流用看起来像@ “http://191.168.143.41:1212/;
if(stream == inputStream) {
uint8_t buf[1024];
unsigned int len = 0;
len = [inputStream read:buf maxLength:1024];
if(len > 0) {
NSMutableData* datas=[[NSMutableData alloc] initWithLength:0];
[datas appendBytes: (const void *)buf length:len];
NSString *s = [[NSString alloc] initWithData:datas encoding:NSASCIIStringEncoding];
[self readIn:s];
NSLog(@"ss%@",s);
[self loadMovie:s]; //method for movie player
}
我试图显示这是如下一个movieplayer ..
-(void_loadMovie:(NSString*)moviePrefix
{
NSString *path = [NSString stringWithFormat:@"%@.mjpg", moviePrefix];
NSURL *url = [NSURL fileURLWithPath:path];
if (url) {
_moviePlayer = [[MPMoviePlayerController alloc] initWithContentURL:url];
_moviePlayer.view.frame = CGRectMake(0, 70, 600, 450);
_moviePlayer.controlStyle = MPMovieControlStyleNone;
_moviePlayer.scalingMode = MPMovieScalingModeNone;
[dic setObject:__moviePlayer forKey:path];
}
}
[_moviePlayer prepareToPlay];
[self.view addSubview: _moviePlayer.view];
[self.view bringSubviewToFront:_moviePlayer.view];
[self.view addSubview: _moviePlayer.view];
[_moviePlayer play];
}
是的NSString *路径= [NSString的stringWithFormat:@” %@。mjpg“,moviePrefix];正确的方法??
这显示一个黑屏。怎么了? 如果这种方式不正确,有没有其他办法我可以显示这些帧? 谁能帮我解决这个...
'的NSString *路径= [的NSString stringWithFormat:stringWithFormat:@,moviePrefix,@ “电影”, “MJPEG。”];'为什么您使用'stringWithFormat:'两次 –
@OmerWaqasKhan对不起,这是一个错字错误。 – Prarthana