Задать вопрос
@teddyfox

Получение mjpeg видеопотока с ip-камеры в iOS приложение?

Здравствуйте. Пытаюсь асинхронно (с помощью NSURLConnection) грузить mjpeg видеопоток с ИП-камеры в iOS7 приложение, отображая его в UIImageView. Экран приложения в iOSSimulator'е остаается пустым. Где в моем коде плюха? Я - новичок в iOS-программировании. Прочитал много материалов по приему mjpeg видеопотока. Спасибо.
//  ViewController.h
#import <UIKit/UIKit.h>
@interface ViewController : UIViewController
@property (weak, nonatomic) IBOutlet UIImageView *cameraView;
@end
NSMutableData *dataResponse;    // buffer for accumulating data
====================================================
//  ViewController.m
#import "ViewController.h"
@interface ViewController ()
@end

@implementation ViewController
- (void)viewDidLoad {
    [super viewDidLoad];
    NSString *cameraURL = @"http://192.168.1.160:554/video.mjpg";
    NSURL *url = [NSURL URLWithString:cameraURL];
    NSURLRequest *requestURLcamera = [NSURLRequest requestWithURL:url];	// URL request  
    NSURLConnection *connection = [[NSURLConnection alloc] initWithRequest:requestURLcamera delegate:self startImmediately:YES];	// connecting
}
- (void)didReceiveMemoryWarning { [super didReceiveMemoryWarning];}

- (void)connection: (NSURLConnection *) connection didReceiveData:(NSData *)data
{    [dataResponse appendData:data]; }	// accumulating data

- (void)connection: (NSURLConnection *) connection didReceiveResponse:(NSURLResponse *)response
{    UIImage *imageZ = [UIImage imageWithData:dataResponse];     // creating image
    _cameraView.image = imageZ;                     // image to UIImageView
    dataResponse = nil;                                      // reset of dataResponse
}
@end
  • Вопрос задан
  • 2542 просмотра
Подписаться 2 Оценить Комментировать
Пригласить эксперта
Ответы на вопрос 1
Flanker_4
@Flanker_4
Из того, что я увидел - у Вас не создается dataResponse
Нужно либо в viewDidLoad, либо в методе делегата, где начинается получение данных написать
dataResponse = [NSMutableData dataWithCapacity:100]; //capacity написал "от фанаря"


P.S. А вообще, вы смотрите в старые уроки. NSURLConnection - deprecated уже
поищите уроки по NSURLSession. Или AFNetworking (это стороння библиотека)
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы