Top Banner
Видео в сети
21

Video 111127013709-phpapp02

Nov 02, 2014

Download

Technology

Newlink

 
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Video 111127013709-phpapp02

Видео в сети

Page 2: Video 111127013709-phpapp02

У нас есть план!

• основное противоречие • история передачи видео• типизация • контейнеры и кодеки • протоколы передачи• программное обеспечение • архитектурные решения• как сделать свой YouTube

Page 3: Video 111127013709-phpapp02

Основное противоречие систем передачи видео

качество изображения пропускная способность канала передачи данных

Page 4: Video 111127013709-phpapp02

История PALSECAMNTSC

Page 5: Video 111127013709-phpapp02

Переход к цифреDigital Video Broadcasting (DVB) - канальные и транспортные подсистемы Moving Picture Experts Group - сжатие и передача • MPEG-1 - VCD

o .mp3 - MPEG-1 layer 3• MPEG-2 - SD• MPEG-4 - SD & HD

o path 2 - DivX, Xvid, VP*o path 10 - h.264

защищено патентами

Page 6: Video 111127013709-phpapp02
Page 7: Video 111127013709-phpapp02

ТТХ

Page 8: Video 111127013709-phpapp02

Типы видео  По назначению• live• video-on-demand (VoD)

По качеству• Standart Definition (SD)• High Definition (HD)

По типу формирования кадра• прогрессивная развертка  (progressive)• черезстрочная развертка (interlaced)

Page 9: Video 111127013709-phpapp02

Что внутри цифрового видео

Page 10: Video 111127013709-phpapp02

Данные внутри контейнера

Page 11: Video 111127013709-phpapp02

Немного о обработке видео

• количество проходов• предустановки• скорость потока (постоянная

и переменная)• скорость перекодирования• оценка ресурсов

Page 12: Video 111127013709-phpapp02

... и немного о сжатии видео

Кодеки• MPEG2• MPEG4 (DivX, XVid, h.264)• остальные (VP7, Theora)

Page 13: Video 111127013709-phpapp02

Методы вещания• псевдо-потоковое

o http pseudo streaming (mod_flv, mod_mp4, mod_h264)http://xxx.xxx/x.mp4?start=110

• потоковое поверх TCP-транспортаo HTTP 

Apple HTTP Live Streaming (HLS) Adobe HTTP Dynamic Streaming (HDS) Microsoft Smooth Streaming

o RTMP* (Adobe) • потоковое поверх UDP или IP-транспорта

o RTP/RTSPo RMTP

• мультикаст (в сетях IPTV)

Page 14: Video 111127013709-phpapp02

А на стороне клиента... встроенные видеоплееры (WMP, QT, Totem)

Web-плееры• Adobe Flash player

MP4, FLV - H.264,H.263,VP6 + AAC/MP3

• Silverlight• HTML5 player

WebM (MKV) - VP7 + Ogg

кросплатформенные плееры• VLC• mplayer

Page 15: Video 111127013709-phpapp02

Серверы потокового вещания• Adobe FMS• Wowza MS• Erlyvideo• Red5, ffserver и прочие OSS • + Apple Streaming Server и прочие покойники

ПО для вещания• WireCast• Adobe Medial Encoder• Приложения на базе Flash и Flex• VLC, ffmpeg

ПО для перекодирования• ffmpeg• VirtualDub

Page 16: Video 111127013709-phpapp02

Архитектура потокового вещания

Page 17: Video 111127013709-phpapp02

Архитектура IPTV

Page 18: Video 111127013709-phpapp02

Защита видео от копирования - DRM (шифрование при доставке + соответствующая инфраструктура) для поиска источника утечки - Watermarks (водяные знаки на видео) от публикации на других ресурсах и массового скачивания - секретные ссылки и ограничение по трафику и количеству запросов с одного адреса

Page 19: Video 111127013709-phpapp02

Как сделать собственный YouTube 

• заливка видеоo нотификация о статусе загрузки (JSON, Flash)o размещение в хранилище

• перекодированиеo очередь на перекодированиеo потенциально несколько серверов

даже если сначала одинo несколько вариантов

для flash + несколько вариантов качества, для i*, для мобильныхo размещение на сервере вещания

• сервер(a) потокового или псевдопотокового вещания (erlyvideo | nginx)

Page 20: Video 111127013709-phpapp02

Front-end• плеер - не тот, который Adobe Flash Player

o JW Playero flowpalyero самописный на OSMF/JS

Backend• контроль содержимого• мониторинг систем перекодирования, хранилищ,

серверов вещания

Можно начать с одного сервера для всего - виртуализация (OpenVZ, реже - XEN, VirtualBox) Следующий шаг - Облака, CDN / ADN

Page 21: Video 111127013709-phpapp02

???