WebCodecs APIã«ãããã¬ãŒãæªã¿æé©åïŒRDOïŒã®è©³çŽ°ãªæ¢çŽ¢ããã®ååãå®è£ ãããã³å€æ§ãªãŠãŒã¹ã±ãŒã¹ã«ããããããªãšã³ã³ãŒãå質ãšå¹çãžã®åœ±é¿ã«çŠç¹ãåœãŠãŸãã
WebCodecs ãšã³ã³ãŒããŒå質å¶åŸ¡ã¢ã«ãŽãªãºã ïŒã¬ãŒãæªã¿æé©å
WebCodecs APIã¯ãWebããŒã¹ã®ã¡ãã£ã¢åŠçã«ãããŠå€§ããªé£èºããããããŸãããã©ãŠã¶å ã§ãããªããã³ãªãŒãã£ãªã³ãŒããã¯ã«äœã¬ãã«ã®ã¢ã¯ã»ã¹ãæäŸããéçºè ã匷åãªã¡ãã£ã¢ã¢ããªã±ãŒã·ã§ã³ãæ§ç¯ã§ããããã«ããŸããWebCodecsã§é«å質ãªãããªãšã³ã³ãŒãã£ã³ã°ãå®çŸããäžã§ã广çãªå質å¶åŸ¡ã¯éèŠãªåŽé¢ã§ããããã§ãã¬ãŒãæªã¿æé©åïŒRDOïŒãäžå¿çãªåœ¹å²ãæãããŸãããã®ããã°èšäºã§ã¯ãWebCodecsã®ã³ã³ããã¹ãã«ãããRDOã®è€éããæãäžãããã®åºæ¬ååãå®è·µçãªå®è£ ãããã³ããŸããŸãªã¢ããªã±ãŒã·ã§ã³ã·ããªãªã§æäŸãããã¡ãªãããæ¢ããŸãã
ã¬ãŒãæªã¿æé©åïŒRDOïŒã®çè§£
ã³ã¢ã³ã³ã»ãã
RDOã¯ããããªãšã³ã³ãŒãã£ã³ã°ã«ãããŠãæå®ããããããã¬ãŒãã§å¯èœãªéãæé«ã®ãããªå質ãéæããããéã«ç¹å®ã®å質ã¬ãã«ãéæããããã«å¿ èŠãªãããã¬ãŒããæå°éã«æããããã«äœ¿çšãããæé©åææ³ã§ããããã¯ãã¬ãŒãïŒãããªã衚çŸããããã«äœ¿çšããããããæ°ïŒãšæªã¿ïŒå§çž®äžã®èŠèŠæ å ±ã®æå€±ïŒã®éã®ç¹çްãªãã©ã³ã¹èª¿æŽã§ããç®æšã¯ãã¬ãŒããšæªã¿ã®äž¡æ¹ãçµã¿åãããã³ã¹ã颿°ãæå°åãããšã³ã³ãŒãã£ã³ã°ãã©ã¡ãŒã¿ãèŠã€ããããšã§ãã
æ°åŠçã«ã¯ããã®ã³ã¹ã颿°ã¯ãã°ãã°æ¬¡ã®ããã«è¡šãããŸãã
J = D + λ * R
ããã§ïŒ
J
ã¯ã³ã¹ãã§ããD
ã¯æªã¿ã§ãïŒå ãããªãšãšã³ã³ãŒãããããããªã®éãã®å°ºåºŠïŒãR
ã¯ã¬ãŒãïŒäœ¿çšããããããæ°ïŒã§ããλ
ïŒã©ã ãïŒã¯ã©ã°ã©ã³ãžã¥ä¹æ°ã§ãããã¬ãŒããšæªã¿ã®éã®ãã¬ãŒããªãã衚ããŸããã©ã ãå€ãé«ãã»ã©ãããã¬ãŒãã®æå°åã«éç¹ã眮ãããå質ãç ç²ã«ãªãå¯èœæ§ããããŸãããã©ã ãå€ãäœãã»ã©ãããå€ãã®ãããã䜿çšããŠããããé«ãå質ãåªå ãããŸãã
ãšã³ã³ãŒããŒã¯ãããŸããŸãªãšã³ã³ãŒãã£ã³ã°ãªãã·ã§ã³ïŒäŸïŒç°ãªãåããã¯ãã«ãéååãã©ã¡ãŒã¿ãã³ãŒãã£ã³ã°ã¢ãŒãïŒãæ¢çŽ¢ããåãªãã·ã§ã³ã®ã³ã¹ããèšç®ããŸãããã®åŸãå šäœçãªã³ã¹ããæå°åãããªãã·ã§ã³ãéžæããŸãããã®ããã»ã¹ã¯ããããªãã¬ãŒã å ã®åãã¯ããããã¯ïŒãŸãã¯ã³ãŒãã£ã³ã°ãŠãããïŒã«å¯ŸããŠç¹°ãè¿ãããŸãã
RDOãéèŠãªçç±
RDOããªãå Žåããããªãšã³ã³ãŒããŒã¯ãšã³ã³ãŒãã£ã³ã°ã®æ±ºå®ãè¡ãããã«ãããåçŽã§é«éãªãã¥ãŒãªã¹ãã£ãã¯ã«äŸåããããšããããããŸãããããã®ãã¥ãŒãªã¹ãã£ãã¯ã¯å¹ççã§ããããã°ãã°æé©ã§ã¯ãªãçµæã«ã€ãªãããçµæãšããŠãããªå質ãäœäžããããå¿ èŠä»¥äžã«ãããã¬ãŒããé«ããªã£ããããŸããRDOã¯ãæé©ãªãšã³ã³ãŒãã£ã³ã°ãã©ã¡ãŒã¿ãèŠã€ããããã®ããã峿 Œã§äœç³»çãªã¢ãããŒããæäŸãããããªå質ãšå§çž®å¹çã®äž¡æ¹ã§å€§å¹ ãªæ¹åã«ã€ãªãããŸãã
ã¹ããŒãäžç¶ãäžçäžã®èŠèŽè ã«é ä¿¡ãããããªã©ã€ãã¹ããªãŒãã³ã°ã·ããªãªãèããŠã¿ãŸãããã广çãªRDOã«ãããããŸããŸãªã€ã³ã¿ãŒãããæ¥ç¶é床ãæã€èŠèŽè ãã垯åå¹ ã®å¶çŽå ã§å¯èœãªéãæé«ã®ãããªå質ãåãåãããšãã§ããŸãããããã¯ãé«è§£å床ã®ç§åŠç»åããŒã¿ãã¢ãŒã«ã€ãããããšãæ³åããŠã¿ãŠãã ãããRDOã¯ãéèŠãªè©³çްãä¿æããªããã¹ãã¬ãŒãžã³ã¹ããæå°éã«æããã®ã«åœ¹ç«ã¡ãŸãã
WebCodecsã§ã®RDOã®å®è£
WebCodecsãšãšã³ã³ãŒããŒæ§æ
WebCodecs APIã¯ããããªãšã³ã³ãŒããŒãšã®å¯Ÿè©±ã®ããã®æè»ãªãã¬ãŒã ã¯ãŒã¯ãæäŸããŸããAPIèªäœãRDOãã©ã¡ãŒã¿ãçŽæ¥å
¬éããŠããããã§ã¯ãããŸããããéçºè
ã¯RDOããã»ã¹ã«éæ¥çã«åœ±é¿ãäžããããŸããŸãªãšã³ã³ãŒããŒèšå®ãæ§æã§ããŸãããã®æ§æã¯ãäž»ã«VideoEncoder
ãåæåããéã®VideoEncoderConfig
ãªããžã§ã¯ããéããŠè¡ãããŸãã
RDOã«åœ±é¿ãäžããäž»èŠãªãã©ã¡ãŒã¿ã«ã¯ä»¥äžãå«ãŸããŸãã
- ãããã¬ãŒã: ç®æšãããã¬ãŒãã®èšå®ã¯ãRDOãšé£åãããšã³ã³ãŒããŒã®å šäœçãªã¬ãŒãå¶åŸ¡æŠç¥ã«åœ±é¿ãäžããŸããç®æšãããã¬ãŒããäœãã»ã©ããšã³ã³ãŒããŒã¯ããç©æ¥µçãªå§çž®æ±ºå®ãè¡ãå¿ èŠããããæªã¿ã倧ãããªãå¯èœæ§ããããŸãã
- ãã¬ãŒã ã¬ãŒã: ããé«ããã¬ãŒã ã¬ãŒãã§ã¯ããšã³ã³ãŒããŒã¯1ç§ãããã«ããå€ãã®ããŒã¿ãåŠçããå¿ èŠããããŸããããã¯RDOããã»ã¹ã«åœ±é¿ãäžããå¯èœæ§ããããŸãããšã³ã³ãŒããŒã¯ããè¿ éãªæ±ºå®ãè¡ãå¿ èŠããããRDOããã»ã¹ã§ã®ç²ŸåºŠãç ç²ã«ãªãå¯èœæ§ããããŸãã
- ã³ãŒããã¯åºæã®èšå®: 䜿çšãããŠããç¹å®ã®ã³ãŒããã¯ïŒäŸïŒVP9ãAV1ãH.264ïŒã«ã¯ãRDOã«åœ±é¿ãäžããç¬èªã®ãã©ã¡ãŒã¿ã»ããããããŸãããããã®ãã©ã¡ãŒã¿ã«ã¯ãéååãã©ã¡ãŒã¿ãåãæšå®ã¢ã«ãŽãªãºã ãã³ãŒãã£ã³ã°ã¢ãŒãéžææŠç¥ãå«ãŸããå ŽåããããŸãããããã¯ã`VideoEncoderConfig`å ã®ã³ãŒããã¯åºæã®ãªãã·ã§ã³ãä»ããŠæ§æãããŸãã
- ã¬ã€ãã³ã·ãŒã¢ãŒã: ãªã¢ã«ã¿ã€ã éä¿¡ã·ããªãªïŒäŸïŒãããªäŒè°ïŒã§ã¯ãäœã¬ã€ãã³ã·ãŒãéèŠã§ãããšã³ã³ãŒããŒã¯ã絶察çãªå質ãããé床ãåªå ããå¿ èŠãããå ŽåããããRDOããã»ã¹ãåçŽåãããå¯èœæ§ããããŸãã
ã³ãŒããã¯åºæAPIã®æŽ»çš
WebCodecsã¯ãããŸããŸãªã³ãŒããã¯ïŒVP9ãAV1ãH.264ãªã©ïŒãžã®ã¢ã¯ã»ã¹ãæäŸãããããããç¬èªã®æ©èœãšèœåãæã£ãŠããŸããRDOãæå€§éã«æŽ»çšããã«ã¯ãã³ãŒããã¯åºæã®APIã調ã¹ããšã³ã³ãŒããŒãé©åã«æ§æããå¿ èŠãããããšããããããŸãã
ããšãã°ãVP9ã§ã¯ãéååãã©ã¡ãŒã¿ïŒQPïŒãçŽæ¥èª¿æŽã§ããå ŽåããããŸããQPãäœãã»ã©ãäžè¬çã«å質ã¯é«ããªããŸããããããã¬ãŒããé«ããªããŸããAV1ã¯ãããŸããŸãªãšã³ã³ãŒãã£ã³ã°ãã©ã¡ãŒã¿ã«å¯ŸããŠããã«è©³çްãªå¶åŸ¡ãæäŸããRDOããã»ã¹ã®åŸ®èª¿æŽãå¯èœã«ããŸãã
VideoEncoderConfig
ã®codecConfig
ããããã£ã¯ãã³ãŒããã¯åºæã®æ§æãåºç€ãšãªããšã³ã³ãŒããŒå®è£
ã«æž¡ãããã®äž»èŠãªã¡ã«ããºã ã§ãã
äŸïŒRDOçšã«VP9ãæ§æãã
å®å šãªäŸã¯é·ããªãå¯èœæ§ããããŸãããWebCodecsã䜿çšããŠRDOçšã«VP9ãæ§æããæ¹æ³ã®ç°¡åãªäŸã以äžã«ç€ºããŸãã
const encoderConfig = {
codec: 'vp09.00.10.08',
width: 1280,
height: 720,
bitrate: 2000000, // 2 Mbps
framerate: 30,
latencyMode: 'quality',
codecConfig: {
vp9: {
// ãããã¯äŸã®èšå®ã§ãããç¹å®ã®ããŒãºã«åºã¥ããŠèª¿æŽãå¿
èŠãªå ŽåããããŸãã
profile: 0,
level: 10,
quantizer: {
min: 4,
max: 63,
deltaQResilience: 1 // delta-Qã¬ãžãªãšã³ã¹ãæå¹ã«ãã
},
// ããé«åºŠãªRDOé¢é£èšå®ïŒäŸïŒïŒ
tune: {
rdmult: 20, // ã¬ãŒãæªã¿ä¹æ°
// ãã®ä»ã®ãã¥ãŒãã³ã°ãã©ã¡ãŒã¿
}
}
}
};
const encoder = new VideoEncoder(encoderConfig);
éèŠäºé ïŒç¹å®ã®ã³ãŒããã¯åºæã®ãã©ã¡ãŒã¿ãšãã®å¹æã¯ãåºç€ãšãªããšã³ã³ãŒããŒå®è£ ã«ãã£ãŠç°ãªãå ŽåããããŸããå©çšå¯èœãªãªãã·ã§ã³ãšãã®RDOãžã®åœ±é¿ãçè§£ããããã«ã䜿çšããŠããç¹å®ã®ã³ãŒããã¯ã®ããã¥ã¡ã³ããåç §ããããšãäžå¯æ¬ ã§ãã
RDOå®è£ ã®å®è·µçãªèæ ®äºé
èšç®è€éæ§
RDOã¯èšç®è² è·ãé«ãã§ãããšã³ã³ãŒããŒã¯å€æ°ã®ãšã³ã³ãŒãã£ã³ã°ãªãã·ã§ã³ãè©äŸ¡ããå¿ èŠãããããšã³ã³ãŒãã£ã³ã°æéãå€§å¹ ã«å¢å ãããå¯èœæ§ããããŸããããã¯ããšã³ã³ãŒãã£ã³ã°é床ãæåªå ããããªã¢ã«ã¿ã€ã ã¢ããªã±ãŒã·ã§ã³ã«ãšã£ãŠéèŠãªèæ ®äºé ã§ãã
RDOã®èšç®è€éæ§ã軜æžããããã®æŠç¥ã«ã¯ä»¥äžãå«ãŸããŸãã
- æ¢çŽ¢ç©ºéã®åçŽåïŒ ãšã³ã³ãŒããŒãèæ ®ãããšã³ã³ãŒãã£ã³ã°ãªãã·ã§ã³ã®æ°ãæžãããŸããããã«ã¯ãåããã¯ãã«ã®ç¯å²ãå¶éããããç¹å®ã®ã³ãŒãã£ã³ã°ã¢ãŒãã®äœ¿çšãå¶éããããããé«éïŒãã ã粟床ãäœãå¯èœæ§ã®ããïŒæªã¿æšå®æ¹æ³ã䜿çšãããããããšãå«ãŸããŸãã
- éå±€çRDOã®äœ¿çšïŒ è€æ°ã®ç²åºŠã¬ãã«ã§RDOãå®è¡ããŸããããšãã°ãããé«éã§ç²ŸåºŠã®äœãRDOã¢ã«ãŽãªãºã ã䜿çšããŠæ¢çŽ¢ç©ºéãè¿ éã«çµã蟌ã¿ããã®åŸãæ®ãã®åè£ã«å¯ŸããŠãã詳现ãªRDOã¢ã«ãŽãªãºã ãå®è¡ããŸãã
- 䞊ååïŒ RDOã®åºæã®äžŠåæ§ããè€æ°ã®CPUã³ã¢ãŸãã¯GPUã«èšç®ã忣ããããšã«ãã£ãп޻çšããŸããWebCodecsèªäœã¯ãéåæAPIãéããŠããçšåºŠã®äžŠååããµããŒãããŠããŸãã
é©åãªã©ã ãïŒÎ»ïŒã®éžæ
ã©ã°ã©ã³ãžã¥ä¹æ°ïŒÎ»ïŒã¯ãRDOã«ãããŠéèŠãªåœ¹å²ãæãããŸãããªããªããã¬ãŒããšæªã¿ã®éã®ãã¬ãŒããªããæ±ºå®ããããã§ããé©åãªã©ã ãå€ãéžæããããšã¯ããããªå質ãšãããã¬ãŒãã®æãŸãããã©ã³ã¹ãéæããããã«äžå¯æ¬ ã§ãã
ã©ã ãå€ãé«ãã»ã©ãããã¬ãŒãã®æå°åãåªå ããããããªå質ãäœäžããå¯èœæ§ããããŸããããã¯ã垯åå¹ ãéãããŠããã¢ãã€ã«ã¹ããªãŒãã³ã°ãäœåž¯åå¹ ãããã¯ãŒã¯ãªã©ã®ã·ããªãªã«é©ããŠããŸãã
ã©ã ãå€ãäœãã»ã©ããããã¬ãŒããé«ããªã£ãŠããããªåè³ªã®æå€§åãåªå ãããŸããããã¯ãã¢ãŒã«ã€ããé«éãããã¯ãŒã¯äžã®é«å質ãããªã¹ããªãŒãã³ã°ãªã©ã垯åå¹ ãè±å¯ãªã·ããªãªã«é©ããŠããŸãã
æé©ãªã©ã ãå€ã¯ããšã³ã³ãŒããããŠããã³ã³ãã³ãã«ãã£ãŠãç°ãªãå ŽåããããŸããããšãã°ãè€éãªã·ãŒã³ãšçްãããã£ããŒã«ãæã€ãããªã¯ããããã®ãã£ããŒã«ãä¿æããããã«äœãã©ã ãå€ãå¿ èŠãšããå ŽåããããŸãããåçŽãªã·ãŒã³ãæã€ãããªã¯ãå質ã®äœäžãªãã«é«ãã©ã ãå€ã蚱容ã§ããå ŽåããããŸãã
å®éã«ã¯ãã©ã ãã¯WebCodecsã§çŽæ¥èšå®å¯èœãªãã©ã¡ãŒã¿ãšããŠå ¬éãããŠããŸããã代ããã«ããããã¬ãŒãèšå®ããã®ä»ã®ã³ãŒããã¯åºæã®ãã©ã¡ãŒã¿ã«ãã£ãŠæé»çã«å¶åŸ¡ãããŸãããšã³ã³ãŒããŒã®å éšRDOã¢ã«ãŽãªãºã ã¯ããããã®èšå®ã«åºã¥ããŠã©ã ããåçã«èª¿æŽããŸãã
æªã¿ã¡ããªã¯ã¹
æªã¿ã¡ããªã¯ã¹ã®éžæãéèŠã§ããäžè¬çãªæªã¿ã¡ããªã¯ã¹ã«ã¯ä»¥äžãå«ãŸããŸãã
- å¹³åäºä¹èª€å·®ïŒMSEïŒïŒ å ã®ãã¯ã»ã«ãšãšã³ã³ãŒãããããã¯ã»ã«ã®å¹³åäºä¹èª€å·®ã枬å®ãããã·ã³ãã«ã§åºã䜿çšãããŠããã¡ããªã¯ã¹ã
- ããŒã¯ä¿¡å·å¯Ÿé鳿¯ïŒPSNRïŒïŒ MSEããã·ãã«ã§è¡šããé¢é£ããã¡ããªã¯ã¹ãPSNRå€ãé«ãã»ã©ãäžè¬çã«ãããªå質ãé«ãããšã瀺ããŸãã
- æ§é çé¡äŒŒæ§ææ°ïŒSSIMïŒïŒ 人éã®èŠèŠã·ã¹ãã ã®ç¥èŠçç¹æ§ãèæ ®ã«å ¥ãããããæŽç·Žãããã¡ããªã¯ã¹ãSSIMã¯ãMSEãPSNRãããç¥èŠããããããªåè³ªã®ææšãšããŠåªããŠãããšèŠãªãããããšããããããŸãã
- ãããªå質ã¡ããªã¯ã¹ïŒVMAFïŒïŒ ç¥èŠããããããªåè³ªã®æè¯ã®äºæž¬å åãšèŠãªããããæ©æ¢°åŠç¿ããŒã¹ã®ã¡ããªã¯ã¹ã
WebCodecsã¯ããšã³ã³ãŒãã£ã³ã°ããã»ã¹äžã«ãããã®æªã¿ã¡ããªã¯ã¹ã«çŽæ¥ã¢ã¯ã»ã¹ãæäŸããŸããããããŸããŸãªãšã³ã³ãŒãã£ã³ã°æ§æãšRDOæŠç¥ã®ããã©ãŒãã³ã¹ãè©äŸ¡ããéã«ã¯éåžžã«äŸ¡å€ããããŸãããšã³ã³ãŒãããããããªããã³ãŒããããããã®ã¡ããªã¯ã¹ã䜿çšããŠå ã®ãããªãšæ¯èŒããããšã§ããšã³ã³ãŒãã£ã³ã°èšå®ã埮調æŽã§ããŸãã
ãŠãŒã¹ã±ãŒã¹ãšã¢ããªã±ãŒã·ã§ã³
RDOã¯ã次ã®ãããªå¹ åºããããªãšã³ã³ãŒãã£ã³ã°ã¢ããªã±ãŒã·ã§ã³ã§åœ¹ç«ã¡ãŸãã- ãããªã¹ããªãŒãã³ã°ïŒ ããŸããŸãªãããã¯ãŒã¯æ¡ä»¶ãæã€èŠèŽè ã«æé©ãªãããªå質ãä¿èšŒããŸããã¢ãããã£ããããã¬ãŒãã¹ããªãŒãã³ã°ïŒABRïŒã¯ãRDOã«å€§ããäŸåããŠãããŸããŸãªãããã¬ãŒããšå質ã¬ãã«ã§ãããªã®è€æ°ã®ããŒãžã§ã³ãäœæãããã¬ã€ã€ãŒãå©çšå¯èœãªåž¯åå¹ ã«åºã¥ããŠããããåãæ¿ããããšãã§ããããã«ããŸããã°ããŒãã«ã¹ããªãŒãã³ã°ãµãŒãã¹ã¯ãèŠèŽè ãæ±äº¬ããã³ãã³ãããšãã¹ã¢ã€ã¬ã¹ã®ã©ãã«ããŠããå¯èœãªéãæé«ã®äœéšãæäŸããããã«ãRDOã®åŸ®èª¿æŽãã倧ãã«æ©æµãåããã§ãããã
- ãããªäŒè°ïŒ ãªã¢ã«ã¿ã€ã éä¿¡ã·ããªãªã§åž¯åå¹ äœ¿çšéãæå°éã«æããªãããããªå質ãç¶æããŸããè€æ°ã®åœã«ããåå è ãšã®ãããªäŒè°é話ã§ã¯ãRDOã¯ãäžéšã®åå è ã®åž¯åå¹ ãéãããŠããå Žåã§ããå šå¡ãã¯ãªã¢ã§å®å®ãããããªãã£ãŒããåãåããããã«ããã®ã«åœ¹ç«ã¡ãŸãã
- ãããªã¢ãŒã«ã€ãïŒ éèŠãªè©³çްãä¿æããªãããããªããŒã¿ãå¹ççã«å§çž®ããŸãããšãŒãããã®æ ç»ã¢ãŒã«ã€ãããã®ã³ã¬ã¯ã·ã§ã³ãããžã¿ã«åããŠãããšæ³åããŠã¿ãŠãã ãããRDOã¯ãã¹ãã¬ãŒãžã³ã¹ããæå°éã«æããªãããæ ç»ã®æŽå²çããã³èžè¡ç䟡å€ãä¿æããããã«äžå¯æ¬ ã§ãã
- ç£èŠã·ã¹ãã ïŒ æœåšçãªè åšãç¹å®ããã®ã«ååãªé®®æããç¶æããªãããç£èŠæ åãå¹ççã«ä¿åããŸããã°ããŒãã«ã»ãã¥ãªãã£äŒæ¥ã¯ãã¯ã©ã€ã¢ã³ãã®ç£èŠã·ã¹ãã ããã®èšå€§ãªéã®ãããªããŒã¿ãä¿åã§ããå¿ èŠããããŸããRDOã¯ãã¹ãã¬ãŒãžã³ã¹ããšãæç¢ºã§å®è¡å¯èœãªæ åã®å¿ èŠæ§ãšã®ãã©ã³ã¹ããšãããã«äžå¯æ¬ ã§ãã
- ã¯ã©ãŠãã²ãŒãã³ã°ïŒ ã²ãŒã ã¹ããªãŒãã³ã°ãµãŒãã¹ã®åž¯åå¹ æ¶è²»ãåæžããèŠèŠçå¿ å®åºŠãåäžãããŸããããŸããŸãªåœã®ãã¬ã€ã€ãŒã¯ãããŸããŸãªæ¥ç¶é床ãšããŒããŠã§ã¢ãæã£ãŠããŸããRDOã¯ããã¹ãŠã®äººã«äžè²«ããæ¥œããã²ãŒã äœéšãä¿èšŒããã®ã«åœ¹ç«ã¡ãŸãã
é«åºŠãªRDOãã¯ããã¯
RDOã®åºæ¬çãªååãè¶ ããŠããããªãšã³ã³ãŒãã£ã³ã°ããã©ãŒãã³ã¹ãããã«åäžãããããšãã§ããããã€ãã®é«åºŠãªãã¯ããã¯ããããŸãã
- é©å¿çéååïŒ ãããªã³ã³ãã³ãã®ç¹æ§ã«åºã¥ããŠãéååãã©ã¡ãŒã¿ãåçã«èª¿æŽããŸããããšãã°ã詳现ãå€ãé åã¯ããããã®è©³çްãä¿æããããã«äœãéååãã©ã¡ãŒã¿ã§ãšã³ã³ãŒããããå ŽåããããŸããã詳现ãå°ãªãé åã¯ããããã¬ãŒããåæžããããã«é«ãéååãã©ã¡ãŒã¿ã§ãšã³ã³ãŒããããå ŽåããããŸãã
- åãæšå®ã®æŽç·ŽïŒ ããæ£ç¢ºãªåããã¯ãã«ãèŠã€ããããã«ãããæŽç·Žãããåãæšå®ã¢ã«ãŽãªãºã ã䜿çšããŸããããã«ããããšã³ã³ãŒãããå¿ èŠãããæ®å·®ããŒã¿ãåæžã§ããå§çž®å¹çãåäžããŸãã
- ã¢ãŒã決å®ã®æé©åïŒ æ©æ¢°åŠç¿æè¡ã䜿çšããŠãåãã¯ããããã¯ã®æé©ãªã³ãŒãã£ã³ã°ã¢ãŒããäºæž¬ããŸããããã«ãããè©äŸ¡ããå¿ èŠãããã³ãŒãã£ã³ã°ã¢ãŒãã®æ°ãå¶éããããšã§ãRDOã®èšç®è€éæ§ãåæžã§ããŸãã
- ã³ã³ãã³ãèªèãšã³ã³ãŒãã£ã³ã°ïŒ ãããªã®ã³ã³ãã³ããåæããããã«å¿ããŠãšã³ã³ãŒãã£ã³ã°ãã©ã¡ãŒã¿ã調æŽããŸããããšãã°ãåãã®éããããªã¯ãåãã®ã¢ãŒãã£ãã¡ã¯ããåé¿ããããã«é«ããããã¬ãŒããå¿ èŠãšããå ŽåããããŸããã鿢ã·ãŒã³ã®ãããªã¯ãããäœããããã¬ãŒãã§ãšã³ã³ãŒãã§ããå ŽåããããŸãã
ãããã®é«åºŠãªãã¯ããã¯ã¯ã³ãŒããã¯åºæã§ããããšãå€ããWebCodecs APIãéããŠçŽæ¥å ¬éãããªãå ŽåããããŸãããã ãããããªãšã³ã³ãŒããŒã®ããã©ãŒãã³ã¹ã«å€§ãã圱é¿ãããããèªèããŠããããšãéèŠã§ãã
WebCodecsã«ãããRDOã®å°æ¥
WebCodecs APIãé²åãç¶ããã«ã€ããŠãRDOæ©èœã®ãããªãæ¹åãæåŸ ã§ããŸããããã«ã¯ä»¥äžãå«ãŸããå ŽåããããŸãã
- RDOãã©ã¡ãŒã¿ã®ããçŽæ¥çãªå¶åŸ¡ïŒ APIã¯ãã©ã°ã©ã³ãžã¥ä¹æ°ïŒÎ»ïŒãæªã¿ã¡ããªã¯ã¹ã®éžæãªã©ãRDOãã©ã¡ãŒã¿ãžã®ããçŽæ¥çãªå¶åŸ¡ãå ¬éããå¯èœæ§ããããŸããããã«ãããéçºè ã¯ç¹å®ã®ããŒãºã«åãããŠRDOããã»ã¹ã埮調æŽã§ããŸãã
- æ¹åãããã³ãŒããã¯å®è£ ïŒ ã³ãŒããã¯å®è£ ã¯ãRDOã¢ã«ãŽãªãºã ãåŒãç¶ãæ¹åããããåªãããããªå質ãšå§çž®å¹çã«ã€ãªããã§ãããã
- ããŒããŠã§ã¢ã¢ã¯ã»ã©ã¬ãŒã·ã§ã³ïŒ RDOã®ããŒããŠã§ã¢ã¢ã¯ã»ã©ã¬ãŒã·ã§ã³ãããæ®åãããšã³ã³ãŒãæéã®ççž®ãšæ¶è²»é»åã®åæžãå¯èœã«ãªããŸãã
RDOã®ååãçè§£ããWebCodecs APIã®æ©èœãå©çšããããšã§ãéçºè ã¯äžçäžã®ãŠãŒã¶ãŒã«é«å質ãªèŠèŽäœéšãæäŸããã匷åã§å¹ççãªãããªãšã³ã³ãŒãã£ã³ã°ã¢ããªã±ãŒã·ã§ã³ãæ§ç¯ã§ããŸãã
çµè«
ã¬ãŒãæªã¿æé©åã¯ãææ°ã®ãããªãšã³ã³ãŒãã£ã³ã°ã®åºç€ã§ãããWebCodecsã§é«å質ãªãããªãå®çŸããããã«ã¯ããã®å¹æçãªå®è£ ãäžå¯æ¬ ã§ããRDOã®ååãçè§£ãããšã³ã³ãŒããŒãé©åã«æ§æãããã®ããã°èšäºã§èª¬æãããŠããå®è·µçãªèæ ®äºé ãèæ ®ããããšã§ãéçºè ã¯WebCodecsã®åãå©çšããŠãã°ããŒãã«ãªãŒãã£ãšã³ã¹åãã«é åçã§å¹ççãªã¡ãã£ã¢ãšã¯ã¹ããªãšã³ã¹ãäœæã§ããŸããããŸããŸãªèšå®ãšæªã¿ã¡ããªã¯ã¹ã詊ããŠãã ãããããã©ãŒãã³ã¹ã¯åžžã«ã³ã³ãã³ãã«å€§ããäŸåããã³ã³ãã³ãã¯äžçäžã§ç°ãªããŸãã广çãªRDOã«ãããå°åã«é¢ä¿ãªããèŠèŽè ã®äœéšãç¹å®ã®ç¶æ³ã«ãããŠæåã®ãã®ãšãªãããšãä¿èšŒãããŸãã