SlideShare uma empresa Scribd logo
1 de 76
Baixar para ler offline
https://www.youtube.com/watch?v=6t6Si0BWCOo
DRM
Digital Rights Management,
-
“ ”
https://www.clien.net/service/board/park/13087716
DRM is
Very important
https://developer.apple.com/streaming/
https://tools.ietf.org/html/rfc8216
https://tools.ietf.org/html/rfc8216#section-6.2.3
https://tools.ietf.org/html/rfc8216#section-6.3.6
https://tools.ietf.org/html/rfc8216
https://tools.ietf.org/html/rfc8216#section-6.2.3
https://tools.ietf.org/html/rfc8216#section-6.3.6
HTTP Live Streaming
6.2.3. Encrypting Media Segments
6.3.6. Decrypting Encrypted Media Segments
https://tools.ietf.org/html/rfc8216#section-4.3.2.4
https://bitmovin.com/docs/encoding/faqs/what-is-hls-aes-encryption
METHOD
AES-128 SAMPLE-AES.
https://tools.ietf.org/html/rfc8216#section-4.3.2.4
https://bitmovin.com/docs/encoding/faqs/what-is-hls-aes-encryption
METHOD
URI
IV
KEYFORMAT
KEYFORMATVERSIONS
Streaming Protocol
HLS
Media Encryption
(AES-128, SAMPLE-AES)
DRM
Let’s Do It
https://www.bento4.com
$ openssl rand 16 > key.bin
16
$ xxd -ps key.bin
6f9a136bd1f95872e78ae49870a08140
https://www.tutorialspoint.com/unix_commands/xxd.htm
AES-128
MP42HLS
$ mp42hls 
--encryption-key 544cb873 … c0 `# 16 ` 
--encryption-key-uri key.bin `# URI` 
--encryption-mode AES-128 `# ` 
--encryption-iv-mode sequence `# ` 
--encryption-key-format identity `# ` 
./bunny.mp4
https://www.bento4.com/documentation/mp42hls/
stream.m3u8
$ openssl rand 32 > key.bin
16
$ xxd -ps key.bin
31cfac676e77e3aed1c23799c7d21cf80d5524960b34e … fcf37
e816
SAMPLE-AES
MP42HLS
$ mp42hls 
--encryption-key 31cfac676 … 16 `# 16 ` 
--encryption-key-uri key.bin `# URI` 
--encryption-mode SAMPLE-AES `# ` 
--encryption-iv-mode sequence `# ` 
--encryption-key-format identity `# ` 
./bunny.mp4
stream.m3u8
1
Request stream.m3u8
ClientContent Server
1
ClientContent Server
Check authorization
2
1
ClientContent Server
2
3
Response stream.m3u8
1
Content Server
2
3
4
Request key.bin
Client
1
Content Server
2
3
4
5
Check authorization
Client
1
Content Server
2
3
4
5
6
Response key.bin
Client
1
Content Server
2
3
4
5
6
7
Decrypting media
Client
It is
low level
DRM
DRM 



?
https://developer.apple.com/streaming/fps/
What is FairPlay Streaming?
A delivery mechanism for secure keys that are protected on both the
network and client
Will only work with protected HDMI for external outputs
Delivery of keys is server agnostic and can work with existing key
infrastructure, streamlining implementation
FairPlay Streaming does not provide DRM rights, enforce policies,
authenticate users, or authorize devices
https://www.encoding.com/apple-fairplay/
MP42HLS
$ mp42hls 
--encryption-key 31cfac676 … 16 
--encryption-key-uri skd://cid 
--encryption-mode SAMPLE-AES 
--encryption-iv-mode fps 
--encryption-key-format com.apple.streamingkeydelivery 
./bunny.mp4
stream.m3u8
FairPlay .
https://h2k.co/8M
https://h2k.co/8M
AVFoundation HLS
https://h2k.co/8M
AVFoundation KEY m3u8
https://h2k.co/8M
AVFoundation
https://h2k.co/8M
AVFoundation FPS
https://h2k.co/8M
FPS SPC
https://h2k.co/8M
FPS KSM SPC CK
https://h2k.co/8M
FPS KSM Content Key Context
https://h2k.co/8M
CKC AVFoundation
https://h2k.co/8M
AVFoundation
KSM
AVFoundation Delegate
SPC(Server Playback Context)
CKC(Content Key Context)
?
https://www.w3.org/TR/encrypted-media/
EME FairPlay ?
NOPE
https://www.w3.org/TR/encrypted-media/
CDM
.
Content Decryption Module
JavaScript
VideoPlayer
CDM
Media

Stack
EME
Internet
Server
Generate request for get security key
Decrypting media
JavaScript
VideoPlayer
Media Stack
CDM CDM CDM CDM
JavaScript API Call
EME
JavaScript
VideoPlayer
Media Stack
JavaScript API Call
EME
Widevine FairPlay PlayReady
(and Widevine)
PrimeTime
https://bitmovin.com/docs/player/articles/browser-drm-support
How to Detecting CDM
KeySystem
Widevine : com.widevine.alpha
PlayReady : com.microsoft.playready
com.youtube.playready
PrimeTime : com.adobe.primetime
com.adobe.access
FairPlay: com.apple.fairplay
https://stackoverflow.com/questions/35086625/determine-drm-system-supported-by-browser/35130190
try {
navigator
.requestMediaKeySystemAccess('com.widevine.alpha', config)
.then(() => console.log('widevine support ok'))
.catch(() => console.log('no widevine support'));
} catch (err) {
console.log('no widevine support');
}
(new window.WebKitMediaKeys('com.apple.fps.1_0')).keySystem;
https://www.radiantmediaplayer.com/blog/detecting-eme-cdm-browser.html
https://h2k.co/8M
‘webkitneedkey’
https://h2k.co/8M
keySession ‘webkitkeymessage'
https://h2k.co/8M
‘webkitkeymessage' SPC
https://h2k.co/8M
SPC
https://h2k.co/8M
Key Server CKC keySession
https://h2k.co/8M
HLS DASH ETC
Media Source Extensions
Streaming protocol
Widevine FairPlay ETC
Key delivery mechanism
Encrypted Media Extensions
+
High Secure DRM
CDM
JavaScript
Application
VideoElement
addEventListener()

`encrypted`
or `webkitneedkey`
MediaSource
MSE
Internet
EME
MediaStack
CDM
JavaScript
Application
VideoElement
MediaSource
MSE
create
attach
Internet
EME
MediaStack
addEventListener()

`encrypted`
or `webkitneedkey`
CDM
JavaScript
Application
VideoElement
MediaSource
MSE
create
attach
Internet
EME
MediaStack
request playlist and media segment
response
addEventListener()

`encrypted`
or `webkitneedkey`
CDM
JavaScript
Application
VideoElement
MediaSource
MSE
create
attach
Internet
EME
MediaStack
request playlist and media segment
response
appendBuffer()
addEventListener()

`encrypted`
or `webkitneedkey`
CDM
JavaScript
Application
VideoElement
MediaSource
MSE
create
attach
Internet
EME
MediaStack
request playlist and media segment
response
appendBuffer()
encrypted
addEventListener()

`encrypted`
or `webkitneedkey`
CDM
JavaScript
Application
VideoElement
MediaSource
MSE
create
attach
Internet
EME
MediaStack
request playlist and media segment
response
appendBuffer()
encrypted
createSession()
addEventListener()

`encrypted`
or `webkitneedkey`
CDM
JavaScript
Application
VideoElement
MediaSource
MSE
create
attach
Internet
EME
MediaStack
request playlist and media segment
response
appendBuffer()
encrypted
createSession()
KeySession
addEventListener()

`encrypted`
or `webkitneedkey`
CDM
JavaScript
Application
VideoElement
addEventListener()

`encrypted`
or `webkitneedkey`
MediaSource
MSE
create
attach
Internet
EME
MediaStack
request playlist and media segment
response
appendBuffer()
encrypted
createSession()
KeySession
addEventListener()
`message`
generateRequest()
CDM
JavaScript
Application
VideoElement
addEventListener()

`encrypted`
or `webkitneedkey`
MediaSource
MSE
create
attach
Internet
EME
MediaStack
request playlist and media segment
response
appendBuffer()
encrypted
createSession()
KeySession
addEventListener()
`message`
generateRequest()
message with SPC
CDM
JavaScript
Application
VideoElement
addEventListener()

`encrypted`
or `webkitneedkey`
MediaSource
MSE
create
attach
Internet
EME
MediaStack
request playlist and media segment
response
appendBuffer()
encrypted
createSession()
KeySession
addEventListener()
`message`
generateRequest()
message with SPC
request license(or CKC)
response
JavaScript
Application
VideoElement
addEventListener()

`encrypted`
or `webkitneedkey`
MediaSource
MSE
create
attach
Internet
CDM
EME
MediaStack
request playlist and media segment
response
appendBuffer()
encrypted
createSession()
KeySession
addEventListener()
`message`
generateRequest()
message with SPC
request license(or CKC)
response
update(license - or CKC -)
(decrypting…)
• HTTP Live Streaming : https://tools.ietf.org/html/rfc8216
• Video on demand (VOD) HLS PC : https://qiita.com/khagi/items/
6e8c8d10c77bee53487b
• Bento4 : https://www.bento4.com/
• HTTP Live Streaming : https://www.bento4.com/developers/hls/
• MP42HLS(Bento4) : https://www.bento4.com/documentation/mp42hls/
• FairPlay Streaming : https://developer.apple.com/streaming/fps/
• The Complete Guide to Apple Fairplay : https://www.encoding.com/
apple-fairplay/
• Debugging FairPlay Streaming : https://developer.apple.com/library/
content/technotes/tn2454/_index.html
• How to integrate a basic HLS stream with FairPlay : https://
www.icapps.com/blog/how-integrate-basic-hls-stream-fairplay
• JW Player Configuration Reference : https://developer.jwplayer.com/jw-
player/docs/developer-guide/customization/configuration-reference/
• JW Player Stream Tester : https://developer.jwplayer.com/tools/stream-
tester/?playerversion=8
• Browser DRM Support : https://bitmovin.com/docs/player/articles/
browser-drm-support
• videojs-contrib-eme/fireplay : https://github.com/videojs/videojs-
contrib-eme/blob/master/src/fairplay.js
• Detecting EME and CDM support in a browser for DASH DRM : https://
www.radiantmediaplayer.com/blog/detecting-eme-cdm-browser.html
• WWDC15 Media - Apple : https://devstreaming-cdn.apple.com/videos/
wwdc/2015/502sufwcpog/
502/502_content_protection_for_http_live_streaming.pdf?dl=1
• Encrypted Media Extensions : https://www.w3.org/TR/encrypted-media/
• DRM videos now on Safari iOS : https://www.theoplayer.com/blog/apple-
brings-safari-browser-fairplay-drm
• What is EME? : https://developers.google.com/web/fundamentals/
media/
eme#related_technology_2_dynamic_adaptive_streaming_over_http_das
h
• HLS Streaming, HLS Encryption & Setting High Secure DRM : https://
www.vdocipher.com/blog/2017/08/hls-streaming-hls-encryption-secure-
hls-drm/
• videojs/videojs-contrib-eme : https://github.com/videojs/videojs-contrib-
eme
• W3C, DRM 'EME' : https://m.zdnet.co.kr/news_view.asp?
article_id=20171001112609
.

Mais conteúdo relacionado

Mais procurados

One-Click Deployment with Jenkins
One-Click Deployment with JenkinsOne-Click Deployment with Jenkins
One-Click Deployment with JenkinsMayflower GmbH
 
Data Security Using Audio Steganography
Data Security Using Audio SteganographyData Security Using Audio Steganography
Data Security Using Audio SteganographyRajan Yadav
 
Dynamic synchronous transfer mode
Dynamic synchronous transfer modeDynamic synchronous transfer mode
Dynamic synchronous transfer modeShamama Kamal
 
Steganography presentation
Steganography presentationSteganography presentation
Steganography presentationAshwin Prasad
 
Audio and Video streaming.ppt
Audio and Video streaming.pptAudio and Video streaming.ppt
Audio and Video streaming.pptVideoguy
 
Information and data security steganography and watermarking
Information and data security steganography and watermarkingInformation and data security steganography and watermarking
Information and data security steganography and watermarkingMazin Alwaaly
 
Multimedia networking
Multimedia networkingMultimedia networking
Multimedia networkingKikima Jimmy
 
digital watermarking
digital watermarkingdigital watermarking
digital watermarkingBharath
 
Steganography Project
Steganography Project Steganography Project
Steganography Project Uttam Jain
 
Android Multimedia Framework
Android Multimedia FrameworkAndroid Multimedia Framework
Android Multimedia FrameworkPicker Weng
 
Tripwire.ppt
Tripwire.pptTripwire.ppt
Tripwire.pptishaque k
 
Chapter 6 : VIDEO
Chapter 6 : VIDEOChapter 6 : VIDEO
Chapter 6 : VIDEOazira96
 
Digital watermarking
Digital watermarkingDigital watermarking
Digital watermarkingnafees321
 
Data Security Using Steganography
Data Security Using Steganography Data Security Using Steganography
Data Security Using Steganography NidhinRaj Saikripa
 

Mais procurados (20)

One-Click Deployment with Jenkins
One-Click Deployment with JenkinsOne-Click Deployment with Jenkins
One-Click Deployment with Jenkins
 
Data Security Using Audio Steganography
Data Security Using Audio SteganographyData Security Using Audio Steganography
Data Security Using Audio Steganography
 
Dynamic synchronous transfer mode
Dynamic synchronous transfer modeDynamic synchronous transfer mode
Dynamic synchronous transfer mode
 
Video Compression
Video CompressionVideo Compression
Video Compression
 
Steganography presentation
Steganography presentationSteganography presentation
Steganography presentation
 
Audio and Video streaming.ppt
Audio and Video streaming.pptAudio and Video streaming.ppt
Audio and Video streaming.ppt
 
Information and data security steganography and watermarking
Information and data security steganography and watermarkingInformation and data security steganography and watermarking
Information and data security steganography and watermarking
 
Multimedia networking
Multimedia networkingMultimedia networking
Multimedia networking
 
digital watermarking
digital watermarkingdigital watermarking
digital watermarking
 
Video
VideoVideo
Video
 
Mpeg 7 slides
Mpeg 7 slides Mpeg 7 slides
Mpeg 7 slides
 
Steganography Project
Steganography Project Steganography Project
Steganography Project
 
Android Multimedia Framework
Android Multimedia FrameworkAndroid Multimedia Framework
Android Multimedia Framework
 
Info hiding
Info hidingInfo hiding
Info hiding
 
Steganography
SteganographySteganography
Steganography
 
Tripwire.ppt
Tripwire.pptTripwire.ppt
Tripwire.ppt
 
Chapter 6 : VIDEO
Chapter 6 : VIDEOChapter 6 : VIDEO
Chapter 6 : VIDEO
 
3D PASSWORD
3D PASSWORD3D PASSWORD
3D PASSWORD
 
Digital watermarking
Digital watermarkingDigital watermarking
Digital watermarking
 
Data Security Using Steganography
Data Security Using Steganography Data Security Using Steganography
Data Security Using Steganography
 

Semelhante a 스트리밍과 디지털 권리 관리

Keypoints html5
Keypoints html5Keypoints html5
Keypoints html5dynamis
 
[workshop] The Revolutionary WebRTC
[workshop] The Revolutionary WebRTC[workshop] The Revolutionary WebRTC
[workshop] The Revolutionary WebRTCGiacomo Vacca
 
HTML5 and Beyond
HTML5 and BeyondHTML5 and Beyond
HTML5 and Beyonddynamis
 
Deploy, Customize, Start, & Monitor a Channel with Live Streaming on AWS (CTD...
Deploy, Customize, Start, & Monitor a Channel with Live Streaming on AWS (CTD...Deploy, Customize, Start, & Monitor a Channel with Live Streaming on AWS (CTD...
Deploy, Customize, Start, & Monitor a Channel with Live Streaming on AWS (CTD...Amazon Web Services
 
Analyzing the Performance of Mobile Web
Analyzing the Performance of Mobile WebAnalyzing the Performance of Mobile Web
Analyzing the Performance of Mobile WebAriya Hidayat
 
Google I/O 2012 - Protecting your user experience while integrating 3rd party...
Google I/O 2012 - Protecting your user experience while integrating 3rd party...Google I/O 2012 - Protecting your user experience while integrating 3rd party...
Google I/O 2012 - Protecting your user experience while integrating 3rd party...Patrick Meenan
 
DODN2009 - Jump Start Silverlight
DODN2009 - Jump Start SilverlightDODN2009 - Jump Start Silverlight
DODN2009 - Jump Start SilverlightClint Edmonson
 
HTML5 Introduction
HTML5 IntroductionHTML5 Introduction
HTML5 Introductiondynamis
 
Change by HTML5
Change by HTML5Change by HTML5
Change by HTML5dynamis
 
WebRTC ... GWT & in-browser computation
WebRTC ... GWT & in-browser computationWebRTC ... GWT & in-browser computation
WebRTC ... GWT & in-browser computationJooinK
 
WebRTC: A front-end perspective
WebRTC: A front-end perspectiveWebRTC: A front-end perspective
WebRTC: A front-end perspectiveshwetank
 
Http/2 - What's it all about?
Http/2  - What's it all about?Http/2  - What's it all about?
Http/2 - What's it all about?Andy Davies
 
The unconventional devices for the video streaming in Android
The unconventional devices for the video streaming in AndroidThe unconventional devices for the video streaming in Android
The unconventional devices for the video streaming in AndroidAlessandro Martellucci
 
Introduction To Webrtc
Introduction To WebrtcIntroduction To Webrtc
Introduction To WebrtcKnoldus Inc.
 
WebRTC Standards & Implementation Q&A - getDisplayMedia 1.0
WebRTC Standards & Implementation Q&A - getDisplayMedia 1.0WebRTC Standards & Implementation Q&A - getDisplayMedia 1.0
WebRTC Standards & Implementation Q&A - getDisplayMedia 1.0Amir Zmora
 
HTML5 and web platform
HTML5 and web platformHTML5 and web platform
HTML5 and web platformdynamis
 
Top 10 Web Hacks 2012
Top 10 Web Hacks 2012Top 10 Web Hacks 2012
Top 10 Web Hacks 2012Matt Johansen
 

Semelhante a 스트리밍과 디지털 권리 관리 (20)

Keypoints html5
Keypoints html5Keypoints html5
Keypoints html5
 
URL Design
URL DesignURL Design
URL Design
 
[workshop] The Revolutionary WebRTC
[workshop] The Revolutionary WebRTC[workshop] The Revolutionary WebRTC
[workshop] The Revolutionary WebRTC
 
HTML5 and Beyond
HTML5 and BeyondHTML5 and Beyond
HTML5 and Beyond
 
Deploy, Customize, Start, & Monitor a Channel with Live Streaming on AWS (CTD...
Deploy, Customize, Start, & Monitor a Channel with Live Streaming on AWS (CTD...Deploy, Customize, Start, & Monitor a Channel with Live Streaming on AWS (CTD...
Deploy, Customize, Start, & Monitor a Channel with Live Streaming on AWS (CTD...
 
Analyzing the Performance of Mobile Web
Analyzing the Performance of Mobile WebAnalyzing the Performance of Mobile Web
Analyzing the Performance of Mobile Web
 
Google I/O 2012 - Protecting your user experience while integrating 3rd party...
Google I/O 2012 - Protecting your user experience while integrating 3rd party...Google I/O 2012 - Protecting your user experience while integrating 3rd party...
Google I/O 2012 - Protecting your user experience while integrating 3rd party...
 
DODN2009 - Jump Start Silverlight
DODN2009 - Jump Start SilverlightDODN2009 - Jump Start Silverlight
DODN2009 - Jump Start Silverlight
 
HTML5 Introduction
HTML5 IntroductionHTML5 Introduction
HTML5 Introduction
 
Change by HTML5
Change by HTML5Change by HTML5
Change by HTML5
 
WebRTC ... GWT & in-browser computation
WebRTC ... GWT & in-browser computationWebRTC ... GWT & in-browser computation
WebRTC ... GWT & in-browser computation
 
WebRTC: A front-end perspective
WebRTC: A front-end perspectiveWebRTC: A front-end perspective
WebRTC: A front-end perspective
 
How to use shodan more powerful
How to use shodan more powerful How to use shodan more powerful
How to use shodan more powerful
 
Http/2 - What's it all about?
Http/2  - What's it all about?Http/2  - What's it all about?
Http/2 - What's it all about?
 
The unconventional devices for the video streaming in Android
The unconventional devices for the video streaming in AndroidThe unconventional devices for the video streaming in Android
The unconventional devices for the video streaming in Android
 
Introduction To Webrtc
Introduction To WebrtcIntroduction To Webrtc
Introduction To Webrtc
 
WebRTC Standards & Implementation Q&A - getDisplayMedia 1.0
WebRTC Standards & Implementation Q&A - getDisplayMedia 1.0WebRTC Standards & Implementation Q&A - getDisplayMedia 1.0
WebRTC Standards & Implementation Q&A - getDisplayMedia 1.0
 
Introduction to html5
Introduction to html5Introduction to html5
Introduction to html5
 
HTML5 and web platform
HTML5 and web platformHTML5 and web platform
HTML5 and web platform
 
Top 10 Web Hacks 2012
Top 10 Web Hacks 2012Top 10 Web Hacks 2012
Top 10 Web Hacks 2012
 

Mais de 우영 주

스트리밍과 플레이어
스트리밍과 플레이어스트리밍과 플레이어
스트리밍과 플레이어우영 주
 
프런트엔드개발, 지금과 다음
프런트엔드개발, 지금과 다음프런트엔드개발, 지금과 다음
프런트엔드개발, 지금과 다음우영 주
 
컴포넌트 관점에서 개발하기
컴포넌트 관점에서 개발하기컴포넌트 관점에서 개발하기
컴포넌트 관점에서 개발하기우영 주
 
아재가 젊은이에게 사랑받는 마크업을 하는 방법
아재가 젊은이에게 사랑받는 마크업을 하는 방법아재가 젊은이에게 사랑받는 마크업을 하는 방법
아재가 젊은이에게 사랑받는 마크업을 하는 방법우영 주
 
Introduce Guetzli
Introduce GuetzliIntroduce Guetzli
Introduce Guetzli우영 주
 
스코프와 실행문맥
스코프와 실행문맥스코프와 실행문맥
스코프와 실행문맥우영 주
 
좋은 기능을 만드는 방법
좋은 기능을 만드는 방법좋은 기능을 만드는 방법
좋은 기능을 만드는 방법우영 주
 
서비스를 성공적으로 만드는 방법
서비스를 성공적으로 만드는 방법서비스를 성공적으로 만드는 방법
서비스를 성공적으로 만드는 방법우영 주
 
다함께, FluxUtils 한바퀴!
다함께, FluxUtils 한바퀴!다함께, FluxUtils 한바퀴!
다함께, FluxUtils 한바퀴!우영 주
 
BEM을 깨우치다.
BEM을 깨우치다.BEM을 깨우치다.
BEM을 깨우치다.우영 주
 
JavaScript Promises
JavaScript PromisesJavaScript Promises
JavaScript Promises우영 주
 
[토크아이티] 프런트엔드 개발 시작하기 저자 특강
[토크아이티] 프런트엔드 개발 시작하기 저자 특강 [토크아이티] 프런트엔드 개발 시작하기 저자 특강
[토크아이티] 프런트엔드 개발 시작하기 저자 특강 우영 주
 
명세부터 깨우치는 FILEAPI
명세부터 깨우치는 FILEAPI명세부터 깨우치는 FILEAPI
명세부터 깨우치는 FILEAPI우영 주
 
[Toolcon2014] WebStorm에서 자바스크립트 리팩토링하기
[Toolcon2014] WebStorm에서 자바스크립트 리팩토링하기[Toolcon2014] WebStorm에서 자바스크립트 리팩토링하기
[Toolcon2014] WebStorm에서 자바스크립트 리팩토링하기우영 주
 
진보한 개발 환경에서 품질 좋은 코드 생산 (WebStorm)
진보한 개발 환경에서 품질 좋은 코드 생산 (WebStorm)진보한 개발 환경에서 품질 좋은 코드 생산 (WebStorm)
진보한 개발 환경에서 품질 좋은 코드 생산 (WebStorm)우영 주
 
Javascript Test Double Sinon.js
Javascript Test Double Sinon.jsJavascript Test Double Sinon.js
Javascript Test Double Sinon.js우영 주
 
HTML5 BOILERPLATE를 소개합니다.
HTML5 BOILERPLATE를 소개합니다.HTML5 BOILERPLATE를 소개합니다.
HTML5 BOILERPLATE를 소개합니다.우영 주
 
이클립스로 GIT 사용하기
이클립스로 GIT 사용하기이클립스로 GIT 사용하기
이클립스로 GIT 사용하기우영 주
 

Mais de 우영 주 (19)

스트리밍과 플레이어
스트리밍과 플레이어스트리밍과 플레이어
스트리밍과 플레이어
 
프런트엔드개발, 지금과 다음
프런트엔드개발, 지금과 다음프런트엔드개발, 지금과 다음
프런트엔드개발, 지금과 다음
 
컴포넌트 관점에서 개발하기
컴포넌트 관점에서 개발하기컴포넌트 관점에서 개발하기
컴포넌트 관점에서 개발하기
 
아재가 젊은이에게 사랑받는 마크업을 하는 방법
아재가 젊은이에게 사랑받는 마크업을 하는 방법아재가 젊은이에게 사랑받는 마크업을 하는 방법
아재가 젊은이에게 사랑받는 마크업을 하는 방법
 
Introduce Guetzli
Introduce GuetzliIntroduce Guetzli
Introduce Guetzli
 
스코프와 실행문맥
스코프와 실행문맥스코프와 실행문맥
스코프와 실행문맥
 
좋은 기능을 만드는 방법
좋은 기능을 만드는 방법좋은 기능을 만드는 방법
좋은 기능을 만드는 방법
 
서비스를 성공적으로 만드는 방법
서비스를 성공적으로 만드는 방법서비스를 성공적으로 만드는 방법
서비스를 성공적으로 만드는 방법
 
다함께, FluxUtils 한바퀴!
다함께, FluxUtils 한바퀴!다함께, FluxUtils 한바퀴!
다함께, FluxUtils 한바퀴!
 
BEM을 깨우치다.
BEM을 깨우치다.BEM을 깨우치다.
BEM을 깨우치다.
 
JavaScript Promises
JavaScript PromisesJavaScript Promises
JavaScript Promises
 
[토크아이티] 프런트엔드 개발 시작하기 저자 특강
[토크아이티] 프런트엔드 개발 시작하기 저자 특강 [토크아이티] 프런트엔드 개발 시작하기 저자 특강
[토크아이티] 프런트엔드 개발 시작하기 저자 특강
 
명세부터 깨우치는 FILEAPI
명세부터 깨우치는 FILEAPI명세부터 깨우치는 FILEAPI
명세부터 깨우치는 FILEAPI
 
[Toolcon2014] WebStorm에서 자바스크립트 리팩토링하기
[Toolcon2014] WebStorm에서 자바스크립트 리팩토링하기[Toolcon2014] WebStorm에서 자바스크립트 리팩토링하기
[Toolcon2014] WebStorm에서 자바스크립트 리팩토링하기
 
진보한 개발 환경에서 품질 좋은 코드 생산 (WebStorm)
진보한 개발 환경에서 품질 좋은 코드 생산 (WebStorm)진보한 개발 환경에서 품질 좋은 코드 생산 (WebStorm)
진보한 개발 환경에서 품질 좋은 코드 생산 (WebStorm)
 
Javascript Test Double Sinon.js
Javascript Test Double Sinon.jsJavascript Test Double Sinon.js
Javascript Test Double Sinon.js
 
LESS와 EMMET
LESS와 EMMETLESS와 EMMET
LESS와 EMMET
 
HTML5 BOILERPLATE를 소개합니다.
HTML5 BOILERPLATE를 소개합니다.HTML5 BOILERPLATE를 소개합니다.
HTML5 BOILERPLATE를 소개합니다.
 
이클립스로 GIT 사용하기
이클립스로 GIT 사용하기이클립스로 GIT 사용하기
이클립스로 GIT 사용하기
 

Último

CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Servicegiselly40
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfsudhanshuwaghmare1
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUK Journal
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProduct Anonymous
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 
Evaluating the top large language models.pdf
Evaluating the top large language models.pdfEvaluating the top large language models.pdf
Evaluating the top large language models.pdfChristopherTHyatt
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Enterprise Knowledge
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 

Último (20)

CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
Evaluating the top large language models.pdf
Evaluating the top large language models.pdfEvaluating the top large language models.pdf
Evaluating the top large language models.pdf
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 

스트리밍과 디지털 권리 관리