@@ -307,13 +307,15 @@ shaka.util.Platform = class {
307307 ! shaka . util . Platform . isTizen ( ) &&
308308 ! shaka . util . Platform . isEOS ( ) &&
309309 ! shaka . util . Platform . isAPL ( ) &&
310+ ! shaka . util . Platform . isAPP ( ) &&
310311 ! shaka . util . Platform . isVirginMedia ( ) &&
311312 ! shaka . util . Platform . isOrange ( ) &&
312313 ! shaka . util . Platform . isPS4 ( ) &&
313314 ! shaka . util . Platform . isAmazonFireTV ( ) &&
314315 ! shaka . util . Platform . isComcastX1 ( ) &&
315316 ! shaka . util . Platform . isZenterio ( ) &&
316- ! shaka . util . Platform . isSkyQ ( ) ;
317+ ! shaka . util . Platform . isSkyQ ( ) &&
318+ ! shaka . util . Platform . isMultiChoice ( ) ;
317319 }
318320
319321 /**
@@ -391,6 +393,16 @@ shaka.util.Platform = class {
391393 return shaka . util . Platform . userAgentContains_ ( 'DT_STB_BCM' ) ;
392394 }
393395
396+ /**
397+ * Check if the current platform is a MultiChoice STB.
398+ * @return {boolean }
399+ */
400+ static isMultiChoice ( ) {
401+ // cspell: ignore MDMP
402+ return shaka . util . Platform . userAgentContains_ ( 'MDMP1001S' ) ||
403+ shaka . util . Platform . userAgentContains_ ( 'PS5525IMC' ) ;
404+ }
405+
394406 /**
395407 * Returns a major version number for Safari, or Safari-based iOS browsers.
396408 *
@@ -456,6 +468,14 @@ shaka.util.Platform = class {
456468 return shaka . util . Platform . userAgentContains_ ( 'PC=APL' ) ;
457469 }
458470
471+ /**
472+ * Check if the current platform is an APPSTB set-top box.
473+ * @return {boolean }
474+ */
475+ static isAPP ( ) {
476+ return shaka . util . Platform . userAgentContains_ ( 'PC=APPSTB' ) ;
477+ }
478+
459479 /**
460480 * Guesses if the platform is a mobile one (iOS or Android).
461481 *
@@ -548,7 +568,8 @@ shaka.util.Platform = class {
548568 Platform . isEOS ( ) || Platform . isAPL ( ) ||
549569 Platform . isVirginMedia ( ) || Platform . isOrange ( ) ||
550570 Platform . isComcastX1 ( ) || Platform . isChromecast ( ) ||
551- Platform . isHisense ( ) || Platform . isZenterio ( ) ) {
571+ Platform . isHisense ( ) || Platform . isZenterio ( ) ||
572+ Platform . isAPP ( ) || Platform . isMultiChoice ( ) ) {
552573 return true ;
553574 }
554575 return false ;
0 commit comments