2013-03-15 95 views
6

後でオフラインで再生するために、誰かが私をガイドして、ローカルからm3u8ファイルをURLからどのように保存することができますか? EXT-X-ALLOW-CACHEは、私は、URLから直接&プレイM3U8をストリーミングすることができ、このmatter.`iPhone用m3u8ファイル - 後で再生するためにローカルに保存する方法

NSURLRequest* request = [NSURLRequest requestWithURL:url cachePolicy:NSURLRequestUseProtocolCachePolicy timeoutInterval:60.0]; 
NSURLConnection *connection=[[NSURLConnection alloc]initWithRequest:request delegate:self]; 
NSLog(@"connection %@",connection);` 

で私を助けます。しかし、それをローカルに保存し、.tsファイルを解析して再生することはできません... Plsガイド。

+0

あなたはiOS Appでm3u8を保存しているということですか? – Raptor

+0

@shivanRaptor:はい – Daisy

+0

あなたの現在のコードを私たちに教えてください。あなたはどこにいらっしゃいましたか? – Raptor

答えて

-2

ステップ1:あなたがファイルとして保存、またはオブジェクトとして保存することができますいずれか

ファイルを保存します。&ステップ2

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) } 

保存ファイルをダウンロードします。

// save as file 
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:あなたはそれを行っている必要がありますあなたのプレーヤーで

を、それを再生します。私が書く必要はない、はい?

+0

私はTSファイルを保存できましたが、再生できませんでした。暗号化された形式です。おそらく私は解読鍵を取得していません。これはEXT-X-ALLOW-CACHE = Yesを持つ必要があります。 Plsは – Daisy

+0

あなたがそれが解読されているとは言わなかったことを示唆します。解読するためには、暗号化の方法を知らなければなりません。 – Raptor

+1

@Raptor、ローカルに保存されている.m3u8ファイルを再生できますか?私が言う限りでは、プレーヤーはそれをサポートしていません - ファイルはHTTP経由でダウンロードする必要があります(はい、私はそれがダムだと分かります)。ここで人々がそれを発見したスレッドのカップルです:1)http://stackoverflow.com/questions/3199232/mpmovieplayercontroller-and-local-m3u8-files 2)http://stackoverflow.com/questions/15427360/how -to-play-m3u8-or-ts-file-in-ios –

関連する問題