に保存されたファイルで動作させることはこれが私の最初の本当のプロジェクトです。私は、AVFoundationを使って数秒のビデオをキャプチャし、これをドキュメントディレクトリのファイルに出力するアプリを持っていて、HTTPとPHPスクリプトを使って自分のウェブサイトにアップロードする前にビデオをプレビューすることができます。iPhone IOSビデオファイルアップローダをドキュメントディレクトリ
すべてのビデオキャプチャとプレビューは完全に機能しますが、私はビデオファイルのアップロードに固執しています。
このsimpleSDKビデオでは、アプリのメインバンドルに保存されているビデオファイルを使用して目的の効果を達成する方法をたくさん学びました。
もともとアップロードする準備ができてビデオデータを設定するチュートリアルのコードは次のように見えた:
はNSData *videoData = [NSData dataWithContentsOfFile:[[NSBundle mainBundle] pathForResource:@"Movie" ofType:@"mov"]];
NSString *urlString = @"http://www.iphonedevnation.com/video-tutorial/upload.php";
私がアップロードする必要がビデオファイルのファイル名は常に一意とCFUUIDCreateStringを使用して生成されます。この文字列をドキュメントディレクトリのパスに結合し、最後に ".mov"を追加し、後で取り出すためにテキストファイルに保存します。
これはすべて私がファイルからファイル名を取得して、アプリケーションの別の場所でムービークリップをプレビューするために使用できるようになりました。
私のパスはNSStringにあり、NSURLに変換しようとしましたが、NSData * videoData .........ラインで動作するようにファイルサフィックスを削除しようとしましたが、コンパイルされません。私は "セレクタ 'dataWithContentsOfFile:ofTypeのための既知のクラスメソッドがありません。エラー:私はiOS 5をターゲットにしており、ARCとストーリーボードでXcode 4.3を使用しています。
私はこの5時間の最善の部分をしてくれましたので、誰かが助けてくれることを願っています。 NSURLとNSStringのは、次のとおりです。
NSString *content = [[NSString alloc] initWithContentsOfFile:lastSavedTalentFilenamePath
usedEncoding:nil
error:nil];
NSLog(@"content=%@",content);
//Need to now remove the '.mov' file type identifier
NSString *shortContent= [content substringToIndex:[content length]-4];
NSLog(@"***************shortContent***************%@", shortContent);
NSURL *convertedContent = [NSURL fileURLWithPath:shortContent];
NSLog(@"***************convertedContent***********%@",convertedContent);
NSData *videoData = [NSData dataWithContentsOfFile:convertedContent ofType:@"mov"];];
'ofType'は元のコードから残されています。あなたは正しい方向に私を指摘しましたが、私は今それを働かせています。私はちょうどコードの部分を次のように変更しました: NSError * error = nil; NSData * videoData = [NSData dataWithContentsOfFile:コンテンツオプション:NSMappedReadエラー:&エラー]; – Headstock67