VideoLAN VideoLAN & VLC OW2con Jean-Baptiste Kempf jeudi 6 - - PowerPoint PPT Presentation

videolan videolan vlc ow2con
SMART_READER_LITE
LIVE PREVIEW

VideoLAN VideoLAN & VLC OW2con Jean-Baptiste Kempf jeudi 6 - - PowerPoint PPT Presentation

VideoLAN VideoLAN & VLC OW2con Jean-Baptiste Kempf jeudi 6 novembre 2014 Ecole Centrale Paris VIA VIA Centrale Rseaux Campus student association Internet acces through RENATER Token Ring Network Upgrade How to pay for


slide-1
SLIDE 1

VideoLAN VideoLAN & VLC OW2con

Jean-Baptiste Kempf

jeudi 6 novembre 2014

slide-2
SLIDE 2
slide-3
SLIDE 3
slide-4
SLIDE 4

Ecole Centrale Paris

slide-5
SLIDE 5

6 nov. 2014 Jean-Baptiste Kempf 5

VIA

VIA Centrale Réseaux

➣ Campus student association ➣ Internet acces through RENATER ➣ Token Ring

Network Upgrade

➣ How to pay for our new network? ➣ How to justify the needs for a faster network? ➣ 1995 : let's do video streaming!

slide-6
SLIDE 6

6 nov. 2014 Jean-Baptiste Kempf 6

Early history

1995 – 96 fjrst project

➣ 2 years to complete

1998 project reboot

➢ Open Source ➢ Modularity ➢ Cross-Platform ➢ Network oriented ➢ Student project

2001 License Change

➣ ECP headmaster Agreement ➣ GPL v2 (or later)

slide-7
SLIDE 7

6 nov. 2014 Jean-Baptiste Kempf 7

VideoLAN Projects

VideoLan Client, VLC media player, VLC VideoLan Server, VLS (dead) VLCS (dead) libdvdcss (DVD CSS decryption) libdts, libdca (DTS decoding) x264 (H.264 encoding) libdvbpsi (TS fjles management) libdvdplay (dead) libdvbcsa (dvb encryption decoding) VLMA (VLC automation) VLC Skin designer libbluray, libaacs (BluRay playback) DVBlast, Multicat (DVB streaming solution) VLMC (Video editor) x262, x265

slide-8
SLIDE 8

8

Streaming Solution

slide-9
SLIDE 9

VideoLAN VLC

Volunteers

slide-10
SLIDE 10

6 nov. 2014 Jean-Baptiste Kempf 10

Collaboration

Collaboration

➢ Teams meeting once per year ➢ Using git since early 2007 ➢ Use of trac, phpBB and mediawiki ➢ IRC and Mailing Lists

VLC Contributors

➢ Core Team 5~10 people ➢ 600 over the lifetime ➢ 150 per year

slide-11
SLIDE 11

6 nov. 2014 Jean-Baptiste Kempf 11

Collaboration

slide-12
SLIDE 12

6 nov. 2014 Jean-Baptiste Kempf 12

Association VideoLAN

Creation

➣ 2009, decided in the VDD '08 ➣ Libre/Free Software and Multimedia

Members

➣ VLC's core developers ➣ Important members

Supports

➣ Hardware for development ➣ Travel, Servers, Legal ➣ VideoLAN Dev Days

slide-13
SLIDE 13

The Cone

slide-14
SLIDE 14

VLC

slide-15
SLIDE 15
slide-16
SLIDE 16

1 every 6 Mac Top 15 Windows 900 000 per day More than 1.5B

  • ver VLC life time

Most used French software

slide-17
SLIDE 17

6 nov. 2014 Jean-Baptiste Kempf 17

VLC

Support for DVDs

➣ Region independent ➣ Prevents forced subtitles (if desired)

… Blu Rays

➣ By default, non-encrypted only

… network streams

➣ Unicast, multicast, adaptive streaming

… external hardware

➣ Cameras, TV input, Satellite, ASI/SDI ...

slide-18
SLIDE 18
slide-19
SLIDE 19

VLC 0.6.1

slide-20
SLIDE 20
slide-21
SLIDE 21
slide-22
SLIDE 22
slide-23
SLIDE 23

VLC 0.9

slide-24
SLIDE 24
slide-25
SLIDE 25

Freedom libVLC license LGPL

slide-26
SLIDE 26

libVLC libVLCcore VLC VLMC Applications Interface MKV Ogg Mux Demuxer x264 Vorbis Theora Decoder Filters Aout Vout Modules Modules Modules Modules

slide-27
SLIDE 27

6 nov. 2014 Jean-Baptiste Kempf 27

Architecture

Small Core

➣ libVLCCore ➣ Light ➣ Memory, Network and Thread handling ➣ Module loading ➣ Clock / Synchronization

Simple Multimedia Framework

➣ LibVLC ➣ bindings for C++, C#, Objective-C, Java,

lua, Perl and Python

slide-28
SLIDE 28

6 nov. 2014 Jean-Baptiste Kempf 28

VLC

Completely modularized

➣ About 300 modules in a default installation

➣ Codecs, IO, outputs, (de)muxers, fjlters, ...

➣ Interested in adding new features ? Add a module.

820,000 lines of code

➣ 120k in the core ➣ 700k for modules

80 external librairies

➣ Codecs, Output, Efgects, Network ➣ 7M lines of code

➣ 50 % C, 41 % C++

slide-29
SLIDE 29

6 nov. 2014 Jean-Baptiste Kempf 29

Also C99, C++, Obj-C, ASM, Lua

C-Object (C--)

slide-30
SLIDE 30

6 nov. 2014 Jean-Baptiste Kempf 30

Protocol Format Video Codec Subtitles Codec Audio Codec MetaData Video Output Audio Output Video Filters Audio Filters Text Renderer Codec Muxer Encoder Encoder Stream Interfaces

Network-oriented graph

slide-31
SLIDE 31

32

What you don't know

What you don't know about VLC

– Transcoding, Streaming

  • latency

– Mosaic/PiP generation – Wall display – Screencasting – TS encryption and decryption (DVB-CSA) – DVD and CD ripper – Headless versions – Karaoke, Midi, hardware decoder – Scriptable and extensions – Modules

slide-32
SLIDE 32

6 nov. 2014 Jean-Baptiste Kempf 33

VLC's extensions

Use cases:

➣ Automatic subtitle downloads ➣ Context information from Wikipedia, IMDB or Allociné ➣ Sharing on Twitter

Highly customizable

➣ Written in lua ➣ Publish and get them from addons.videolan.org

slide-33
SLIDE 33

6 nov. 2014 Jean-Baptiste Kempf 34

Service discoveries

Detects media automatically:

➣ Local fjles ➣ Network services

➣ UPnP / DLNA

➣ Internet services

➣ Resolves links to YouTube, Dailymotion, Vimeo, Apple Trailers ...

Highly customizable

➣ Written in lua ➣ Publish and get them from addons.videolan.org

slide-34
SLIDE 34

35

Content Integration

slide-35
SLIDE 35

6 nov. 2014 Jean-Baptiste Kempf 36

VLC's screen casting

slide-36
SLIDE 36

6 nov. 2014 Jean-Baptiste Kempf 37

Mosaic

slide-37
SLIDE 37

6 nov. 2014 Jean-Baptiste Kempf 38

Picture in Picture

Dual webcam with alpha mask:

slide-38
SLIDE 38

6 nov. 2014 Jean-Baptiste Kempf 39

Wall Filter & netsync

slide-39
SLIDE 39

6 nov. 2014 Jean-Baptiste Kempf 40

Encrypted streaming

Supported formats for encryption & decryption:

➣ DVB-CSA

➣ Satelitte

➣ HTTPS — HTTP/TLS ➣ SFTP ➣ RTMPE ➣ HLS-AES

slide-40
SLIDE 40

6 nov. 2014 Jean-Baptiste Kempf 41

Karaoke & MIDI

slide-41
SLIDE 41

6 nov. 2014 Jean-Baptiste Kempf 42

Console & headless

slide-42
SLIDE 42

6 nov. 2014 Jean-Baptiste Kempf 43

Libcaca

slide-43
SLIDE 43

6 nov. 2014 Jean-Baptiste Kempf 44

Web interface

slide-44
SLIDE 44

6 nov. 2014 Jean-Baptiste Kempf 49

Release in July 2012

➣ Beta on Google Play ➣ Limited countries ➣ ARMv7 only ➣ Numerous crashes ➣ Good feedback ➣ GPLv3

VLC for Android

slide-45
SLIDE 45

6 nov. 2014 Jean-Baptiste Kempf 50

Project start

slide-46
SLIDE 46

6 nov. 2014 Jean-Baptiste Kempf 51

Video

slide-47
SLIDE 47

6 nov. 2014 Jean-Baptiste Kempf 52

Evolution

slide-48
SLIDE 48

6 nov. 2014 Jean-Baptiste Kempf 53

Evolution

slide-49
SLIDE 49

6 nov. 2014 Jean-Baptiste Kempf 54

Audio v2

slide-50
SLIDE 50

6 nov. 2014 Jean-Baptiste Kempf 55

Video v2

slide-51
SLIDE 51

6 nov. 2014 Jean-Baptiste Kempf 56

VLC for iOS

VLC for iOS

➣ Requires iOS 5.1 or later device ➣ iPhone 3GS ➣ iPad ➣ iPod touch 3rd gen.

slide-52
SLIDE 52

6 nov. 2014 Jean-Baptiste Kempf 57

VLC for iOS

VLC for iOS features

➣ Faster ➣ Multi-core decoding ➣ OpenGL shaders ➣ Retina Display ➣ Higher audio quality ➣ 10bits support

slide-53
SLIDE 53

6 nov. 2014 Jean-Baptiste Kempf 58

Future projects

VLC for Mobile OS

➣ Win8 / WinRT / WP8 ➣ VLC for Firefox OS ➣ VLC for Ubuntu Phone ? ➣ BB10 ? ➣ Chrome OS ?

slide-54
SLIDE 54

6 nov. 2014 Jean-Baptiste Kempf 60

Contribute

Use it!

➣ Promote to friends, family, groups ➣ Spread the word

Report bugs Translations

➣ New and fjxes

Code on VLC

➣ Extensions ➣ Modules

Code with libVLC

slide-55
SLIDE 55

Thank You jb@videolan.org Jean-Baptiste Kempf