我有一個需要從服務器流式傳輸並在屏幕上顯示流式內容...流使用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