SlideShare une entreprise Scribd logo
1  sur  13
Télécharger pour lire hors ligne
Особенности передачи и обработки видео данных. Приправа из кодеков или с чем едят видеопотоки? 
Дмитрий Валуев 
МаксетЛайн 
http://www.feelinhome.ru/ 
9-я конференция .NETразработчиков 
12 октября 2014 
dotnetconf.ru
2 
Решаемые задачи 
Видеонаблюдение и видеофиксация 
Системы видеонаблюдения, контент для взрослых, торговля 
Стриминг и рестриминг(потоковое вещание и ретрансляция). 
Транскодинг, Телевидение, IP телевидение 
Телеконференции 
Связь в реальном времени 
Видеохостинг 
Хостинг фильмов, контент для взрослых 
Развитие каналов передачи данных 
Видеоаналитика 
Распознавания лиц, номеров автомобилей и.т.д., штрафы 
БПЛА 
Видеонаблюдение в реальном времени. 
Наблюдение с телефонов и планшетов в реальном времени.
3 
Ликбез 
Кодеки: 
•MJPEG (Motion JPEG) 
•H263 
•H264 
•H265 
Расширение файла (URL потока) 
•Может быть каким угодно. Не верь своим глазам Нео! 
Контейнеры: 
Контейнеры файлов: 
•Mkv 
•Avi 
•MPEG 
Контейнеры потоков: 
•RTSP (UDP, TCP/IP) multicast broadcast unicast 
•RTMP(TCP/IP) 
•HLS (HTTP) 
•HDS (HTTP)
4 
Кодеки 
MJPEG 
•Покадровый метод видеосжатия, основной особенностью которого является 
Сжатиекаждогоотдельного кадравидеопотока спомощью алгоритмасжатия 
изображенийJPEG. 
•При сжатии методом MJPG межкадровая разница не учитывается. 
H263 
•Cтандарт сжатия видео, предназначенный для передачи видео. Применяется в 
программном обеспечении для видеоконференций. 
•Используемые алгоритмы охраняются патентами. 
•ITU-T-Международный консультационный комитет по телефонии и телеграфии 
H264 
•Жадность не порок? 
•Cтандарт сжатия видео, предназначенный для передачи видео. 
•Встроен в «железо» большинства устройств. 
•Используемыеалгоритмыохраняютсяпатентами: 
•Microsoft, Fujitsu, Philips, Apple, Samsung, Cisco, Toshiba, Panasonic 
•ITU-T 
•СтандартITU-T H.264 иISO/IEC MPEG-4 Part 10 
H265 
-Видишь суслика? 
-Нет. 
-А он есть!
5 
Видео потоки 
RTSP 
(UDP, TCP/IP) multicast broadcast unicast 
•Потоковый протокол реального времени (Real Time Streaming Protocol, RTSP), разработанный IETF в 1998 году и описанный в RFC 2326, является прикладным протоколом, предназначенным для использования в системах, работающих с мультимедиа данными, и позволяющий клиенту удалённо управлять потоком данных с сервера, предоставляя возможность выполнения команд, таких как «Старт», «Стоп», а также доступа по времени к файлам, расположенным на сервере. 
•RTP 
•RTCP 
•Чем играть? 
RTMP 
(TCP/IP) 
•Проприетарный протокол потоковой передачи данных, в основном используется для передачи потокового видео и аудиопотоков через интернет. 
•Серверная часть реализована авторами протокола Adobe Inc, во Flash Media Server, 
•Существуют недорогие аналоги протокола, например, Wowza Media Server. Модули для сервера должны быть написаны на Java. 
•Только flash? 
HLS(HTTP) -HTTP Live Streaming 
•HTTP, Создан Apple Inc. Является частью QuickTime, Safari, OS X, and iOS software, есть аппаратнаяподдержка. 
HDS(HTTP) 
•Задержка на буфер. 
•Google?
6 
VLC media player 
VLC —бесплатныйисвободныйкросс-платформенныймедиаплееримедиаплатформас открытым исходным кодом. 
http://www.videolan.org/vlc/ 
Может: 
•Играть 
•Писать 
•Рестримить 
•Транскодировать 
•Менять кодек 
А в чем подвох?
7 
FFmpeg 
Набор свободных библиотек с открытым исходным кодом, которые позволяют записывать, конвертировать и передавать цифровые аудио-и видеозаписи в различных форматах. 
ffmpegсостоит из следующих компонентов: 
•ffmpeg—утилита командной строки для конвертирования видео файла из одного формата в другой. С её помощью можно также захватывать видео в реальном времени с TV-карты. 
•ffserver—HTTP-(RTSP в настоящее время разрабатывается) потоковый сервер для видео-или радиовещания. 
•ffplay—простой медиаплеер, основанный на SDL и библиотеках FFmpeg. 
•libavcodec—библиотека со всеми аудио/видеокодеками. Большинство кодеков были разработаны «с нуля» для обеспечения наилучшей производительности. 
•libavformat—библиотека с мультиплексорами и демультиплексорами для различных аудио-и видеоформатов. 
•libavutil—вспомогательная библиотека со стандартными общими подпрограммами для различных компонентов ffmpeg. Включает Adler-32, CRC, MD5, SHA1, LZO-декомпрессор, Base64- кодер/декодер, DES-шифровальщик/расшифровщик, RC4-шифровальщик/расшифровщик и AES- шифровальщик/расшифровщик. 
•libpostproc—библиотека стандартных подпрограмм обработки видео. 
•libswscale—библиотека для масштабирования видео. 
•libavfilter—замена vhook, которая позволяет изменять видеопоток между декодером и кодером «на лету».
8 
FluorineFx 
.NET Транскодинг и рестриминг 
Бесплатная, с открытым кодом. 
http://www.fluorinefx.com/
9 
Чем играть? 
•VLC 
•JWplayerhttp://www.jwplayer.com/about-jwplayer/ 
•Flowplayer 
https://flowplayer.org/ 
•Множествофлешплееров. Adobe Flash (ранее Macromedia Flash) 
Когда будет HTML5плеер?
10 
Видеокамеры 
•Аналоговые-ТВЛ 
•IPкамеры–разрешение(мегапиксели). 
•WEBкамеры–разрешение(мегапиксели). 
Битрейт (ширина потока) 
Фокусное расстояние 
HDR 
Выдержка 
Диафрагма 
Физический размер матрицы 
Работа камеры на сером IP
11 
Звук 
•ACC 
•G711 
•G921
12 
Рынок 
Условно четыре группы: 
«Железные» решения 
•Cisco VSM 
•Huawei IMS 
Десятки тысяч потоков 
Коммерческие продукты 
•Microsoft (Microsoft Lync Server 2013) 
•Pelco (schneider electric) 
•Flussonic(erlyvideo) –Erlang 
Тысячи потоков 
Opensource 
•Wowza-Java 
До 40 потоков 
“Китайские”видеорегистраторы 
До 16 потоков
13 
Спасибо за внимание 
Дмитрий Валуев 
Группа компаний РОН-Телеком 
valuev@rontel.ru

Contenu connexe

Tendances

Александр Тоболь, Кадры решают все, или стриминг видео в Одноклассниках
Александр Тоболь, Кадры решают все, или стриминг видео в ОдноклассникахАлександр Тоболь, Кадры решают все, или стриминг видео в Одноклассниках
Александр Тоболь, Кадры решают все, или стриминг видео в ОдноклассникахTanya Denisyuk
 
Hl++ Ребров Федоровских
Hl++ Ребров ФедоровскихHl++ Ребров Федоровских
Hl++ Ребров ФедоровскихOntico
 
Sama5d3: how to run linux on it
Sama5d3: how to run linux on itSama5d3: how to run linux on it
Sama5d3: how to run linux on itPavel Kurochkin
 
Сергей Рыжиков, Александр Сербул (1С-Битрикс)
Сергей Рыжиков, Александр Сербул (1С-Битрикс)Сергей Рыжиков, Александр Сербул (1С-Битрикс)
Сергей Рыжиков, Александр Сербул (1С-Битрикс)Ontico
 
Эволюция стандартов и технологий видеосвязи. Докладчик: Cергей Юцайтис, Cisco
Эволюция стандартов и технологий видеосвязи. Докладчик: Cергей Юцайтис, CiscoЭволюция стандартов и технологий видеосвязи. Докладчик: Cергей Юцайтис, Cisco
Эволюция стандартов и технологий видеосвязи. Докладчик: Cергей Юцайтис, CiscoTrueConf
 
Заметки о TrueConf, Константин Смирнов
Заметки о TrueConf, Константин СмирновЗаметки о TrueConf, Константин Смирнов
Заметки о TrueConf, Константин СмирновTrueConf__
 
Видео+Конференция 2015: ВКС на миллион зрителей: видеотрансляции, их тонкости...
Видео+Конференция 2015: ВКС на миллион зрителей: видеотрансляции, их тонкости...Видео+Конференция 2015: ВКС на миллион зрителей: видеотрансляции, их тонкости...
Видео+Конференция 2015: ВКС на миллион зрителей: видеотрансляции, их тонкости...TrueConf__
 
Алексей Котов. "Разделяй и властвуй". IT-пятница, октябрь 2018
Алексей Котов. "Разделяй и властвуй". IT-пятница, октябрь 2018Алексей Котов. "Разделяй и властвуй". IT-пятница, октябрь 2018
Алексей Котов. "Разделяй и властвуй". IT-пятница, октябрь 2018GigaCloud
 
iRidium для AV & Custom Systems и Global Caché
iRidium для AV & Custom Systems и Global Caché iRidium для AV & Custom Systems и Global Caché
iRidium для AV & Custom Systems и Global Caché iRidiumMobile365
 
Сетевая подсистема в L4Re и Genode
Сетевая подсистема в L4Re и GenodeСетевая подсистема в L4Re и Genode
Сетевая подсистема в L4Re и GenodeVasily Sartakov
 
архивация данных
архивация данныхархивация данных
архивация данныхANSevrukova
 
Новые возможности TrueConf Server 4.3.8
Новые возможности TrueConf Server 4.3.8Новые возможности TrueConf Server 4.3.8
Новые возможности TrueConf Server 4.3.8TrueConf
 
презентация1
презентация1презентация1
презентация1dverzapili
 
Vvedenievturbopascal
VvedenievturbopascalVvedenievturbopascal
VvedenievturbopascalSerghei Urban
 
poudriere или как я перестал волноваться и полюбил pkg
poudriere или как я перестал волноваться и полюбил pkgpoudriere или как я перестал волноваться и полюбил pkg
poudriere или как я перестал волноваться и полюбил pkgAndrey Fesenko
 
Сергей Арнаут - Stream yourself with Android
Сергей Арнаут - Stream yourself with AndroidСергей Арнаут - Stream yourself with Android
Сергей Арнаут - Stream yourself with AndroidUA Mobile
 
Проникновение в Docker с примерами
Проникновение в Docker с примерамиПроникновение в Docker с примерами
Проникновение в Docker с примерамиДмитрий Столяров
 

Tendances (18)

Александр Тоболь, Кадры решают все, или стриминг видео в Одноклассниках
Александр Тоболь, Кадры решают все, или стриминг видео в ОдноклассникахАлександр Тоболь, Кадры решают все, или стриминг видео в Одноклассниках
Александр Тоболь, Кадры решают все, или стриминг видео в Одноклассниках
 
Hl++ Ребров Федоровских
Hl++ Ребров ФедоровскихHl++ Ребров Федоровских
Hl++ Ребров Федоровских
 
Sama5d3: how to run linux on it
Sama5d3: how to run linux on itSama5d3: how to run linux on it
Sama5d3: how to run linux on it
 
Сергей Рыжиков, Александр Сербул (1С-Битрикс)
Сергей Рыжиков, Александр Сербул (1С-Битрикс)Сергей Рыжиков, Александр Сербул (1С-Битрикс)
Сергей Рыжиков, Александр Сербул (1С-Битрикс)
 
Эволюция стандартов и технологий видеосвязи. Докладчик: Cергей Юцайтис, Cisco
Эволюция стандартов и технологий видеосвязи. Докладчик: Cергей Юцайтис, CiscoЭволюция стандартов и технологий видеосвязи. Докладчик: Cергей Юцайтис, Cisco
Эволюция стандартов и технологий видеосвязи. Докладчик: Cергей Юцайтис, Cisco
 
Заметки о TrueConf, Константин Смирнов
Заметки о TrueConf, Константин СмирновЗаметки о TrueConf, Константин Смирнов
Заметки о TrueConf, Константин Смирнов
 
Видео+Конференция 2015: ВКС на миллион зрителей: видеотрансляции, их тонкости...
Видео+Конференция 2015: ВКС на миллион зрителей: видеотрансляции, их тонкости...Видео+Конференция 2015: ВКС на миллион зрителей: видеотрансляции, их тонкости...
Видео+Конференция 2015: ВКС на миллион зрителей: видеотрансляции, их тонкости...
 
Алексей Котов. "Разделяй и властвуй". IT-пятница, октябрь 2018
Алексей Котов. "Разделяй и властвуй". IT-пятница, октябрь 2018Алексей Котов. "Разделяй и властвуй". IT-пятница, октябрь 2018
Алексей Котов. "Разделяй и властвуй". IT-пятница, октябрь 2018
 
iRidium для AV & Custom Systems и Global Caché
iRidium для AV & Custom Systems и Global Caché iRidium для AV & Custom Systems и Global Caché
iRidium для AV & Custom Systems и Global Caché
 
Сетевая подсистема в L4Re и Genode
Сетевая подсистема в L4Re и GenodeСетевая подсистема в L4Re и Genode
Сетевая подсистема в L4Re и Genode
 
архивация данных
архивация данныхархивация данных
архивация данных
 
Новые возможности TrueConf Server 4.3.8
Новые возможности TrueConf Server 4.3.8Новые возможности TrueConf Server 4.3.8
Новые возможности TrueConf Server 4.3.8
 
презентация1
презентация1презентация1
презентация1
 
Vvedenievturbopascal
VvedenievturbopascalVvedenievturbopascal
Vvedenievturbopascal
 
poudriere или как я перестал волноваться и полюбил pkg
poudriere или как я перестал волноваться и полюбил pkgpoudriere или как я перестал волноваться и полюбил pkg
poudriere или как я перестал волноваться и полюбил pkg
 
Freebsd11
Freebsd11Freebsd11
Freebsd11
 
Сергей Арнаут - Stream yourself with Android
Сергей Арнаут - Stream yourself with AndroidСергей Арнаут - Stream yourself with Android
Сергей Арнаут - Stream yourself with Android
 
Проникновение в Docker с примерами
Проникновение в Docker с примерамиПроникновение в Docker с примерами
Проникновение в Docker с примерами
 

En vedette

Inversion of Control в .NET
Inversion of Control в .NETInversion of Control в .NET
Inversion of Control в .NETDotNetConf
 
Введение в реактивный .NET
Введение в реактивный .NETВведение в реактивный .NET
Введение в реактивный .NETDotNetConf
 
от авгиевых конюшен к звездам
от авгиевых конюшен к звездамот авгиевых конюшен к звездам
от авгиевых конюшен к звездамLev Goncharov
 
Внутреннее устройство GC
Внутреннее устройство GCВнутреннее устройство GC
Внутреннее устройство GCtym32167
 
Машинное обучение на платформе .NET
Машинное обучение на платформе .NETМашинное обучение на платформе .NET
Машинное обучение на платформе .NETDotNetConf
 
Customer satisfaction для программистов
Customer satisfaction для программистовCustomer satisfaction для программистов
Customer satisfaction для программистовAlexander Byndyu
 

En vedette (7)

Inversion of Control в .NET
Inversion of Control в .NETInversion of Control в .NET
Inversion of Control в .NET
 
Введение в реактивный .NET
Введение в реактивный .NETВведение в реактивный .NET
Введение в реактивный .NET
 
от авгиевых конюшен к звездам
от авгиевых конюшен к звездамот авгиевых конюшен к звездам
от авгиевых конюшен к звездам
 
Внутреннее устройство GC
Внутреннее устройство GCВнутреннее устройство GC
Внутреннее устройство GC
 
Know Your Security Model
Know Your Security ModelKnow Your Security Model
Know Your Security Model
 
Машинное обучение на платформе .NET
Машинное обучение на платформе .NETМашинное обучение на платформе .NET
Машинное обучение на платформе .NET
 
Customer satisfaction для программистов
Customer satisfaction для программистовCustomer satisfaction для программистов
Customer satisfaction для программистов
 

Similaire à Особенности передачи и обработки видео данных. Приправа из кодеков или с чем едят видеопотоки?

Видео+Конференция 2015: ВКС на миллион зрителей: видеотрансляции, их тонкости...
Видео+Конференция 2015: ВКС на миллион зрителей: видеотрансляции, их тонкости...Видео+Конференция 2015: ВКС на миллион зрителей: видеотрансляции, их тонкости...
Видео+Конференция 2015: ВКС на миллион зрителей: видеотрансляции, их тонкости...TrueConf
 
Video 111127013709-phpapp02
Video 111127013709-phpapp02Video 111127013709-phpapp02
Video 111127013709-phpapp02Newlink
 
Video 111127013709-phpapp02
Video 111127013709-phpapp02Video 111127013709-phpapp02
Video 111127013709-phpapp02LLC NewLink
 
Сервер Flash-вещаний (RTMP) на Python или создание высоконагруженных сетевых ...
Сервер Flash-вещаний (RTMP) на Python или создание высоконагруженных сетевых ...Сервер Flash-вещаний (RTMP) на Python или создание высоконагруженных сетевых ...
Сервер Flash-вещаний (RTMP) на Python или создание высоконагруженных сетевых ...Media Gorod
 
"Как заработать на внедрении отечественной системы ВКС в условиях импортозаме...
"Как заработать на внедрении отечественной системы ВКС в условиях импортозаме..."Как заработать на внедрении отечественной системы ВКС в условиях импортозаме...
"Как заработать на внедрении отечественной системы ВКС в условиях импортозаме...TrueConf
 
Методы и архитектура интеграции системы унифицированных коммуникаций Cisco с ...
Методы и архитектура интеграции системы унифицированных коммуникаций Cisco с ...Методы и архитектура интеграции системы унифицированных коммуникаций Cisco с ...
Методы и архитектура интеграции системы унифицированных коммуникаций Cisco с ...Cisco Russia
 
Тренинг TrueConf, часть2
Тренинг TrueConf, часть2Тренинг TrueConf, часть2
Тренинг TrueConf, часть2TrueConf
 
Презентация услуг компании
Презентация услуг компанииПрезентация услуг компании
Презентация услуг компанииNikolai Ptitsyn
 
Система подготовки видео для стриминга на платформе ivi / Евгений Россинский ...
Система подготовки видео для стриминга на платформе ivi / Евгений Россинский ...Система подготовки видео для стриминга на платформе ivi / Евгений Россинский ...
Система подготовки видео для стриминга на платформе ivi / Евгений Россинский ...Ontico
 
Электронный архив на Alfresco
Электронный архив на AlfrescoЭлектронный архив на Alfresco
Электронный архив на AlfrescoOksana Kurysheva
 
Erlyvideo — сервер потокового видео.
Erlyvideo — сервер потокового видео.Erlyvideo — сервер потокового видео.
Erlyvideo — сервер потокового видео.Max Lapshin
 
Технологии и архитектура систем ВКС
Технологии и архитектура систем ВКСТехнологии и архитектура систем ВКС
Технологии и архитектура систем ВКСAndrew Vlaskin
 
"Особенности записи звука нативными технологиями браузеров" — Федор Котов, Mo...
"Особенности записи звука нативными технологиями браузеров" — Федор Котов, Mo..."Особенности записи звука нативными технологиями браузеров" — Федор Котов, Mo...
"Особенности записи звука нативными технологиями браузеров" — Федор Котов, Mo...MoscowJS
 
Презентация "Это что-то новенькое"
Презентация "Это что-то новенькое"Презентация "Это что-то новенькое"
Презентация "Это что-то новенькое"Дмитрий Костюк
 

Similaire à Особенности передачи и обработки видео данных. Приправа из кодеков или с чем едят видеопотоки? (20)

Видео+Конференция 2015: ВКС на миллион зрителей: видеотрансляции, их тонкости...
Видео+Конференция 2015: ВКС на миллион зрителей: видеотрансляции, их тонкости...Видео+Конференция 2015: ВКС на миллион зрителей: видеотрансляции, их тонкости...
Видео+Конференция 2015: ВКС на миллион зрителей: видеотрансляции, их тонкости...
 
Видео в сети
Видео в сетиВидео в сети
Видео в сети
 
Video 111127013709-phpapp02
Video 111127013709-phpapp02Video 111127013709-phpapp02
Video 111127013709-phpapp02
 
Video 111127013709-phpapp02
Video 111127013709-phpapp02Video 111127013709-phpapp02
Video 111127013709-phpapp02
 
Сервер Flash-вещаний (RTMP) на Python или создание высоконагруженных сетевых ...
Сервер Flash-вещаний (RTMP) на Python или создание высоконагруженных сетевых ...Сервер Flash-вещаний (RTMP) на Python или создание высоконагруженных сетевых ...
Сервер Flash-вещаний (RTMP) на Python или создание высоконагруженных сетевых ...
 
"Как заработать на внедрении отечественной системы ВКС в условиях импортозаме...
"Как заработать на внедрении отечественной системы ВКС в условиях импортозаме..."Как заработать на внедрении отечественной системы ВКС в условиях импортозаме...
"Как заработать на внедрении отечественной системы ВКС в условиях импортозаме...
 
pyFMS
pyFMSpyFMS
pyFMS
 
pyFMS
pyFMSpyFMS
pyFMS
 
Методы и архитектура интеграции системы унифицированных коммуникаций Cisco с ...
Методы и архитектура интеграции системы унифицированных коммуникаций Cisco с ...Методы и архитектура интеграции системы унифицированных коммуникаций Cisco с ...
Методы и архитектура интеграции системы унифицированных коммуникаций Cisco с ...
 
Тренинг TrueConf, часть2
Тренинг TrueConf, часть2Тренинг TrueConf, часть2
Тренинг TrueConf, часть2
 
Презентация услуг компании
Презентация услуг компанииПрезентация услуг компании
Презентация услуг компании
 
Система подготовки видео для стриминга на платформе ivi / Евгений Россинский ...
Система подготовки видео для стриминга на платформе ivi / Евгений Россинский ...Система подготовки видео для стриминга на платформе ivi / Евгений Россинский ...
Система подготовки видео для стриминга на платформе ivi / Евгений Россинский ...
 
Электронный архив на Alfresco
Электронный архив на AlfrescoЭлектронный архив на Alfresco
Электронный архив на Alfresco
 
Web RTC - Part 1
Web RTC - Part 1 Web RTC - Part 1
Web RTC - Part 1
 
12.pptx
12.pptx12.pptx
12.pptx
 
Erlyvideo — сервер потокового видео.
Erlyvideo — сервер потокового видео.Erlyvideo — сервер потокового видео.
Erlyvideo — сервер потокового видео.
 
Технологии и архитектура систем ВКС
Технологии и архитектура систем ВКСТехнологии и архитектура систем ВКС
Технологии и архитектура систем ВКС
 
"Особенности записи звука нативными технологиями браузеров" — Федор Котов, Mo...
"Особенности записи звука нативными технологиями браузеров" — Федор Котов, Mo..."Особенности записи звука нативными технологиями браузеров" — Федор Котов, Mo...
"Особенности записи звука нативными технологиями браузеров" — Федор Котов, Mo...
 
Презентация "Это что-то новенькое"
Презентация "Это что-то новенькое"Презентация "Это что-то новенькое"
Презентация "Это что-то новенькое"
 
флеш и сервер
флеш и серверфлеш и сервер
флеш и сервер
 

Plus de DotNetConf

Как грабить корованы
Как грабить корованыКак грабить корованы
Как грабить корованыDotNetConf
 
Как анимировать тысячи объектов на карте и не подвесить браузер
Как анимировать тысячи объектов на карте и не подвесить браузерКак анимировать тысячи объектов на карте и не подвесить браузер
Как анимировать тысячи объектов на карте и не подвесить браузерDotNetConf
 
Микросервисы: взгляд сверху и в бок
Микросервисы: взгляд сверху и в бокМикросервисы: взгляд сверху и в бок
Микросервисы: взгляд сверху и в бокDotNetConf
 
Разработка надежных параллельных, распределенных приложений: быстро и дешево
Разработка надежных параллельных, распределенных приложений: быстро и дешевоРазработка надежных параллельных, распределенных приложений: быстро и дешево
Разработка надежных параллельных, распределенных приложений: быстро и дешевоDotNetConf
 
Как приручить реактивное программирование
Как приручить реактивное программированиеКак приручить реактивное программирование
Как приручить реактивное программированиеDotNetConf
 
Делаем очередь поверх Кассандры
Делаем очередь поверх КассандрыДелаем очередь поверх Кассандры
Делаем очередь поверх КассандрыDotNetConf
 
К искусству записи пользовательских историй
К искусству записи пользовательских историйК искусству записи пользовательских историй
К искусству записи пользовательских историйDotNetConf
 
Как это будет: ASP.NET Core
Как это будет: ASP.NET CoreКак это будет: ASP.NET Core
Как это будет: ASP.NET CoreDotNetConf
 
Continuous Delivery для ASP.NET MVC проекта под Linux
Continuous Delivery для ASP.NET MVC проекта под LinuxContinuous Delivery для ASP.NET MVC проекта под Linux
Continuous Delivery для ASP.NET MVC проекта под LinuxDotNetConf
 
Кроссплатформенная библиотека для Android и iOS: за и против
Кроссплатформенная библиотека для Android и iOS: за и противКроссплатформенная библиотека для Android и iOS: за и против
Кроссплатформенная библиотека для Android и iOS: за и противDotNetConf
 
Быстрый бэкенд с parse.com
Быстрый бэкенд с parse.comБыстрый бэкенд с parse.com
Быстрый бэкенд с parse.comDotNetConf
 
Kotlin в production. Как и зачем?
Kotlin в production. Как и зачем?Kotlin в production. Как и зачем?
Kotlin в production. Как и зачем?DotNetConf
 
Как жить в согласии с SOLID?
Как жить в согласии с SOLID?Как жить в согласии с SOLID?
Как жить в согласии с SOLID?DotNetConf
 
Многопоточное программирование на C#, путевые заметки
Многопоточное программирование на C#, путевые заметкиМногопоточное программирование на C#, путевые заметки
Многопоточное программирование на C#, путевые заметкиDotNetConf
 
Платформа Apache Hadoop
Платформа Apache HadoopПлатформа Apache Hadoop
Платформа Apache HadoopDotNetConf
 
Робототехника для прикладных программистов
Робототехника для прикладных программистовРобототехника для прикладных программистов
Робототехника для прикладных программистовDotNetConf
 
Разработка Windows 8 приложений глазами WPF/Silverlight программиста
Разработка Windows 8 приложений глазами WPF/Silverlight программистаРазработка Windows 8 приложений глазами WPF/Silverlight программиста
Разработка Windows 8 приложений глазами WPF/Silverlight программистаDotNetConf
 

Plus de DotNetConf (17)

Как грабить корованы
Как грабить корованыКак грабить корованы
Как грабить корованы
 
Как анимировать тысячи объектов на карте и не подвесить браузер
Как анимировать тысячи объектов на карте и не подвесить браузерКак анимировать тысячи объектов на карте и не подвесить браузер
Как анимировать тысячи объектов на карте и не подвесить браузер
 
Микросервисы: взгляд сверху и в бок
Микросервисы: взгляд сверху и в бокМикросервисы: взгляд сверху и в бок
Микросервисы: взгляд сверху и в бок
 
Разработка надежных параллельных, распределенных приложений: быстро и дешево
Разработка надежных параллельных, распределенных приложений: быстро и дешевоРазработка надежных параллельных, распределенных приложений: быстро и дешево
Разработка надежных параллельных, распределенных приложений: быстро и дешево
 
Как приручить реактивное программирование
Как приручить реактивное программированиеКак приручить реактивное программирование
Как приручить реактивное программирование
 
Делаем очередь поверх Кассандры
Делаем очередь поверх КассандрыДелаем очередь поверх Кассандры
Делаем очередь поверх Кассандры
 
К искусству записи пользовательских историй
К искусству записи пользовательских историйК искусству записи пользовательских историй
К искусству записи пользовательских историй
 
Как это будет: ASP.NET Core
Как это будет: ASP.NET CoreКак это будет: ASP.NET Core
Как это будет: ASP.NET Core
 
Continuous Delivery для ASP.NET MVC проекта под Linux
Continuous Delivery для ASP.NET MVC проекта под LinuxContinuous Delivery для ASP.NET MVC проекта под Linux
Continuous Delivery для ASP.NET MVC проекта под Linux
 
Кроссплатформенная библиотека для Android и iOS: за и против
Кроссплатформенная библиотека для Android и iOS: за и противКроссплатформенная библиотека для Android и iOS: за и против
Кроссплатформенная библиотека для Android и iOS: за и против
 
Быстрый бэкенд с parse.com
Быстрый бэкенд с parse.comБыстрый бэкенд с parse.com
Быстрый бэкенд с parse.com
 
Kotlin в production. Как и зачем?
Kotlin в production. Как и зачем?Kotlin в production. Как и зачем?
Kotlin в production. Как и зачем?
 
Как жить в согласии с SOLID?
Как жить в согласии с SOLID?Как жить в согласии с SOLID?
Как жить в согласии с SOLID?
 
Многопоточное программирование на C#, путевые заметки
Многопоточное программирование на C#, путевые заметкиМногопоточное программирование на C#, путевые заметки
Многопоточное программирование на C#, путевые заметки
 
Платформа Apache Hadoop
Платформа Apache HadoopПлатформа Apache Hadoop
Платформа Apache Hadoop
 
Робототехника для прикладных программистов
Робототехника для прикладных программистовРобототехника для прикладных программистов
Робототехника для прикладных программистов
 
Разработка Windows 8 приложений глазами WPF/Silverlight программиста
Разработка Windows 8 приложений глазами WPF/Silverlight программистаРазработка Windows 8 приложений глазами WPF/Silverlight программиста
Разработка Windows 8 приложений глазами WPF/Silverlight программиста
 

Особенности передачи и обработки видео данных. Приправа из кодеков или с чем едят видеопотоки?

  • 1. Особенности передачи и обработки видео данных. Приправа из кодеков или с чем едят видеопотоки? Дмитрий Валуев МаксетЛайн http://www.feelinhome.ru/ 9-я конференция .NETразработчиков 12 октября 2014 dotnetconf.ru
  • 2. 2 Решаемые задачи Видеонаблюдение и видеофиксация Системы видеонаблюдения, контент для взрослых, торговля Стриминг и рестриминг(потоковое вещание и ретрансляция). Транскодинг, Телевидение, IP телевидение Телеконференции Связь в реальном времени Видеохостинг Хостинг фильмов, контент для взрослых Развитие каналов передачи данных Видеоаналитика Распознавания лиц, номеров автомобилей и.т.д., штрафы БПЛА Видеонаблюдение в реальном времени. Наблюдение с телефонов и планшетов в реальном времени.
  • 3. 3 Ликбез Кодеки: •MJPEG (Motion JPEG) •H263 •H264 •H265 Расширение файла (URL потока) •Может быть каким угодно. Не верь своим глазам Нео! Контейнеры: Контейнеры файлов: •Mkv •Avi •MPEG Контейнеры потоков: •RTSP (UDP, TCP/IP) multicast broadcast unicast •RTMP(TCP/IP) •HLS (HTTP) •HDS (HTTP)
  • 4. 4 Кодеки MJPEG •Покадровый метод видеосжатия, основной особенностью которого является Сжатиекаждогоотдельного кадравидеопотока спомощью алгоритмасжатия изображенийJPEG. •При сжатии методом MJPG межкадровая разница не учитывается. H263 •Cтандарт сжатия видео, предназначенный для передачи видео. Применяется в программном обеспечении для видеоконференций. •Используемые алгоритмы охраняются патентами. •ITU-T-Международный консультационный комитет по телефонии и телеграфии H264 •Жадность не порок? •Cтандарт сжатия видео, предназначенный для передачи видео. •Встроен в «железо» большинства устройств. •Используемыеалгоритмыохраняютсяпатентами: •Microsoft, Fujitsu, Philips, Apple, Samsung, Cisco, Toshiba, Panasonic •ITU-T •СтандартITU-T H.264 иISO/IEC MPEG-4 Part 10 H265 -Видишь суслика? -Нет. -А он есть!
  • 5. 5 Видео потоки RTSP (UDP, TCP/IP) multicast broadcast unicast •Потоковый протокол реального времени (Real Time Streaming Protocol, RTSP), разработанный IETF в 1998 году и описанный в RFC 2326, является прикладным протоколом, предназначенным для использования в системах, работающих с мультимедиа данными, и позволяющий клиенту удалённо управлять потоком данных с сервера, предоставляя возможность выполнения команд, таких как «Старт», «Стоп», а также доступа по времени к файлам, расположенным на сервере. •RTP •RTCP •Чем играть? RTMP (TCP/IP) •Проприетарный протокол потоковой передачи данных, в основном используется для передачи потокового видео и аудиопотоков через интернет. •Серверная часть реализована авторами протокола Adobe Inc, во Flash Media Server, •Существуют недорогие аналоги протокола, например, Wowza Media Server. Модули для сервера должны быть написаны на Java. •Только flash? HLS(HTTP) -HTTP Live Streaming •HTTP, Создан Apple Inc. Является частью QuickTime, Safari, OS X, and iOS software, есть аппаратнаяподдержка. HDS(HTTP) •Задержка на буфер. •Google?
  • 6. 6 VLC media player VLC —бесплатныйисвободныйкросс-платформенныймедиаплееримедиаплатформас открытым исходным кодом. http://www.videolan.org/vlc/ Может: •Играть •Писать •Рестримить •Транскодировать •Менять кодек А в чем подвох?
  • 7. 7 FFmpeg Набор свободных библиотек с открытым исходным кодом, которые позволяют записывать, конвертировать и передавать цифровые аудио-и видеозаписи в различных форматах. ffmpegсостоит из следующих компонентов: •ffmpeg—утилита командной строки для конвертирования видео файла из одного формата в другой. С её помощью можно также захватывать видео в реальном времени с TV-карты. •ffserver—HTTP-(RTSP в настоящее время разрабатывается) потоковый сервер для видео-или радиовещания. •ffplay—простой медиаплеер, основанный на SDL и библиотеках FFmpeg. •libavcodec—библиотека со всеми аудио/видеокодеками. Большинство кодеков были разработаны «с нуля» для обеспечения наилучшей производительности. •libavformat—библиотека с мультиплексорами и демультиплексорами для различных аудио-и видеоформатов. •libavutil—вспомогательная библиотека со стандартными общими подпрограммами для различных компонентов ffmpeg. Включает Adler-32, CRC, MD5, SHA1, LZO-декомпрессор, Base64- кодер/декодер, DES-шифровальщик/расшифровщик, RC4-шифровальщик/расшифровщик и AES- шифровальщик/расшифровщик. •libpostproc—библиотека стандартных подпрограмм обработки видео. •libswscale—библиотека для масштабирования видео. •libavfilter—замена vhook, которая позволяет изменять видеопоток между декодером и кодером «на лету».
  • 8. 8 FluorineFx .NET Транскодинг и рестриминг Бесплатная, с открытым кодом. http://www.fluorinefx.com/
  • 9. 9 Чем играть? •VLC •JWplayerhttp://www.jwplayer.com/about-jwplayer/ •Flowplayer https://flowplayer.org/ •Множествофлешплееров. Adobe Flash (ранее Macromedia Flash) Когда будет HTML5плеер?
  • 10. 10 Видеокамеры •Аналоговые-ТВЛ •IPкамеры–разрешение(мегапиксели). •WEBкамеры–разрешение(мегапиксели). Битрейт (ширина потока) Фокусное расстояние HDR Выдержка Диафрагма Физический размер матрицы Работа камеры на сером IP
  • 11. 11 Звук •ACC •G711 •G921
  • 12. 12 Рынок Условно четыре группы: «Железные» решения •Cisco VSM •Huawei IMS Десятки тысяч потоков Коммерческие продукты •Microsoft (Microsoft Lync Server 2013) •Pelco (schneider electric) •Flussonic(erlyvideo) –Erlang Тысячи потоков Opensource •Wowza-Java До 40 потоков “Китайские”видеорегистраторы До 16 потоков
  • 13. 13 Спасибо за внимание Дмитрий Валуев Группа компаний РОН-Телеком valuev@rontel.ru