我試圖上傳一個視頻到服務器。我有兩種選擇來上傳視頻。首先是,把視頻上傳到服務器。第二個是,從照片庫中選擇視頻並將其上傳到服務器。iOS上的視頻上傳到服務器
第1步: 在這種情況下,將視頻並上傳到服務器運行良好。
我從服務器得到的迴應是「返回字符串:{」jsonstatus「:」ok「,」message「:」感謝您的發帖。「}」。
現在我嘗試從服務器獲取此視頻。在media_file中顯示「x.x.x.x/video/96b8954fbed797500da708fd7bad2261video.mov」 - 我成功播放了該視頻。
第2步: 但是,當我從照片庫中選擇視頻,它成功地選擇了視頻。現在我發佈這個視頻到服務器。
我從服務器得到的迴應是「返回字符串:{」jsonstatus「:」ok「,」message「:」感謝您的發帖。「}」。
現在我嘗試從服務器獲取此視頻。在media_file提示「無效文件」
正在使用選擇視頻,
- (IBAction)act_UploadVideoBtn:(id)sender
{
UIImagePickerController *imagePicker = [[UIImagePickerController alloc] init];
imagePicker.delegate = self;
imagePicker.sourceType = UIImagePickerControllerSourceTypePhotoLibrary;
imagePicker.mediaTypes = [[NSArray alloc] initWithObjects:(NSString *)kUTTypeMovie, nil];
[self presentViewController:imagePicker animated:YES completion:NULL];
}
和委託方法,
- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info {
// movieURL = [info valueForKey:UIImagePickerControllerMediaURL];
//
// [picker dismissViewControllerAnimated:YES completion:NULL];
NSString *mediaType = [info objectForKey: UIImagePickerControllerMediaType];
if (CFStringCompare ((__bridge CFStringRef) mediaType, kUTTypeMovie, 0) == kCFCompareEqualTo) {
NSString *moviePath = [[info objectForKey:UIImagePickerControllerMediaURL] path];
// NSLog(@"%@",moviePath);
movieURL=(NSURL*)[info objectForKey:UIImagePickerControllerMediaURL];
if (UIVideoAtPathIsCompatibleWithSavedPhotosAlbum (moviePath)) {
UISaveVideoAtPathToSavedPhotosAlbum (moviePath, nil, nil, nil);
}
}
[picker dismissViewControllerAnimated:YES completion:NULL];
}
提供任何想法來解決這個問題。