From c13ac1fef18b051cf17f6b6eae657759ae324135 Mon Sep 17 00:00:00 2001 From: Joey Parrish Date: Mon, 16 Apr 2018 13:25:32 -0700 Subject: [PATCH] Add preferred audio channel config field to demo Issue #1013 Change-Id: I55cf86bd7b41d98155a4b4346277869cb4baa15c --- demo/asset_section.js | 6 ++++++ demo/configuration_section.js | 6 +++++- demo/demo.css | 3 +++ demo/index.html | 4 ++++ demo/main.js | 10 ++++++++++ 5 files changed, 28 insertions(+), 1 deletion(-) diff --git a/demo/asset_section.js b/demo/asset_section.js index 605cdd5ce9..4e04c813b5 100644 --- a/demo/asset_section.js +++ b/demo/asset_section.js @@ -246,6 +246,12 @@ shakaDemo.preparePlayer_ = function(asset) { document.getElementById('preferredAudioLanguage').value; config.preferredTextLanguage = document.getElementById('preferredTextLanguage').value; + const preferredAudioChannelCount = + document.getElementById('preferredAudioChannelCount').valueAsNumber; + if (!isNaN(preferredAudioChannelCount)) { + config.preferredAudioChannelCount = preferredAudioChannelCount; + } + config.abr.enabled = document.getElementById('enableAdaptation').checked; let smallGapLimit = document.getElementById('smallGapLimit').value; diff --git a/demo/configuration_section.js b/demo/configuration_section.js index 7073ac4e2b..0a024f41d8 100644 --- a/demo/configuration_section.js +++ b/demo/configuration_section.js @@ -37,6 +37,8 @@ shakaDemo.setupConfiguration_ = function() { 'input', shakaDemo.onConfigInput_); document.getElementById('preferredTextLanguage').addEventListener( 'input', shakaDemo.onConfigInput_); + document.getElementById('preferredAudioChannelCount').addEventListener( + 'input', shakaDemo.onConfigInput_); document.getElementById('showNative').addEventListener( 'change', shakaDemo.onNativeChange_); document.getElementById('showTrickPlay').addEventListener( @@ -152,7 +154,9 @@ shakaDemo.onConfigInput_ = function(event) { preferredAudioLanguage: document.getElementById('preferredAudioLanguage').value, preferredTextLanguage: - document.getElementById('preferredTextLanguage').value + document.getElementById('preferredTextLanguage').value, + preferredAudioChannelCount: + document.getElementById('preferredAudioChannelCount').value, })); // Change the hash, to mirror this. shakaDemo.hashShouldChange_(); diff --git a/demo/demo.css b/demo/demo.css index 8bec8014eb..453a4a6c26 100644 --- a/demo/demo.css +++ b/demo/demo.css @@ -105,10 +105,12 @@ h1 { padding: 0 0 0.2em 0; } +input[type=number], input[type=text] { font-family: Roboto, sans-serif; font-size: 0.9em; padding: 1px 2px 3px 6px; + height: 19px; } label, .label { @@ -358,6 +360,7 @@ summary { font-size: 1.4em; } + input[type=number], input[type=text] { font-size: 0.8em; } diff --git a/demo/index.html b/demo/index.html index 8933dcc1d2..d040c9e1d0 100644 --- a/demo/index.html +++ b/demo/index.html @@ -172,6 +172,10 @@

Shaka Player

+
+ + +
diff --git a/demo/main.js b/demo/main.js index 5fc6bbe979..96b8aaa9d0 100644 --- a/demo/main.js +++ b/demo/main.js @@ -106,6 +106,8 @@ shakaDemo.init = function() { document.getElementById('preferredAudioLanguage').value = language; document.getElementById('preferredTextLanguage').value = language; + document.getElementById('preferredAudioChannelCount').value = '2'; + let params = shakaDemo.getParams_(); shakaDemo.setupLogging_(); @@ -273,6 +275,10 @@ shakaDemo.preBrowserCheckParams_ = function(params) { if ('textlang' in params) { document.getElementById('preferredTextLanguage').value = params['textlang']; } + if ('channels' in params) { + document.getElementById('preferredAudioChannelCount').value = + params['channels']; + } if ('asset' in params) { document.getElementById('manifestInput').value = params['asset']; } @@ -522,6 +528,10 @@ shakaDemo.hashShouldChange_ = function() { } else { params.push('lang=' + audioLang); } + let channels = document.getElementById('preferredAudioChannelCount').value; + if (channels != '2') { + params.push('channels=' + channels); + } if (document.getElementById('logToScreen').checked) { params.push('logtoscreen'); }