mirror of
https://github.com/inotia00/revanced-patches.git
synced 2025-05-06 17:44:36 +02:00
feat(YouTube - Spoof streaming data): Separate Skip Onesie response encryption
setting from Spoof streaming data
setting (For YouTube 19.34.42+, Closes https://github.com/inotia00/ReVanced_Extended/issues/2823)
This commit is contained in:
parent
cf2264116e
commit
1a0b32b8d5
@ -23,6 +23,8 @@ public class SpoofStreamingDataPatch extends BlockRequestPatch {
|
||||
BaseSettings.SPOOF_STREAMING_DATA_PO_TOKEN.get();
|
||||
private static final String VISITOR_DATA =
|
||||
BaseSettings.SPOOF_STREAMING_DATA_VISITOR_DATA.get();
|
||||
private static final boolean SPOOF_STREAMING_DATA_SKIP_RESPONSE_ENCRYPTION =
|
||||
SPOOF_STREAMING_DATA && BaseSettings.SPOOF_STREAMING_DATA_SKIP_RESPONSE_ENCRYPTION.get();
|
||||
|
||||
/**
|
||||
* Any unreachable ip address. Used to intentionally fail requests.
|
||||
@ -67,11 +69,11 @@ public class SpoofStreamingDataPatch extends BlockRequestPatch {
|
||||
* Skip response encryption in OnesiePlayerRequest.
|
||||
*/
|
||||
public static boolean skipResponseEncryption(boolean original) {
|
||||
if (!SPOOF_STREAMING_DATA) {
|
||||
return original;
|
||||
if (SPOOF_STREAMING_DATA_SKIP_RESPONSE_ENCRYPTION) {
|
||||
return false;
|
||||
}
|
||||
|
||||
return false;
|
||||
return original;
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -41,6 +41,7 @@ public class BaseSettings {
|
||||
public static final EnumSetting<AppLanguage> SPOOF_STREAMING_DATA_LANGUAGE = new EnumSetting<>("revanced_spoof_streaming_data_language", AppLanguage.DEFAULT, new AudioStreamLanguageOverrideAvailability());
|
||||
public static final BooleanSetting SPOOF_STREAMING_DATA_IOS_FORCE_AVC = new BooleanSetting("revanced_spoof_streaming_data_ios_force_avc", FALSE, true,
|
||||
"revanced_spoof_streaming_data_ios_force_avc_user_dialog_message");
|
||||
public static final BooleanSetting SPOOF_STREAMING_DATA_SKIP_RESPONSE_ENCRYPTION = new BooleanSetting("revanced_spoof_streaming_data_skip_response_encryption", TRUE, true);
|
||||
public static final BooleanSetting SPOOF_STREAMING_DATA_STATS_FOR_NERDS = new BooleanSetting("revanced_spoof_streaming_data_stats_for_nerds", TRUE);
|
||||
// Client type must be last spoof setting due to cyclic references.
|
||||
public static final EnumSetting<YouTubeAppClient.ClientType> SPOOF_STREAMING_DATA_TYPE = new EnumSetting<>("revanced_spoof_streaming_data_type", YouTubeAppClient.ClientType.ANDROID_UNPLUGGED, true);
|
||||
|
@ -61,6 +61,10 @@ val spoofStreamingDataPatch = bytecodePatch(
|
||||
|
||||
execute {
|
||||
|
||||
var settingArray = arrayOf(
|
||||
"SETTINGS: SPOOF_STREAMING_DATA"
|
||||
)
|
||||
|
||||
// region Get replacement streams at player requests.
|
||||
|
||||
hookBuildRequest("$EXTENSION_CLASS_DESCRIPTOR->fetchStreams(Ljava/lang/String;Ljava/util/Map;)V")
|
||||
@ -327,6 +331,8 @@ val spoofStreamingDataPatch = bytecodePatch(
|
||||
ONESIE_ENCRYPTION_FEATURE_FLAG,
|
||||
"$EXTENSION_CLASS_DESCRIPTOR->skipResponseEncryption(Z)Z"
|
||||
)
|
||||
|
||||
settingArray += "SETTINGS: SKIP_RESPONSE_ENCRYPTION"
|
||||
}
|
||||
|
||||
// endregion
|
||||
@ -339,9 +345,7 @@ val spoofStreamingDataPatch = bytecodePatch(
|
||||
)
|
||||
|
||||
addPreference(
|
||||
arrayOf(
|
||||
"SETTINGS: SPOOF_STREAMING_DATA"
|
||||
),
|
||||
settingArray,
|
||||
SPOOF_STREAMING_DATA
|
||||
)
|
||||
}
|
||||
|
@ -2066,6 +2066,14 @@ Tap the continue button and allow optimization changes."</string>
|
||||
<string name="revanced_spoof_streaming_data_ios_force_avc_user_dialog_message">"Enabling this might improve battery life and fix playback stuttering.
|
||||
|
||||
AVC has a maximum resolution of 1080p, Opus audio codec is not available, and video playback will use more internet data than VP9 or AV1."</string>
|
||||
<string name="revanced_spoof_streaming_data_skip_response_encryption_title">Skip Onesie response encryption</string>
|
||||
<string name="revanced_spoof_streaming_data_skip_response_encryption_summary_on">"Skip Onesie response encryption.
|
||||
|
||||
• Fixes a new type of playback issue that some users are experiencing.
|
||||
• AV1 codec may not be available."</string>
|
||||
<string name="revanced_spoof_streaming_data_skip_response_encryption_summary_off">"Do not skip Onesie response encryption.
|
||||
|
||||
• Some users may experience a new type of playback issue."</string>
|
||||
<string name="revanced_spoof_streaming_data_stats_for_nerds_title">Show in Stats for nerds</string>
|
||||
<string name="revanced_spoof_streaming_data_stats_for_nerds_summary_on">Client used to fetch streaming data is shown in Stats for nerds.</string>
|
||||
<string name="revanced_spoof_streaming_data_stats_for_nerds_summary_off">Client used to fetch streaming data is hidden in Stats for nerds.</string>
|
||||
|
@ -831,7 +831,12 @@
|
||||
<ListPreference android:entries="@array/revanced_spoof_streaming_data_type_entries" android:title="@string/revanced_spoof_streaming_data_type_title" android:key="revanced_spoof_streaming_data_type" android:entryValues="@array/revanced_spoof_streaming_data_type_entry_values" android:dependency="revanced_spoof_streaming_data" />
|
||||
<app.revanced.extension.youtube.settings.preference.SpoofStreamingDataSideEffectsPreference android:title="@string/revanced_spoof_streaming_data_side_effects_title" />
|
||||
<SwitchPreference android:title="@string/revanced_spoof_streaming_data_ios_force_avc_title" android:key="revanced_spoof_streaming_data_ios_force_avc" android:summaryOn="@string/revanced_spoof_streaming_data_ios_force_avc_summary_on" android:summaryOff="@string/revanced_spoof_streaming_data_ios_force_avc_summary_off" android:dependency="revanced_spoof_streaming_data" />
|
||||
<ListPreference android:entries="@array/revanced_language_entries" android:title="@string/revanced_spoof_streaming_data_language_title" android:key="revanced_spoof_streaming_data_language" android:entryValues="@array/revanced_language_entry_values" android:dependency="revanced_spoof_streaming_data" />
|
||||
<ListPreference android:entries="@array/revanced_language_entries" android:title="@string/revanced_spoof_streaming_data_language_title" android:key="revanced_spoof_streaming_data_language" android:entryValues="@array/revanced_language_entry_values" android:dependency="revanced_spoof_streaming_data" />SETTINGS: SPOOF_STREAMING_DATA -->
|
||||
|
||||
<!-- SETTINGS: SKIP_RESPONSE_ENCRYPTION
|
||||
<SwitchPreference android:title="@string/revanced_spoof_streaming_data_skip_response_encryption_title" android:key="revanced_spoof_streaming_data_skip_response_encryption" android:summaryOn="@string/revanced_spoof_streaming_data_skip_response_encryption_summary_on" android:summaryOff="@string/revanced_spoof_streaming_data_skip_response_encryption_summary_off" android:dependency="revanced_spoof_streaming_data" />SETTINGS: SKIP_RESPONSE_ENCRYPTION -->
|
||||
|
||||
<!-- SETTINGS: SPOOF_STREAMING_DATA
|
||||
<SwitchPreference android:title="@string/revanced_spoof_streaming_data_stats_for_nerds_title" android:key="revanced_spoof_streaming_data_stats_for_nerds" android:summaryOn="@string/revanced_spoof_streaming_data_stats_for_nerds_summary_on" android:summaryOff="@string/revanced_spoof_streaming_data_stats_for_nerds_summary_off" android:dependency="revanced_spoof_streaming_data" />
|
||||
<PreferenceCategory android:title="@string/revanced_preference_category_po_token_visitor_data" android:layout="@layout/revanced_settings_preferences_category" />
|
||||
<app.revanced.extension.shared.settings.preference.ResettableEditTextPreference android:title="@string/revanced_spoof_streaming_data_po_token_title" android:key="revanced_spoof_streaming_data_po_token" android:summary="@string/revanced_spoof_streaming_data_po_token_summary" android:inputType="text" android:dependency="revanced_spoof_streaming_data" />
|
||||
|
Loading…
x
Reference in New Issue
Block a user