Skip to content

Commit b976ecf

Browse files
committed
YouTube Flag Fix
1 parent 774a285 commit b976ecf

File tree

2 files changed

+14
-4
lines changed

2 files changed

+14
-4
lines changed

484611-youtube-audio-only.user.js

Lines changed: 12 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
// @name YouTube: Audio Only
33
// @description No Video Streaming
44
// @namespace UserScript
5-
// @version 1.6.6
5+
// @version 1.6.7
66
// @author CY Fung
77
// @match https://www.youtube.com/*
88
// @match https://www.youtube.com/embed/*
@@ -300,7 +300,7 @@
300300
let configs = config_.WEB_PLAYER_CONTEXT_CONFIGS || {};
301301
for (const [key, entry] of Object.entries(configs)) {
302302

303-
if (entry && typeof entry.serializedExperimentFlags === 'string') {
303+
if (entry && typeof entry.serializedExperimentFlags === 'string' && entry.serializedExperimentFlags.length > 16) {
304304
// prevent idle playback failure
305305
entry.serializedExperimentFlags = entry.serializedExperimentFlags.replace(/\b(html5_check_for_idle_network_interval_ms|html5_trigger_loader_when_idle_network|html5_sabr_fetch_on_idle_network_preloaded_players|html5_autonav_cap_idle_secs|html5_autonav_quality_cap|html5_disable_client_autonav_cap_for_onesie|html5_idle_rate_limit_ms|html5_sabr_fetch_on_idle_network_preloaded_players|html5_webpo_idle_priority_job|html5_server_playback_start_policy|html5_check_video_data_errors_before_playback_start|html5_check_unstarted|html5_check_queue_on_data_loaded)=([-_\w]+)(\&|$)/g, (_, a, b, c) => {
306306
return a + '00' + '=' + b + c;
@@ -1050,7 +1050,16 @@
10501050
const cProto = cnt.constructor.prototype;
10511051
cProto.createMainAppPlayer932_ = cProto.createMainAppPlayer_;
10521052
cProto.initPlayer932_ = cProto.initPlayer_;
1053+
const configFixBeforeCreate = () => {
1054+
try {
1055+
const config_ = typeof yt !== 'undefined' ? (yt || 0).config_ : 0;
1056+
if (config_) {
1057+
ytConfigFix(config_);
1058+
}
1059+
} catch (e) { }
1060+
}
10531061
cProto.createMainAppPlayer_ = function (a, b, c) {
1062+
configFixBeforeCreate();
10541063
let r = this.createMainAppPlayer932_(a, b, c);
10551064
try {
10561065
this.mainAppPlayer_.api.then(function (e) {
@@ -1061,6 +1070,7 @@
10611070
}
10621071
}
10631072
cProto.initPlayer_ = function (a) {
1073+
configFixBeforeCreate();
10641074
let r = this.initPlayer932_(a);
10651075
try {
10661076
r.then(() => {

youtube-music-audio-only.user.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
// @name YouTube Music: Audio Only
33
// @description No Video Streaming
44
// @namespace UserScript
5-
// @version 0.1.8
5+
// @version 0.1.9
66
// @author CY Fung
77
// @match https://music.youtube.com/*
88
// @exclude /^https?://\S+\.(txt|png|jpg|jpeg|gif|xml|svg|manifest|log|ini)[^\/]*$/
@@ -320,7 +320,7 @@
320320
let configs = config_.WEB_PLAYER_CONTEXT_CONFIGS || {};
321321
for (const [key, entry] of Object.entries(configs)) {
322322

323-
if (entry && typeof entry.serializedExperimentFlags === 'string') {
323+
if (entry && typeof entry.serializedExperimentFlags === 'string' && entry.serializedExperimentFlags.length > 16) {
324324
// prevent idle playback failure
325325
entry.serializedExperimentFlags = entry.serializedExperimentFlags.replace(/\b(html5_check_for_idle_network_interval_ms|html5_trigger_loader_when_idle_network|html5_sabr_fetch_on_idle_network_preloaded_players|html5_autonav_cap_idle_secs|html5_autonav_quality_cap|html5_disable_client_autonav_cap_for_onesie|html5_idle_rate_limit_ms|html5_sabr_fetch_on_idle_network_preloaded_players|html5_webpo_idle_priority_job|html5_server_playback_start_policy|html5_check_video_data_errors_before_playback_start|html5_check_unstarted|html5_check_queue_on_data_loaded)=([-_\w]+)(\&|$)/g, (_, a, b, c) => {
326326
return a + '00' + '=' + b + c;

0 commit comments

Comments
 (0)