2013-06-05 1 views
0

Аналогичные вопросы задавали раньше, но я не мог найти решение.HTTP Live Streaming -Play from Bundle

Я пытаюсь воспроизвести файл m3u8 из комплекта. Я успешно передал его по http. Но мне действительно нужно играть в кино из комплекта и хотелось использовать потоковое трансляцию в прямом эфире.

ответ

0

Шаг 1: Загрузите файл & сохранить

NSError *err = nil; 
NSString *url = [[NSString stringWithFormat:@"http://www.example.com/playlist.m3u8"] stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding]; 
NSString *the_file = [NSString stringWithContentsOfURL:[NSURL URLWithString:url] encoding:NSUTF8StringEncoding error:&err]; 
if(err != nil) { 
    // do some error handling, e.g. NSLog(@"Fail: %@", [err localizedDescription]); 
} else { 
    // save the file (see Step 2) 
} 

Шаг 2: Сохраните файл

Вы можете либо сохранить его в файл или сохранить его как объект.

// сохранить как файл

NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES); 
NSString *docDirectory = [paths objectAtIndex:0]; 
NSString *fileName = [NSString stringWithFormat:@"%@/playlist.m3u8", docDirectory]; 
[the_file writeToFile:fileName atomically:NO encoding:NSASCIIStringEncoding error:nil]; 

// OR, save as object 
[[NSUserDefaults standardUserDefaults] setObject:the_file forKey:@"MY_M3U8"]; 

Шаг 3: Прочитайте файл

// read from file 
NSString *textPath = [docDirectory stringByAppendingPathComponent:@"playlist.m3u8"]; 
// the FILE is loaded 


// OR, read from object 
NSString *content = [[NSUserDefaults standardUserDefaults] stringForKey:@"MY_M3U8"]; 
// it will contain the CONTENT of file 

Шаг 4: играть его в проигрывателе