ã¡ãã£ã¢ã½ã¼ã¹æ¡å¼µæ©è½ API (Media Source Extensions API, MSE) ã¯ããã©ã°ã¤ã³ä¸è¦ã§ã¦ã§ããã¼ã¹ã®ã¹ããªã¼ãã³ã°ã¡ãã£ã¢ãå¯è½ã«ããæ©è½ãæä¾ãã¾ãã MSE ã使ç¨ããã¨ãã¡ãã£ã¢ã¹ããªã¼ã ã JavaScript ã§ä½æãã<audio>
è¦ç´ ã <video>
è¦ç´ ã§åçã§ãã¾ãã
ããæ°å¹´ã§ãåç»ã¨é³å£°ã®åçã¯ãã¦ã§ãã¢ããªã«ããã¦ãã©ã°ã¤ã³ä¸è¦ã§å©ç¨å¯è½ã«ãªãã¾ããããæä¾ãããåºæ¬çãªæ©è½ã¯ãåä¸ãã©ãã¯å ¨ä½ãåçããå ´åã«ã®ã¿æå¹ã§ããã ä¾ãã°ãé åãããã¡ã¼ãçµå/åå²ãããã¨ã¯ã§ãã¾ããã RTMP ãããã³ã«ã使ç¨ãã¦åç»ã¹ããªã¼ã ãæä¾ãã Flash Media Server ãªã©ã®æè¡ã«ãããã¹ããªã¼ãã³ã°ã¡ãã£ã¢ã¯æè¿ã¾ã§ Flash ã®é åã§ããã
MSE æ¨æºã¡ãã£ã¢ã½ã¼ã¹æ¡å¼µæ©è½ (MSE) ã«ãããããã¯å¤åãã¦ãã¾ããMSE ã使ç¨ããã¨ãã¡ãã£ã¢è¦ç´ ã«æ¸¡ãé常ã®åä¸ã®ããã°ã¬ãã·ã㪠src
ã® URI ã MediaSource
ãªãã¸ã§ã¯ãã¸ã®åç
§ã§ç½®ãæãããã¨ãã§ãã¾ããããã¯åçããã¡ãã£ã¢ã®æºåç¶æ
ãªã©ã®æ
å ±ã®ã³ã³ããã¼ã§ãããã¹ããªã¼ã å
¨ä½ãæ§æããã¡ãã£ã¢ã®ãã¾ãã¾ãªãã£ã³ã¯ï¼å¤§ããªå¡ï¼ã表ãè¤æ°ã® SourceBuffer
ãªãã¸ã§ã¯ãã¸ã®åç
§ã§ãã MSE ã使ç¨ããã¨ãã³ã³ãã³ããåå¾ããéã¨é »åº¦ãããããç´°ããå¶å¾¡ã§ãããããã¡ã¼ãåé¤ããã¿ã¤ãã³ã°ãªã©ãã¡ã¢ãªã¼ä½¿ç¨éã®è©³ç´°ãããç¨åº¦å¶å¾¡ã§ãã¾ãã æ¡å¼µå¯è½ãª API ä¸ã«æ§ç¯ãããé©å¿çãããã¬ã¼ãã¹ããªã¼ãã³ã°ã¯ã©ã¤ã¢ã³ãï¼DASH ã HLS ã使ç¨ããã¯ã©ã¤ã¢ã³ããªã©ï¼ã®åºç¤ãç¯ãã¾ãã
ææ°ã®ãã©ã¦ã¶ã¼ã§ MSE ã§åä½ããã¢ã»ããï¼assetãéçã³ã³ãã³ãï¼ã使ããã®ã¯é¢åãªããã»ã¹ã§ãããããªãã®æéãè¨ç®è½åãã¨ãã«ã®ã¼ã®ãã¹ã¦ãå¿ è¦ã¨ãã¾ãã ã³ã³ãã³ããé©åãªå½¢å¼ã«ãã¿ã»ããå¤é¨ã¦ã¼ãã£ãªãã£ã®ä½¿ç¨ãå¿ è¦ã§ãã MSE ã使ç¨ãããã¾ãã¾ãªã¡ãã£ã¢ã³ã³ããã¼ã®ãã©ã¦ã¶ã¼ãµãã¼ãã¯ä¸å®å ¨ã§ãããH.264 åç»ã³ã¼ããã¯ãAAC é³å£°ã³ã¼ããã¯ãããã³ MP4 ã³ã³ããã¼å½¢å¼ã®ä½¿ç¨ãä¸è¬çãªãã¼ã¹ã©ã¤ã³ã§ãã MSE ã¯ãã³ã³ããã¼ããã³ã³ã¼ããã¯ã®ãµãã¼ãã®å®è¡ææ¤åºç¨ã® API ãæä¾ãã¾ãã
æéçµéã«ä¼´ãåç»å質ãã³ã³ãã³ãã®åå¾é度ãã¾ãã¯ã¡ã¢ãªã¼ã®åé¤é度ãæç¤ºçã«å¶å¾¡ããå¿
è¦ããªãå ´åã¯ã<video>
ã¿ã°ã¨ <source>
ã¿ã°ãç°¡åã§é©åãªè§£æ±ºçã«ãªãå¯è½æ§ãããã¾ãã
Dynamic Adaptive Streaming over HTTPï¼DASHãHTTP ãä»ããåçé©å¿çã¹ããªã¼ãã³ã°ï¼ã¯ãé©å¿çã³ã³ãã³ãã®å徿¹æ³ãæå®ããããã®ãããã³ã«ã§ãã ããã¯ãå¹ççã«é©å¿çãããã¬ã¼ãã¹ããªã¼ãã³ã°ã¯ã©ã¤ã¢ã³ããæ§ç¯ããããã« MSE ã®ä¸ã«æ§ç¯ãããã¬ã¤ã¤ã¼ã§ãã HTTP Live Streamingï¼HLSãHTTP ã©ã¤ãã¹ããªã¼ãã³ã°ï¼ã¨ãã£ãä»ã®ãããã³ã«ã使ç¨ã§ãã¾ãããDASH ã¯ã»ã¨ãã©ã®ãã©ãããã©ã¼ã ããµãã¼ããã¦ãã¾ãã
DASH ã¯ãå¤ãã®ãã¸ãã¯ããããã¯ã¼ã¯ãããã³ã«ããã¯ã©ã¤ã¢ã³ãå´ã¢ããªã®ãã¸ãã¯ã«ç§»åããããåç´ãª HTTP ãããã³ã«ã使ç¨ãã¦ãã¡ã¤ã«ãåå¾ãã¾ãã å®éãåç´ãªéçãã¡ã¤ã«ãµã¼ãã¼ã§ DASH ããµãã¼ãã§ããCDN ã«ãæé©ã§ãã ããã¯ãç¬èªã§éæ¨æºã®ã¯ã©ã¤ã¢ã³ã/ãµã¼ãã¼ãããã³ã«ã®å®è£ ã«é«ä¾¡ãªã©ã¤ã»ã³ã¹ãå¿ è¦ã¨ãã徿¥ã®ã¹ããªã¼ãã³ã°ã®è§£æ±ºçã¨ã¯æ£å対ã§ãã
DASH ã® 2 ã¤ã®æãä¸è¬çãªä½¿ç¨ä¾ã§ã¯ãã³ã³ãã³ããããªã³ããã³ããã¾ãã¯ãã©ã¤ããã§è¦è´ãã¾ãã ãªã³ããã³ãã§ã¯ãéçºè ãæéãããã¦ã¢ã»ããããã¾ãã¾ãªå質ã®è¤æ°ã®è§£å度ã«å½¢å¼å¤æ (transcoding) ã§ãã¾ãã
ã©ã¤ããããã¡ã¤ã«ã®ã³ã³ãã³ãã¯ãå½¢å¼å¤æã¨ããã¼ããã£ã¹ãã®ããã«é å»¶ãå¼ãèµ·ããå¯è½æ§ããããããDASH 㯠WebRTC ã®ãããªãªã¢ã«ã¿ã¤ã éä¿¡ã«ã¯é©ãã¦ãã¾ããã ãã ããWebRTC ãããããªãå¤ãã®ã¯ã©ã¤ã¢ã³ãæ¥ç¶ããµãã¼ãã§ãã¾ãã
ã³ã³ãã³ããå½¢å¼å¤æããDASHãDASH ãã¡ã¤ã«ãµã¼ãã¼ãããã³ JavaScript ã§è¨è¿°ããã DASH ã¯ã©ã¤ã¢ã³ãã©ã¤ãã©ãªã¼ã§ä½¿ç¨ããæºåãè¡ãããã®ãç¡æã§ãªã¼ãã³ã½ã¼ã¹ã®ãã¼ã«ã夿°ããã¾ãã
ã¯ã¼ã«ã¼ã§ã®å©ç¨å¯è½æ§Chrome 108 ãããMSE ã®æ©è½ã¯å°ç¨ã¦ã§ãã¯ã¼ã«ã¼ã§å©ç¨ã§ããããã«ãªããMediaSource
ã SourceBuffer
ãæä½ããéã®ããã©ã¼ãã³ã¹ãåä¸ãã¾ããã¡ãã£ã¢ãåçããã«ã¯ãMediaSource.handle
ããããã£ã使ç¨ãã¦ãMediaSource
ã®ãããã·ã¼ã§ãã MediaSource.handle
ãªãã¸ã§ã¯ãã®åç
§ãåå¾ãããã®ãªãã¸ã§ã¯ããã¡ã¤ã³ã¹ã¬ããã«æ»ãã¦ãHTMLMediaElement.srcObject
ããããã£çµç±ã§ã¡ãã£ã¢è¦ç´ ã«ã¢ã¿ãããããã¨ãã§ãã¾ãã
ã©ã¤ãä¾ã¨ãã¦ã¯ãMSE-in-Workers Demo by Matt Wolenetz ãã覧ãã ããã
ã¤ã³ã¿ã¼ãã§ã¤ã¹MediaSource
HTMLMediaElement
ãªãã¸ã§ã¯ããä»ãã¦åçãããã¡ãã£ã¢ã½ã¼ã¹ã表ãã¾ãã
SourceBuffer
MediaSource
ãªãã¸ã§ã¯ããä»ã㦠HTMLMediaElement
ã«æ¸¡ãããã¡ãã£ã¢ã®ãã£ã³ã¯ã表ãã¾ãã
SourceBufferList
è¤æ°ã® SourceBuffer
ãªãã¸ã§ã¯ãã®åç´ãªã³ã³ããã¼ãªã¹ãã
VideoPlaybackQuality
æ¬ è½ãç ´æãããã¬ã¼ã æ°ãªã©ã<video>
è¦ç´ ã§åçãããåç»ã®å質ã«é¢ããæ
å ±ãå«ã¾ãã¾ãã HTMLVideoElement.getVideoPlaybackQuality()
ã¡ã½ããã«ãã£ã¦è¿ããã¾ãã
URL.createObjectURL()
MediaSource
ãªãã¸ã§ã¯ããæããªãã¸ã§ã¯ã URL ã使ãã¾ãã ãã®ãªãã¸ã§ã¯ãã¯ãã¡ãã£ã¢ã¹ããªã¼ã ãåçãã HTML ã¡ãã£ã¢è¦ç´ ã® src
å¤ã¨ãã¦æå®ã§ãã¾ãã
HTMLMediaElement.seekable
MediaSource
ãªãã¸ã§ã¯ãã HTML ã¡ãã£ã¢è¦ç´ ã«ãã£ã¦åçãããã¨ããã®ããããã£ã¯ãã¦ã¼ã¶ã¼ãã·ã¼ã¯ã§ããæéç¯å²ãå«ã TimeRanges
ãªãã¸ã§ã¯ããè¿ãã¾ãã
HTMLVideoElement.getVideoPlaybackQuality()
ç¾å¨åçããã¦ããåç»ã® VideoPlaybackQuality
ãªãã¸ã§ã¯ããè¿ãã¾ãã
AudioTrack.sourceBuffer
ãVideoTrack.sourceBuffer
ãTextTrack.sourceBuffer
åé¡ã®ãã©ãã¯ã使ãã SourceBuffer
ãè¿ãã¾ãã
<audio>
è¦ç´ 㨠<video>
è¦ç´ HTMLMediaElement
ãHTMLVideoElement
,ãHTMLAudioElement
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4