Skip to content

Commit

Permalink
v2.0.7: Chromium Edge Support
Browse files Browse the repository at this point in the history
  • Loading branch information
shirt-dev committed Sep 26, 2021
1 parent 994c72c commit 087295e
Show file tree
Hide file tree
Showing 5 changed files with 72 additions and 19 deletions.
75 changes: 61 additions & 14 deletions cadmium-playercore-shim.js
Original file line number Diff line number Diff line change
Expand Up @@ -26,33 +26,80 @@ var cadmium_src = request.responseText;

// eslint-disable-next-line no-unused-vars
function get_profile_list() {
// Always add h264 profiles
var custom_profiles = [
"playready-h264mpl30-dash",
"playready-h264mpl31-dash",
"playready-h264mpl40-dash",
"playready-h264hpl30-dash",
"playready-h264hpl31-dash",
"playready-h264hpl40-dash",
"heaac-2-dash",
"heaac-2hq-dash",
"simplesdh",
"nflx-cmisc",
"BIF240",
"BIF320"
"playready-h264hpl40-dash",
];

if (!globalOptions.disableVP9) {
if (window.MSMediaKeys) {
// Chromium Edge Specific

// Always add 2.0 AAC profiles, some manifests fail without them
custom_profiles = custom_profiles.concat([
"vp9-profile0-L30-dash-cenc",
"vp9-profile0-L31-dash-cenc",
"vp9-profile0-L40-dash-cenc",
"heaac-2-dash",
"heaac-2hq-dash",
]);
}

if (globalOptions.use6Channels) {
custom_profiles.push("heaac-5.1-dash");
if (globalOptions.useDDPlus) {
// Dolby Digital
custom_profiles = custom_profiles.concat([
"ddplus-2.0-dash",
]);

if (globalOptions.use6Channels) {
custom_profiles = custom_profiles.concat([
"ddplus-5.1-dash",
"ddplus-5.1hq-dash",
"ddplus-atmos-dash",
]);
}
} else {
// No Dolby Digital
if (globalOptions.use6Channels) {
custom_profiles = custom_profiles.concat([
"heaac-5.1-dash",
]);
}
}


} else {
// Chrome, Firefox Specific

if (!globalOptions.disableVP9) {
// Add VP9 Profiles if wanted
custom_profiles = custom_profiles.concat([
"vp9-profile0-L30-dash-cenc",
"vp9-profile0-L31-dash-cenc",
"vp9-profile0-L40-dash-cenc",
]);
}

custom_profiles = custom_profiles.concat([
"heaac-2-dash",
"heaac-2hq-dash",
]);

if (globalOptions.use6Channels) {
custom_profiles = custom_profiles.concat([
"heaac-5.1-dash",
]);
}
}

// Always add subtitles
custom_profiles = custom_profiles.concat([
"simplesdh",
"nflx-cmisc",
"BIF240",
"BIF320",
]);

return custom_profiles;
}

Expand Down
1 change: 1 addition & 0 deletions content_script.js
Original file line number Diff line number Diff line change
Expand Up @@ -46,6 +46,7 @@ chromeStorageGet({
showAllTracks: true,
setMaxBitrate: false,
disableVP9: false,
useDDPlus: false,
}).then(items => {
// very messy workaround for accessing chrome storage outside of background / content scripts
let mainScript = document.createElement("script");
Expand Down
2 changes: 1 addition & 1 deletion manifest.json
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
"manifest_version": 2,
"name": "Netflix International",
"description": "Displays all available Netflix audio tracks.",
"version": "2.0.6",
"version": "2.0.7",
"author": "shirt",
"browser_action": {
"default_icon": "img/icon128.png"
Expand Down
2 changes: 2 additions & 0 deletions pages/options.html
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,8 @@
<input type="checkbox" id="setMaxBitrate"><label for="setMaxBitrate">Automatically select best bitrate available</label>
<br>
<input type="checkbox" id="disableVP9"><label for="disableVP9">Disable VP9 codec</label>
<br>
<input type="checkbox" id="useDDPlus"><label for="useDDPlus">Use Dolby Digital Plus (Chromium Edge)</label>

<div id="status"></div>
<button id="save">Save</button>
Expand Down
11 changes: 7 additions & 4 deletions pages/options.js
Original file line number Diff line number Diff line change
Expand Up @@ -4,12 +4,14 @@ function save_options() {
const showAllTracks = document.getElementById("showAllTracks").checked;
const setMaxBitrate = document.getElementById("setMaxBitrate").checked;
const disableVP9 = document.getElementById("disableVP9").checked;
const useDDPlus = document.getElementById("useDDPlus").checked;

chrome.storage.sync.set({
use6Channels,
showAllTracks,
setMaxBitrate,
disableVP9,
use6Channels: use6Channels,
showAllTracks: showAllTracks,
setMaxBitrate: setMaxBitrate,
disableVP9: disableVP9,
useDDPlus: useDDPlus,
}, function() {
var status = document.getElementById("status");
status.textContent = "Options saved.";
Expand All @@ -25,6 +27,7 @@ function restore_options() {
showAllTracks: true,
setMaxBitrate: false,
disableVP9: false,
useDDPlus: false,
}, function(items) {
document.getElementById("use51").checked = items.use6Channels;
document.getElementById("showAllTracks").checked = items.showAllTracks;
Expand Down

0 comments on commit 087295e

Please sign in to comment.