У меня есть веб-сервер с изображением livecam.
Он имеет два режима:Livestream: Эффективность JPEG против MJPEG
- JPEG (отображает текущее изображение при обновлении страницы)
- MJPEG (отображает MJPEG поток)
На данный момент я использую режим JPEG. Я загружаю и показываю изображение 20 раз в секунду.
Это прекрасно работает без каких-либо задержек.
Но у него довольно высокая загрузка процессора (около 70% из 200% на моем iPhone 6S).
Код:
if let url = NSURL(string: "http://1.1.1.181:8085/?action=snapshot") {
let request = NSURLRequest(URL: url, cachePolicy: .ReloadIgnoringLocalAndRemoteCacheData , timeoutInterval: 1)
NSURLConnection.sendAsynchronousRequest(request, queue: NSOperationQueue.mainQueue()) {
(response: NSURLResponse?, data: NSData?, error: NSError?) -> Void in
if data != nil {
self.imageView.image = UIImage(data: data!)
}
}
}
Мои вопросы:
- Есть ли более эффективный способ загрузки и отображения изображения с в веб-страницу?
- Эффективнее использовать поток MJPEG. (Если да: , какую схему вы можете порекомендовать)?
определяют эффективный. Что конкретно вы связываете для оптимизации? – szatmary
Процессор и аккумулятор. – 123FLO321
Я предполагаю, что вы имеете в виду на клиенте. Тогда вы тоже не хотите этого делать. Кодируйте на стороне сервера видео h264. В телефоне имеется специальное оборудование для воспроизведения. – szatmary