mirror of
https://github.com/revanced/revanced-patches.git
synced 2025-12-25 10:24:08 +01:00
Compare commits
16 Commits
v5.6.0-dev
...
v5.7.0-dev
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
b51be82cff | ||
|
|
b8635d0b88 | ||
|
|
78699c8bbf | ||
|
|
aeedec7fed | ||
|
|
32b614696b | ||
|
|
a0b63dfa23 | ||
|
|
f0f53cf72f | ||
|
|
cdb68209d1 | ||
|
|
7369f7b8d5 | ||
|
|
db521b940b | ||
|
|
25d7cc68ae | ||
|
|
9495064e6e | ||
|
|
64864c2cdb | ||
|
|
ad0ffb3328 | ||
|
|
06800324aa | ||
|
|
ec746cb05a |
61
CHANGELOG.md
61
CHANGELOG.md
@@ -1,3 +1,64 @@
|
||||
# [5.7.0-dev.1](https://github.com/ReVanced/revanced-patches/compare/v5.6.1-dev.4...v5.7.0-dev.1) (2024-12-21)
|
||||
|
||||
|
||||
### Features
|
||||
|
||||
* **YouTube:** Support version `19.47.53` ([#4182](https://github.com/ReVanced/revanced-patches/issues/4182)) ([2089e61](https://github.com/ReVanced/revanced-patches/commit/2089e613d36c45352db7d852aaee0087b1c3e1a4))
|
||||
|
||||
## [5.6.1-dev.4](https://github.com/ReVanced/revanced-patches/compare/v5.6.1-dev.3...v5.6.1-dev.4) (2024-12-21)
|
||||
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* **YouTube - Spoof video stream:** Remove UI client type setting. Allow setting default audio language. ([#4184](https://github.com/ReVanced/revanced-patches/issues/4184)) ([99f3f29](https://github.com/ReVanced/revanced-patches/commit/99f3f29c649bf7693c05bbce2bb49bd53e05f050))
|
||||
|
||||
## [5.6.1-dev.3](https://github.com/ReVanced/revanced-patches/compare/v5.6.1-dev.2...v5.6.1-dev.3) (2024-12-21)
|
||||
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* **YouTube - Force original audio:** Use correct availability for settings UI ([a7eedcb](https://github.com/ReVanced/revanced-patches/commit/a7eedcb4cca6b7b12629c478c24c0899c80e3615))
|
||||
|
||||
## [5.6.1-dev.2](https://github.com/ReVanced/revanced-patches/compare/v5.6.1-dev.1...v5.6.1-dev.2) (2024-12-21)
|
||||
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* **YouTube - Spoof video streams:** Remove iOS, add clients Android TV and Android Creator ([#4180](https://github.com/ReVanced/revanced-patches/issues/4180)) ([86abfb2](https://github.com/ReVanced/revanced-patches/commit/86abfb2b0d4675f0a1cb9ab244783075bfe89281))
|
||||
|
||||
## [5.6.1-dev.1](https://github.com/ReVanced/revanced-patches/compare/v5.6.0...v5.6.1-dev.1) (2024-12-21)
|
||||
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* **YouTube:** Change fingerprints to support a wider range of target versions ([8a09174](https://github.com/ReVanced/revanced-patches/commit/8a09174def205a26ce49cb7815097e235069526a))
|
||||
|
||||
# [5.6.0](https://github.com/ReVanced/revanced-patches/compare/v5.5.1...v5.6.0) (2024-12-20)
|
||||
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* **Twitter - Change link sharing domain:** Use correct extension package ([ad7fab6](https://github.com/ReVanced/revanced-patches/commit/ad7fab67319ba23f267d27da9b74266965fc4be3))
|
||||
* **YouTube - Force original audio:** Use correct original audio stream if app language is not English ([0d20171](https://github.com/ReVanced/revanced-patches/commit/0d2017133efac230887b5c2a331d87159df8af11))
|
||||
* **YouTube - Hide layout components:** Hide new kind of community post ([#4155](https://github.com/ReVanced/revanced-patches/issues/4155)) ([08f68cb](https://github.com/ReVanced/revanced-patches/commit/08f68cb5d33f2cfe656d2f93d159c69981f31418))
|
||||
* **YouTube - Miniplayer:** Use estimated maximum on screen size for devices with low density screens ([#4150](https://github.com/ReVanced/revanced-patches/issues/4150)) ([2694158](https://github.com/ReVanced/revanced-patches/commit/2694158c3c9935ede21c96832533222f850068df))
|
||||
* **YouTube - Open Shorts in regular player:** Do not show the miniplayer after opening a Short while a video is playing ([894e366](https://github.com/ReVanced/revanced-patches/commit/894e36665d17d5a3a5728961d424dffc55faa50b))
|
||||
* **YouTube - SponsorBlock:** Show create new segment error messages using a dialog ([#4148](https://github.com/ReVanced/revanced-patches/issues/4148)) ([5870906](https://github.com/ReVanced/revanced-patches/commit/587090636dfff0b358b15026cf7d47c65a4296dc))
|
||||
* **YouTube - Spoof video streams:** Change default spoofing to iOS, allow setting a default language with Android VR ([#4171](https://github.com/ReVanced/revanced-patches/issues/4171)) ([171b4e7](https://github.com/ReVanced/revanced-patches/commit/171b4e7e40066e38fba773b7a6525e9a038779ef))
|
||||
* **YouTube - Spoof video streams:** Update iOS client version ([df3aeed](https://github.com/ReVanced/revanced-patches/commit/df3aeed3b173e408fad80197a89ec5d003a2b328))
|
||||
|
||||
|
||||
### Features
|
||||
|
||||
* **YouTube:** Add `Open Shorts in regular player` patch ([#4153](https://github.com/ReVanced/revanced-patches/issues/4153)) ([c7c5e5b](https://github.com/ReVanced/revanced-patches/commit/c7c5e5b2b9cf63d8225bb6bd5e735ddf945b6c29))
|
||||
|
||||
# [5.6.0-dev.6](https://github.com/ReVanced/revanced-patches/compare/v5.6.0-dev.5...v5.6.0-dev.6) (2024-12-20)
|
||||
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* **YouTube - Spoof video streams:** Update iOS client version ([df3aeed](https://github.com/ReVanced/revanced-patches/commit/df3aeed3b173e408fad80197a89ec5d003a2b328))
|
||||
|
||||
# [5.6.0-dev.5](https://github.com/ReVanced/revanced-patches/compare/v5.6.0-dev.4...v5.6.0-dev.5) (2024-12-20)
|
||||
|
||||
|
||||
|
||||
@@ -3,10 +3,8 @@ package app.revanced.extension.shared.settings;
|
||||
import static java.lang.Boolean.FALSE;
|
||||
import static java.lang.Boolean.TRUE;
|
||||
import static app.revanced.extension.shared.settings.Setting.parent;
|
||||
import static app.revanced.extension.shared.spoof.SpoofVideoStreamsPatch.SpoofiOSAvailability;
|
||||
|
||||
import app.revanced.extension.shared.spoof.AudioStreamLanguage;
|
||||
import app.revanced.extension.shared.spoof.ClientType;
|
||||
|
||||
/**
|
||||
* Settings shared across multiple apps.
|
||||
@@ -23,8 +21,4 @@ public class BaseSettings {
|
||||
|
||||
public static final BooleanSetting SPOOF_VIDEO_STREAMS = new BooleanSetting("revanced_spoof_video_streams", TRUE, true, "revanced_spoof_video_streams_user_dialog_message");
|
||||
public static final EnumSetting<AudioStreamLanguage> SPOOF_VIDEO_STREAMS_LANGUAGE = new EnumSetting<>("revanced_spoof_video_streams_language", AudioStreamLanguage.DEFAULT, parent(SPOOF_VIDEO_STREAMS));
|
||||
public static final BooleanSetting SPOOF_VIDEO_STREAMS_IOS_FORCE_AVC = new BooleanSetting("revanced_spoof_video_streams_ios_force_avc", FALSE, true,
|
||||
"revanced_spoof_video_streams_ios_force_avc_user_dialog_message", new SpoofiOSAvailability());
|
||||
public static final EnumSetting<ClientType> SPOOF_VIDEO_STREAMS_CLIENT_TYPE = new EnumSetting<>("revanced_spoof_video_streams_client_type", ClientType.IOS, true, parent(SPOOF_VIDEO_STREAMS));
|
||||
|
||||
}
|
||||
|
||||
@@ -4,47 +4,45 @@ import android.os.Build;
|
||||
|
||||
import androidx.annotation.Nullable;
|
||||
|
||||
import app.revanced.extension.shared.settings.BaseSettings;
|
||||
|
||||
public enum ClientType {
|
||||
// Specific purpose for age restricted, or private videos, because the iOS client is not logged in.
|
||||
// https://dumps.tadiphone.dev/dumps/oculus/eureka
|
||||
ANDROID_VR(28,
|
||||
ANDROID_VR_NO_AUTH( // Must be first so a default audio language can be set.
|
||||
28,
|
||||
"ANDROID_VR",
|
||||
"Quest 3",
|
||||
"12",
|
||||
"com.google.android.apps.youtube.vr.oculus/1.56.21 (Linux; U; Android 12; GB) gzip",
|
||||
"32", // Android 12.1
|
||||
"1.56.21",
|
||||
true
|
||||
),
|
||||
// Specific for kids videos.
|
||||
IOS(5,
|
||||
"IOS",
|
||||
forceAVC()
|
||||
? "iPhone12,5" // 11 Pro Max (last device with iOS 13)
|
||||
: "iPhone16,2", // 15 Pro Max
|
||||
// iOS 13 and earlier uses only AVC. 14+ adds VP9 and AV1.
|
||||
forceAVC()
|
||||
? "13.7.17H35" // Last release of iOS 13.
|
||||
: "17.5.1.21F90",
|
||||
forceAVC()
|
||||
? "com.google.ios.youtube/17.40.5 (iPhone; U; CPU iOS 13_7 like Mac OS X)"
|
||||
: "com.google.ios.youtube/19.47.7 (iPhone; U; CPU iOS 17_5_1 like Mac OS X)",
|
||||
null,
|
||||
// Version number should be a valid iOS release.
|
||||
// https://www.ipa4fun.com/history/185230
|
||||
forceAVC()
|
||||
// Some newer versions can also force AVC,
|
||||
// but 17.40 is the last version that supports iOS 13.
|
||||
? "17.40.5"
|
||||
: "19.47.7",
|
||||
false
|
||||
);
|
||||
|
||||
private static boolean forceAVC() {
|
||||
return BaseSettings.SPOOF_VIDEO_STREAMS_IOS_FORCE_AVC.get();
|
||||
}
|
||||
false),
|
||||
// Fall over to authenticated ('hl' is ignored and audio is same as language set in users Google account).
|
||||
ANDROID_VR(
|
||||
ANDROID_VR_NO_AUTH.id,
|
||||
ANDROID_VR_NO_AUTH.clientName,
|
||||
ANDROID_VR_NO_AUTH.deviceModel,
|
||||
ANDROID_VR_NO_AUTH.osVersion,
|
||||
ANDROID_VR_NO_AUTH.userAgent,
|
||||
ANDROID_VR_NO_AUTH.androidSdkVersion,
|
||||
ANDROID_VR_NO_AUTH.clientVersion,
|
||||
true),
|
||||
ANDROID_UNPLUGGED(
|
||||
29,
|
||||
"ANDROID_UNPLUGGED",
|
||||
"Google TV Streamer",
|
||||
"14",
|
||||
"com.google.android.apps.youtube.unplugged/8.49.0 (Linux; U; Android 14; GB) gzip",
|
||||
"34",
|
||||
"8.49.0",
|
||||
true), // Requires login.
|
||||
ANDROID_CREATOR(
|
||||
14,
|
||||
"ANDROID_CREATOR",
|
||||
"Android",
|
||||
"11",
|
||||
"com.google.android.apps.youtube.creator/24.45.100 (Linux; U; Android 11) gzip",
|
||||
"30",
|
||||
"24.45.100",
|
||||
true); // Requires login.
|
||||
|
||||
/**
|
||||
* YouTube
|
||||
|
||||
@@ -10,7 +10,6 @@ import java.util.Map;
|
||||
import app.revanced.extension.shared.Logger;
|
||||
import app.revanced.extension.shared.Utils;
|
||||
import app.revanced.extension.shared.settings.BaseSettings;
|
||||
import app.revanced.extension.shared.settings.EnumSetting;
|
||||
import app.revanced.extension.shared.settings.Setting;
|
||||
import app.revanced.extension.shared.spoof.requests.StreamingDataRequest;
|
||||
|
||||
@@ -18,9 +17,6 @@ import app.revanced.extension.shared.spoof.requests.StreamingDataRequest;
|
||||
public class SpoofVideoStreamsPatch {
|
||||
private static final boolean SPOOF_STREAMING_DATA = BaseSettings.SPOOF_VIDEO_STREAMS.get();
|
||||
|
||||
private static final boolean FIX_HLS_CURRENT_TIME = SPOOF_STREAMING_DATA
|
||||
&& BaseSettings.SPOOF_VIDEO_STREAMS_CLIENT_TYPE.get() == ClientType.IOS;
|
||||
|
||||
/**
|
||||
* Any unreachable ip address. Used to intentionally fail requests.
|
||||
*/
|
||||
@@ -34,20 +30,17 @@ public class SpoofVideoStreamsPatch {
|
||||
return false; // Modified during patching.
|
||||
}
|
||||
|
||||
public static final class NotSpoofingAndroidVrAvailability implements Setting.Availability {
|
||||
public static final class NotSpoofingAndroidAvailability implements Setting.Availability {
|
||||
@Override
|
||||
public boolean isAvailable() {
|
||||
if (SpoofVideoStreamsPatch.isPatchIncluded()) {
|
||||
EnumSetting<ClientType> clientType = BaseSettings.SPOOF_VIDEO_STREAMS_CLIENT_TYPE;
|
||||
return clientType.isAvailable() && clientType.get() != ClientType.ANDROID_VR;
|
||||
return !BaseSettings.SPOOF_VIDEO_STREAMS.get();
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* Injection point.
|
||||
* Blocks /get_watch requests by returning an unreachable URI.
|
||||
@@ -190,25 +183,4 @@ public class SpoofVideoStreamsPatch {
|
||||
|
||||
return postData;
|
||||
}
|
||||
|
||||
/**
|
||||
* Injection point.
|
||||
*
|
||||
* Fixes iOS livestreams starting from the beginning.
|
||||
*/
|
||||
public static boolean fixHLSCurrentTime(boolean original) {
|
||||
if (FIX_HLS_CURRENT_TIME) {
|
||||
return false;
|
||||
}
|
||||
|
||||
return original;
|
||||
}
|
||||
|
||||
public static final class SpoofiOSAvailability implements Setting.Availability {
|
||||
@Override
|
||||
public boolean isAvailable() {
|
||||
return BaseSettings.SPOOF_VIDEO_STREAMS.get()
|
||||
&& BaseSettings.SPOOF_VIDEO_STREAMS_CLIENT_TYPE.get() == ClientType.IOS;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -35,7 +35,7 @@ import app.revanced.extension.shared.spoof.ClientType;
|
||||
*/
|
||||
public class StreamingDataRequest {
|
||||
|
||||
private static final ClientType[] CLIENT_ORDER_TO_USE;
|
||||
private static final ClientType[] CLIENT_ORDER_TO_USE = ClientType.values();
|
||||
private static final String AUTHORIZATION_HEADER = "Authorization";
|
||||
private static final String[] REQUEST_HEADER_KEYS = {
|
||||
AUTHORIZATION_HEADER, // Available only to logged-in users.
|
||||
@@ -67,21 +67,6 @@ public class StreamingDataRequest {
|
||||
}
|
||||
});
|
||||
|
||||
static {
|
||||
ClientType[] allClientTypes = ClientType.values();
|
||||
ClientType preferredClient = BaseSettings.SPOOF_VIDEO_STREAMS_CLIENT_TYPE.get();
|
||||
|
||||
CLIENT_ORDER_TO_USE = new ClientType[allClientTypes.length];
|
||||
CLIENT_ORDER_TO_USE[0] = preferredClient;
|
||||
|
||||
int i = 1;
|
||||
for (ClientType c : allClientTypes) {
|
||||
if (c != preferredClient) {
|
||||
CLIENT_ORDER_TO_USE[i++] = c;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private final String videoId;
|
||||
private final Future<ByteBuffer> future;
|
||||
|
||||
@@ -178,7 +163,7 @@ public class StreamingDataRequest {
|
||||
// gzip encoding doesn't response with content length (-1),
|
||||
// but empty response body does.
|
||||
if (connection.getContentLength() == 0) {
|
||||
Logger.printDebug(() -> "Received empty response for video: " + videoId);
|
||||
Logger.printDebug(() -> "Received empty response for client: " + clientType);
|
||||
} else {
|
||||
try (InputStream inputStream = new BufferedInputStream(connection.getInputStream());
|
||||
ByteArrayOutputStream baos = new ByteArrayOutputStream()) {
|
||||
|
||||
@@ -7,7 +7,7 @@ import static app.revanced.extension.shared.settings.Setting.migrateFromOldPrefe
|
||||
import static app.revanced.extension.shared.settings.Setting.migrateOldSettingToNew;
|
||||
import static app.revanced.extension.shared.settings.Setting.parent;
|
||||
import static app.revanced.extension.shared.settings.Setting.parentsAny;
|
||||
import static app.revanced.extension.shared.spoof.SpoofVideoStreamsPatch.NotSpoofingAndroidVrAvailability;
|
||||
import static app.revanced.extension.shared.spoof.SpoofVideoStreamsPatch.NotSpoofingAndroidAvailability;
|
||||
import static app.revanced.extension.youtube.patches.ChangeStartPagePatch.StartPage;
|
||||
import static app.revanced.extension.youtube.patches.MiniplayerPatch.MiniplayerHideExpandCloseAvailability;
|
||||
import static app.revanced.extension.youtube.patches.MiniplayerPatch.MiniplayerHorizontalDragAvailability;
|
||||
@@ -54,7 +54,7 @@ public class Settings extends BaseSettings {
|
||||
public static final StringSetting CUSTOM_PLAYBACK_SPEEDS = new StringSetting("revanced_custom_playback_speeds",
|
||||
"0.25\n0.5\n0.75\n0.9\n0.95\n1.0\n1.05\n1.1\n1.25\n1.5\n1.75\n2.0\n3.0\n4.0\n5.0", true);
|
||||
// Audio
|
||||
public static final BooleanSetting FORCE_ORIGINAL_AUDIO = new BooleanSetting("revanced_force_original_audio", FALSE, new NotSpoofingAndroidVrAvailability());
|
||||
public static final BooleanSetting FORCE_ORIGINAL_AUDIO = new BooleanSetting("revanced_force_original_audio", FALSE, new NotSpoofingAndroidAvailability());
|
||||
|
||||
// Ads
|
||||
public static final BooleanSetting HIDE_BUTTONED_ADS = new BooleanSetting("revanced_hide_buttoned_ads", TRUE);
|
||||
|
||||
@@ -1,85 +0,0 @@
|
||||
package app.revanced.extension.youtube.settings.preference;
|
||||
|
||||
import static app.revanced.extension.shared.StringRef.str;
|
||||
|
||||
import android.content.Context;
|
||||
import android.content.SharedPreferences;
|
||||
import android.preference.Preference;
|
||||
import android.preference.PreferenceManager;
|
||||
import android.util.AttributeSet;
|
||||
|
||||
import androidx.annotation.Nullable;
|
||||
|
||||
import app.revanced.extension.shared.Logger;
|
||||
import app.revanced.extension.shared.Utils;
|
||||
import app.revanced.extension.shared.settings.BaseSettings;
|
||||
import app.revanced.extension.shared.settings.Setting;
|
||||
import app.revanced.extension.shared.spoof.ClientType;
|
||||
|
||||
@SuppressWarnings({"deprecation", "unused"})
|
||||
public class SpoofStreamingDataSideEffectsPreference extends Preference {
|
||||
|
||||
@Nullable
|
||||
private ClientType currentClientType;
|
||||
|
||||
private final SharedPreferences.OnSharedPreferenceChangeListener listener = (sharedPreferences, str) -> {
|
||||
// Because this listener may run before the ReVanced settings fragment updates Settings,
|
||||
// this could show the prior config and not the current.
|
||||
//
|
||||
// Push this call to the end of the main run queue,
|
||||
// so all other listeners are done and Settings is up to date.
|
||||
Utils.runOnMainThread(this::updateUI);
|
||||
};
|
||||
|
||||
public SpoofStreamingDataSideEffectsPreference(Context context, AttributeSet attrs, int defStyleAttr, int defStyleRes) {
|
||||
super(context, attrs, defStyleAttr, defStyleRes);
|
||||
}
|
||||
|
||||
public SpoofStreamingDataSideEffectsPreference(Context context, AttributeSet attrs, int defStyleAttr) {
|
||||
super(context, attrs, defStyleAttr);
|
||||
}
|
||||
|
||||
public SpoofStreamingDataSideEffectsPreference(Context context, AttributeSet attrs) {
|
||||
super(context, attrs);
|
||||
}
|
||||
|
||||
public SpoofStreamingDataSideEffectsPreference(Context context) {
|
||||
super(context);
|
||||
}
|
||||
|
||||
private void addChangeListener() {
|
||||
Setting.preferences.preferences.registerOnSharedPreferenceChangeListener(listener);
|
||||
}
|
||||
|
||||
private void removeChangeListener() {
|
||||
Setting.preferences.preferences.unregisterOnSharedPreferenceChangeListener(listener);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void onAttachedToHierarchy(PreferenceManager preferenceManager) {
|
||||
super.onAttachedToHierarchy(preferenceManager);
|
||||
updateUI();
|
||||
addChangeListener();
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void onPrepareForRemoval() {
|
||||
super.onPrepareForRemoval();
|
||||
removeChangeListener();
|
||||
}
|
||||
|
||||
private void updateUI() {
|
||||
ClientType clientType = BaseSettings.SPOOF_VIDEO_STREAMS_CLIENT_TYPE.get();
|
||||
if (currentClientType == clientType) {
|
||||
return;
|
||||
}
|
||||
|
||||
Logger.printDebug(() -> "Updating spoof stream side effects preference");
|
||||
setEnabled(BaseSettings.SPOOF_VIDEO_STREAMS.get());
|
||||
|
||||
String key = "revanced_spoof_video_streams_about_"
|
||||
+ clientType.name().toLowerCase();
|
||||
setTitle(str(key + "_title"));
|
||||
setSummary(str(key + "_summary"));
|
||||
}
|
||||
}
|
||||
@@ -3,4 +3,4 @@ org.gradle.jvmargs = -Xms512M -Xmx2048M
|
||||
org.gradle.parallel = true
|
||||
android.useAndroidX = true
|
||||
kotlin.code.style = official
|
||||
version = 5.6.0-dev.5
|
||||
version = 5.7.0-dev.1
|
||||
|
||||
@@ -1,7 +1,6 @@
|
||||
package app.revanced.patches.shared.misc.spoof
|
||||
|
||||
import app.revanced.patcher.fingerprint
|
||||
import app.revanced.util.literal
|
||||
import com.android.tools.smali.dexlib2.AccessFlags
|
||||
import com.android.tools.smali.dexlib2.Opcode
|
||||
|
||||
@@ -112,16 +111,6 @@ internal val buildMediaDataSourceFingerprint = fingerprint {
|
||||
)
|
||||
}
|
||||
|
||||
internal const val HLS_CURRENT_TIME_FEATURE_FLAG = 45355374L
|
||||
|
||||
internal val hlsCurrentTimeFingerprint = fingerprint {
|
||||
accessFlags(AccessFlags.PUBLIC, AccessFlags.FINAL)
|
||||
parameters("Z", "L")
|
||||
literal {
|
||||
HLS_CURRENT_TIME_FEATURE_FLAG
|
||||
}
|
||||
}
|
||||
|
||||
internal val patchIncludedExtensionMethodFingerprint = fingerprint {
|
||||
accessFlags(AccessFlags.PRIVATE, AccessFlags.STATIC)
|
||||
returns("Z")
|
||||
|
||||
@@ -12,7 +12,6 @@ import app.revanced.patcher.util.proxy.mutableTypes.MutableMethod.Companion.toMu
|
||||
import app.revanced.patches.all.misc.resources.addResourcesPatch
|
||||
import app.revanced.util.getReference
|
||||
import app.revanced.util.indexOfFirstInstructionOrThrow
|
||||
import app.revanced.util.insertFeatureFlagBooleanOverride
|
||||
import app.revanced.util.returnEarly
|
||||
import com.android.tools.smali.dexlib2.AccessFlags
|
||||
import com.android.tools.smali.dexlib2.Opcode
|
||||
@@ -209,15 +208,6 @@ fun spoofVideoStreamsPatch(
|
||||
}
|
||||
// endregion
|
||||
|
||||
// region Fix iOS livestream current time.
|
||||
|
||||
hlsCurrentTimeFingerprint.method.insertFeatureFlagBooleanOverride(
|
||||
HLS_CURRENT_TIME_FEATURE_FLAG,
|
||||
"$EXTENSION_CLASS_DESCRIPTOR->fixHLSCurrentTime(Z)Z"
|
||||
)
|
||||
|
||||
// endregion
|
||||
|
||||
executeBlock()
|
||||
}
|
||||
}
|
||||
|
||||
@@ -77,6 +77,7 @@ val hideAdsPatch = bytecodePatch(
|
||||
"19.43.41",
|
||||
"19.45.38",
|
||||
"19.46.42",
|
||||
"19.47.53",
|
||||
),
|
||||
)
|
||||
|
||||
|
||||
@@ -33,6 +33,7 @@ val hideGetPremiumPatch = bytecodePatch(
|
||||
"19.43.41",
|
||||
"19.45.38",
|
||||
"19.46.42",
|
||||
"19.47.53",
|
||||
),
|
||||
)
|
||||
|
||||
|
||||
@@ -31,6 +31,7 @@ val videoAdsPatch = bytecodePatch(
|
||||
"19.43.41",
|
||||
"19.45.38",
|
||||
"19.46.42",
|
||||
"19.47.53",
|
||||
),
|
||||
)
|
||||
|
||||
|
||||
@@ -61,6 +61,7 @@ val copyVideoUrlPatch = bytecodePatch(
|
||||
"19.43.41",
|
||||
"19.45.38",
|
||||
"19.46.42",
|
||||
"19.47.53",
|
||||
),
|
||||
)
|
||||
|
||||
|
||||
@@ -32,6 +32,7 @@ val removeViewerDiscretionDialogPatch = bytecodePatch(
|
||||
"19.43.41",
|
||||
"19.45.38",
|
||||
"19.46.42",
|
||||
"19.47.53",
|
||||
),
|
||||
)
|
||||
|
||||
|
||||
@@ -76,6 +76,7 @@ val downloadsPatch = bytecodePatch(
|
||||
"19.43.41",
|
||||
"19.45.38",
|
||||
"19.46.42",
|
||||
"19.47.53",
|
||||
),
|
||||
)
|
||||
|
||||
|
||||
@@ -31,6 +31,7 @@ val disablePreciseSeekingGesturePatch = bytecodePatch(
|
||||
"19.43.41",
|
||||
"19.45.38",
|
||||
"19.46.42",
|
||||
"19.47.53",
|
||||
),
|
||||
)
|
||||
|
||||
|
||||
@@ -34,6 +34,7 @@ val enableSeekbarTappingPatch = bytecodePatch(
|
||||
"19.43.41",
|
||||
"19.45.38",
|
||||
"19.46.42",
|
||||
"19.47.53",
|
||||
),
|
||||
)
|
||||
|
||||
|
||||
@@ -44,6 +44,7 @@ val enableSlideToSeekPatch = bytecodePatch(
|
||||
"19.43.41",
|
||||
"19.45.38",
|
||||
"19.46.42",
|
||||
"19.47.53",
|
||||
),
|
||||
)
|
||||
|
||||
|
||||
@@ -37,6 +37,7 @@ val seekbarThumbnailsPatch = bytecodePatch(
|
||||
"19.43.41",
|
||||
"19.45.38",
|
||||
"19.46.42",
|
||||
"19.47.53",
|
||||
)
|
||||
)
|
||||
|
||||
|
||||
@@ -73,6 +73,7 @@ val swipeControlsPatch = bytecodePatch(
|
||||
"19.43.41",
|
||||
"19.45.38",
|
||||
"19.46.42",
|
||||
"19.47.53",
|
||||
),
|
||||
)
|
||||
|
||||
|
||||
@@ -30,6 +30,7 @@ val autoCaptionsPatch = bytecodePatch(
|
||||
"19.43.41",
|
||||
"19.45.38",
|
||||
"19.46.42",
|
||||
"19.47.53",
|
||||
),
|
||||
)
|
||||
|
||||
|
||||
@@ -51,6 +51,7 @@ val customBrandingPatch = resourcePatch(
|
||||
"19.43.41",
|
||||
"19.45.38",
|
||||
"19.46.42",
|
||||
"19.47.53",
|
||||
),
|
||||
)
|
||||
|
||||
|
||||
@@ -49,6 +49,7 @@ val changeHeaderPatch = resourcePatch(
|
||||
"19.43.41",
|
||||
"19.45.38",
|
||||
"19.46.42",
|
||||
"19.47.53",
|
||||
)
|
||||
)
|
||||
|
||||
|
||||
@@ -30,6 +30,7 @@ val hideButtonsPatch = resourcePatch(
|
||||
"19.43.41",
|
||||
"19.45.38",
|
||||
"19.46.42",
|
||||
"19.47.53",
|
||||
),
|
||||
)
|
||||
|
||||
|
||||
@@ -48,6 +48,7 @@ val navigationButtonsPatch = bytecodePatch(
|
||||
"19.43.41",
|
||||
"19.45.38",
|
||||
"19.46.42",
|
||||
"19.47.53",
|
||||
),
|
||||
)
|
||||
|
||||
|
||||
@@ -62,6 +62,7 @@ val hidePlayerOverlayButtonsPatch = bytecodePatch(
|
||||
"19.43.41",
|
||||
"19.45.38",
|
||||
"19.46.42",
|
||||
"19.47.53",
|
||||
),
|
||||
)
|
||||
|
||||
|
||||
@@ -64,6 +64,7 @@ val hideEndscreenCardsPatch = bytecodePatch(
|
||||
"19.43.41",
|
||||
"19.45.38",
|
||||
"19.46.42",
|
||||
"19.47.53",
|
||||
),
|
||||
)
|
||||
|
||||
|
||||
@@ -37,6 +37,7 @@ val disableFullscreenAmbientModePatch = bytecodePatch(
|
||||
"19.43.41",
|
||||
"19.45.38",
|
||||
"19.46.42",
|
||||
"19.47.53",
|
||||
),
|
||||
)
|
||||
|
||||
|
||||
@@ -133,6 +133,7 @@ val hideLayoutComponentsPatch = bytecodePatch(
|
||||
"19.43.41",
|
||||
"19.45.38",
|
||||
"19.46.42",
|
||||
"19.47.53",
|
||||
),
|
||||
)
|
||||
|
||||
|
||||
@@ -65,6 +65,7 @@ val hideInfoCardsPatch = bytecodePatch(
|
||||
"19.43.41",
|
||||
"19.45.38",
|
||||
"19.46.42",
|
||||
"19.47.53",
|
||||
),
|
||||
)
|
||||
|
||||
|
||||
@@ -32,6 +32,7 @@ val hidePlayerFlyoutMenuPatch = bytecodePatch(
|
||||
"19.43.41",
|
||||
"19.45.38",
|
||||
"19.46.42",
|
||||
"19.47.53",
|
||||
),
|
||||
)
|
||||
|
||||
|
||||
@@ -37,6 +37,7 @@ val disableRollingNumberAnimationPatch = bytecodePatch(
|
||||
"19.43.41",
|
||||
"19.45.38",
|
||||
"19.46.42",
|
||||
"19.47.53",
|
||||
),
|
||||
)
|
||||
|
||||
|
||||
@@ -33,6 +33,7 @@ val hideSeekbarPatch = bytecodePatch(
|
||||
"19.43.41",
|
||||
"19.45.38",
|
||||
"19.46.42",
|
||||
"19.47.53",
|
||||
),
|
||||
)
|
||||
|
||||
|
||||
@@ -190,6 +190,7 @@ val hideShortsComponentsPatch = bytecodePatch(
|
||||
"19.43.41",
|
||||
"19.45.38",
|
||||
"19.46.42",
|
||||
"19.47.53",
|
||||
),
|
||||
)
|
||||
|
||||
|
||||
@@ -62,6 +62,7 @@ val disableSuggestedVideoEndScreenPatch = bytecodePatch(
|
||||
"19.43.41",
|
||||
"19.45.38",
|
||||
"19.46.42",
|
||||
"19.47.53",
|
||||
),
|
||||
)
|
||||
|
||||
|
||||
@@ -29,6 +29,7 @@ val hideTimestampPatch = bytecodePatch(
|
||||
"19.43.41",
|
||||
"19.45.38",
|
||||
"19.46.42",
|
||||
"19.47.53",
|
||||
),
|
||||
)
|
||||
|
||||
|
||||
@@ -170,6 +170,7 @@ val miniplayerPatch = bytecodePatch(
|
||||
"19.43.41",
|
||||
"19.45.38",
|
||||
"19.46.42",
|
||||
"19.47.53",
|
||||
),
|
||||
)
|
||||
|
||||
|
||||
@@ -29,6 +29,7 @@ val playerPopupPanelsPatch = bytecodePatch(
|
||||
"19.43.41",
|
||||
"19.45.38",
|
||||
"19.46.42",
|
||||
"19.47.53",
|
||||
),
|
||||
)
|
||||
|
||||
|
||||
@@ -20,6 +20,7 @@ val playerControlsBackgroundPatch = resourcePatch(
|
||||
"19.43.41",
|
||||
"19.45.38",
|
||||
"19.46.42",
|
||||
"19.47.53",
|
||||
),
|
||||
)
|
||||
|
||||
|
||||
@@ -26,6 +26,7 @@ val openVideosFullscreenPatch = bytecodePatch(
|
||||
compatibleWith(
|
||||
"com.google.android.youtube"(
|
||||
"19.46.42",
|
||||
"19.47.53",
|
||||
)
|
||||
)
|
||||
|
||||
|
||||
@@ -60,6 +60,7 @@ val customPlayerOverlayOpacityPatch = bytecodePatch(
|
||||
"19.43.41",
|
||||
"19.45.38",
|
||||
"19.46.42",
|
||||
"19.47.53",
|
||||
),
|
||||
)
|
||||
|
||||
|
||||
@@ -61,6 +61,7 @@ val returnYouTubeDislikePatch = bytecodePatch(
|
||||
"19.43.41",
|
||||
"19.45.38",
|
||||
"19.46.42",
|
||||
"19.47.53",
|
||||
),
|
||||
)
|
||||
|
||||
|
||||
@@ -37,6 +37,7 @@ val wideSearchbarPatch = bytecodePatch(
|
||||
"19.43.41",
|
||||
"19.45.38",
|
||||
"19.46.42",
|
||||
"19.47.53",
|
||||
),
|
||||
)
|
||||
|
||||
|
||||
@@ -40,6 +40,7 @@ val shortsAutoplayPatch = bytecodePatch(
|
||||
"19.43.41",
|
||||
"19.45.38",
|
||||
"19.46.42",
|
||||
"19.47.53",
|
||||
),
|
||||
)
|
||||
|
||||
|
||||
@@ -49,6 +49,7 @@ val openShortsInRegularPlayerPatch = bytecodePatch(
|
||||
"19.43.41",
|
||||
"19.45.38",
|
||||
"19.46.42",
|
||||
"19.47.53",
|
||||
),
|
||||
)
|
||||
|
||||
|
||||
@@ -119,6 +119,7 @@ val sponsorBlockPatch = bytecodePatch(
|
||||
"19.43.41",
|
||||
"19.45.38",
|
||||
"19.46.42",
|
||||
"19.47.53",
|
||||
),
|
||||
)
|
||||
|
||||
|
||||
@@ -40,6 +40,7 @@ val spoofAppVersionPatch = bytecodePatch(
|
||||
"19.43.41",
|
||||
"19.45.38",
|
||||
"19.46.42",
|
||||
"19.47.53",
|
||||
),
|
||||
)
|
||||
|
||||
|
||||
@@ -37,6 +37,7 @@ val changeStartPagePatch = bytecodePatch(
|
||||
"19.43.41",
|
||||
"19.45.38",
|
||||
"19.46.42",
|
||||
"19.47.53",
|
||||
),
|
||||
)
|
||||
|
||||
|
||||
@@ -39,6 +39,7 @@ val disableResumingShortsOnStartupPatch = bytecodePatch(
|
||||
"19.43.41",
|
||||
"19.45.38",
|
||||
"19.46.42",
|
||||
"19.47.53",
|
||||
),
|
||||
)
|
||||
|
||||
|
||||
@@ -34,6 +34,7 @@ val enableTabletLayoutPatch = bytecodePatch(
|
||||
"19.43.41",
|
||||
"19.45.38",
|
||||
"19.46.42",
|
||||
"19.47.53",
|
||||
),
|
||||
)
|
||||
|
||||
|
||||
@@ -198,6 +198,7 @@ val themePatch = bytecodePatch(
|
||||
"19.43.41",
|
||||
"19.45.38",
|
||||
"19.46.42",
|
||||
"19.47.53",
|
||||
),
|
||||
)
|
||||
|
||||
|
||||
@@ -41,6 +41,7 @@ val alternativeThumbnailsPatch = bytecodePatch(
|
||||
"19.43.41",
|
||||
"19.45.38",
|
||||
"19.46.42",
|
||||
"19.47.53",
|
||||
),
|
||||
)
|
||||
|
||||
|
||||
@@ -35,6 +35,7 @@ val bypassImageRegionRestrictionsPatch = bytecodePatch(
|
||||
"19.43.41",
|
||||
"19.45.38",
|
||||
"19.46.42",
|
||||
"19.47.53",
|
||||
),
|
||||
)
|
||||
|
||||
|
||||
@@ -31,6 +31,7 @@ val announcementsPatch = bytecodePatch(
|
||||
"19.43.41",
|
||||
"19.45.38",
|
||||
"19.46.42",
|
||||
"19.47.53",
|
||||
),
|
||||
)
|
||||
|
||||
|
||||
@@ -32,6 +32,7 @@ val autoRepeatPatch = bytecodePatch(
|
||||
"19.43.41",
|
||||
"19.45.38",
|
||||
"19.46.42",
|
||||
"19.47.53",
|
||||
),
|
||||
)
|
||||
|
||||
|
||||
@@ -56,6 +56,7 @@ val backgroundPlaybackPatch = bytecodePatch(
|
||||
"19.43.41",
|
||||
"19.45.38",
|
||||
"19.46.42",
|
||||
"19.47.53",
|
||||
),
|
||||
)
|
||||
|
||||
|
||||
@@ -40,6 +40,7 @@ val enableDebuggingPatch = bytecodePatch(
|
||||
"19.43.41",
|
||||
"19.45.38",
|
||||
"19.46.42",
|
||||
"19.47.53",
|
||||
),
|
||||
)
|
||||
|
||||
|
||||
@@ -32,6 +32,7 @@ val spoofDeviceDimensionsPatch = bytecodePatch(
|
||||
"19.43.41",
|
||||
"19.45.38",
|
||||
"19.46.42",
|
||||
"19.47.53",
|
||||
),
|
||||
)
|
||||
|
||||
|
||||
@@ -25,6 +25,7 @@ val checkWatchHistoryDomainNameResolutionPatch = bytecodePatch(
|
||||
"19.43.41",
|
||||
"19.45.38",
|
||||
"19.46.42",
|
||||
"19.47.53",
|
||||
),
|
||||
)
|
||||
|
||||
|
||||
@@ -15,22 +15,16 @@ internal val onBackPressedFingerprint = fingerprint {
|
||||
}
|
||||
}
|
||||
|
||||
internal val recyclerViewScrollingFingerprint = fingerprint {
|
||||
accessFlags(AccessFlags.PRIVATE, AccessFlags.FINAL)
|
||||
internal val scrollPositionFingerprint = fingerprint {
|
||||
accessFlags(AccessFlags.PROTECTED, AccessFlags.FINAL)
|
||||
returns("V")
|
||||
parameters()
|
||||
parameters("L")
|
||||
opcodes(
|
||||
Opcode.IGET_OBJECT,
|
||||
Opcode.IGET_OBJECT,
|
||||
Opcode.IF_EQZ,
|
||||
Opcode.IGET_OBJECT,
|
||||
Opcode.CHECK_CAST,
|
||||
Opcode.INVOKE_VIRTUAL,
|
||||
Opcode.MOVE_RESULT,
|
||||
Opcode.IF_LEZ,
|
||||
Opcode.IGET_OBJECT,
|
||||
Opcode.CONST_4,
|
||||
Opcode.IF_NEZ,
|
||||
Opcode.INVOKE_DIRECT,
|
||||
Opcode.RETURN_VOID
|
||||
)
|
||||
strings("scroll_position")
|
||||
}
|
||||
|
||||
internal val recyclerViewTopScrollingFingerprint = fingerprint {
|
||||
|
||||
@@ -1,54 +1,49 @@
|
||||
package app.revanced.patches.youtube.misc.fix.backtoexitgesture
|
||||
|
||||
import app.revanced.patcher.Fingerprint
|
||||
import app.revanced.patcher.extensions.InstructionExtensions.addInstruction
|
||||
import app.revanced.patcher.patch.bytecodePatch
|
||||
import app.revanced.util.getReference
|
||||
import app.revanced.util.indexOfFirstInstructionOrThrow
|
||||
import com.android.tools.smali.dexlib2.Opcode
|
||||
import com.android.tools.smali.dexlib2.iface.reference.MethodReference
|
||||
|
||||
private const val EXTENSION_CLASS_DESCRIPTOR = "Lapp/revanced/extension/youtube/patches/FixBackToExitGesturePatch;"
|
||||
|
||||
internal val fixBackToExitGesturePatch = bytecodePatch(
|
||||
description = "Fixes the swipe back to exit gesture.",
|
||||
) {
|
||||
|
||||
execute {
|
||||
/**
|
||||
* Inject a call to a method from the extension.
|
||||
*
|
||||
* @param targetMethod The target method to call.
|
||||
*/
|
||||
fun Fingerprint.injectCall(targetMethod: ExtensionMethod) = method.addInstruction(
|
||||
patternMatch!!.endIndex,
|
||||
targetMethod.toString(),
|
||||
)
|
||||
recyclerViewTopScrollingFingerprint.match(recyclerViewTopScrollingParentFingerprint.originalClassDef)
|
||||
.let {
|
||||
it.method.addInstruction(
|
||||
it.patternMatch!!.endIndex,
|
||||
"invoke-static { }, $EXTENSION_CLASS_DESCRIPTOR->onTopView()V"
|
||||
)
|
||||
}
|
||||
|
||||
mapOf(
|
||||
recyclerViewTopScrollingFingerprint.also {
|
||||
it.match(recyclerViewTopScrollingParentFingerprint.originalClassDef)
|
||||
} to ExtensionMethod(
|
||||
methodName = "onTopView",
|
||||
),
|
||||
recyclerViewScrollingFingerprint to ExtensionMethod(
|
||||
methodName = "onScrollingViews",
|
||||
),
|
||||
onBackPressedFingerprint to ExtensionMethod(
|
||||
"p0",
|
||||
"onBackPressed",
|
||||
"Landroid/app/Activity;",
|
||||
),
|
||||
).forEach { (fingerprint, target) -> fingerprint.injectCall(target) }
|
||||
scrollPositionFingerprint.let {
|
||||
navigate(it.originalMethod)
|
||||
.to(it.patternMatch!!.startIndex + 1)
|
||||
.stop().apply {
|
||||
val index = indexOfFirstInstructionOrThrow {
|
||||
opcode == Opcode.INVOKE_VIRTUAL && getReference<MethodReference>()?.definingClass ==
|
||||
"Landroid/support/v7/widget/RecyclerView;"
|
||||
}
|
||||
|
||||
addInstruction(
|
||||
index,
|
||||
"invoke-static { }, $EXTENSION_CLASS_DESCRIPTOR->onScrollingViews()V"
|
||||
)
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
onBackPressedFingerprint.let {
|
||||
it.method.addInstruction(
|
||||
it.patternMatch!!.endIndex,
|
||||
"invoke-static { p0 }, $EXTENSION_CLASS_DESCRIPTOR->onBackPressed(Landroid/app/Activity;)V"
|
||||
)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* A reference to a method from the extension for [fixBackToExitGesturePatch].
|
||||
*
|
||||
* @param register The method registers.
|
||||
* @param methodName The method name.
|
||||
* @param parameterTypes The parameters of the method.
|
||||
*/
|
||||
private class ExtensionMethod(
|
||||
val register: String = "",
|
||||
val methodName: String,
|
||||
val parameterTypes: String = "",
|
||||
) {
|
||||
override fun toString() =
|
||||
"invoke-static {$register}, Lapp/revanced/extension/youtube/patches/FixBackToExitGesturePatch;->$methodName($parameterTypes)V"
|
||||
}
|
||||
|
||||
@@ -43,6 +43,7 @@ val gmsCoreSupportPatch = gmsCoreSupportPatch(
|
||||
"19.43.41",
|
||||
"19.45.38",
|
||||
"19.46.42",
|
||||
"19.47.53",
|
||||
),
|
||||
)
|
||||
}
|
||||
|
||||
@@ -38,6 +38,7 @@ val bypassURLRedirectsPatch = bytecodePatch(
|
||||
"19.43.41",
|
||||
"19.45.38",
|
||||
"19.46.42",
|
||||
"19.47.53",
|
||||
),
|
||||
)
|
||||
|
||||
|
||||
@@ -49,6 +49,7 @@ val openLinksExternallyPatch = bytecodePatch(
|
||||
"19.43.41",
|
||||
"19.45.38",
|
||||
"19.46.42",
|
||||
"19.47.53",
|
||||
),
|
||||
)
|
||||
|
||||
|
||||
@@ -38,6 +38,7 @@ val removeTrackingQueryParameterPatch = bytecodePatch(
|
||||
"19.43.41",
|
||||
"19.45.38",
|
||||
"19.46.42",
|
||||
"19.47.53",
|
||||
),
|
||||
)
|
||||
|
||||
|
||||
@@ -20,6 +20,7 @@ val spoofVideoStreamsPatch = spoofVideoStreamsPatch({
|
||||
"19.43.41",
|
||||
"19.45.38",
|
||||
"19.46.42",
|
||||
"19.47.53",
|
||||
),
|
||||
)
|
||||
|
||||
@@ -36,20 +37,11 @@ val spoofVideoStreamsPatch = spoofVideoStreamsPatch({
|
||||
sorting = PreferenceScreenPreference.Sorting.UNSORTED,
|
||||
preferences = setOf(
|
||||
SwitchPreference("revanced_spoof_video_streams"),
|
||||
ListPreference(
|
||||
"revanced_spoof_video_streams_client_type",
|
||||
summaryKey = null,
|
||||
),
|
||||
ListPreference(
|
||||
"revanced_spoof_video_streams_language",
|
||||
summaryKey = null
|
||||
),
|
||||
SwitchPreference("revanced_spoof_video_streams_ios_force_avc"),
|
||||
NonInteractivePreference(
|
||||
// Requires a key and title but the actual text is chosen at runtime.
|
||||
key = "revanced_spoof_video_streams_about_android_vr",
|
||||
tag = "app.revanced.extension.youtube.settings.preference.SpoofStreamingDataSideEffectsPreference"
|
||||
),
|
||||
NonInteractivePreference("revanced_spoof_video_streams_about")
|
||||
),
|
||||
),
|
||||
)
|
||||
|
||||
@@ -29,6 +29,7 @@ val zoomHapticsPatch = bytecodePatch(
|
||||
"19.43.41",
|
||||
"19.45.38",
|
||||
"19.46.42",
|
||||
"19.47.53",
|
||||
),
|
||||
)
|
||||
|
||||
|
||||
@@ -31,7 +31,8 @@ private const val EXTENSION_CLASS_DESCRIPTOR =
|
||||
@Suppress("unused")
|
||||
val forceOriginalAudioPatch = bytecodePatch(
|
||||
name = "Force original audio",
|
||||
description = "Adds an option to always use the original audio track.",
|
||||
description = "Adds an option to always use the original audio track. " +
|
||||
"This patch does nothing if 'Spoof video streams' is enabled.",
|
||||
) {
|
||||
dependsOn(
|
||||
sharedExtensionPatch,
|
||||
@@ -49,6 +50,7 @@ val forceOriginalAudioPatch = bytecodePatch(
|
||||
"19.43.41",
|
||||
"19.45.38",
|
||||
"19.46.42",
|
||||
"19.47.53",
|
||||
),
|
||||
)
|
||||
|
||||
|
||||
@@ -43,6 +43,7 @@ val rememberVideoQualityPatch = bytecodePatch(
|
||||
"19.43.41",
|
||||
"19.45.38",
|
||||
"19.46.42",
|
||||
"19.47.53",
|
||||
),
|
||||
)
|
||||
|
||||
|
||||
@@ -27,6 +27,7 @@ val playbackSpeedPatch = bytecodePatch(
|
||||
"19.43.41",
|
||||
"19.45.38",
|
||||
"19.46.42",
|
||||
"19.47.53",
|
||||
),
|
||||
)
|
||||
}
|
||||
|
||||
@@ -82,6 +82,7 @@ val restoreOldVideoQualityMenuPatch = bytecodePatch(
|
||||
"19.43.41",
|
||||
"19.45.38",
|
||||
"19.46.42",
|
||||
"19.47.53",
|
||||
),
|
||||
)
|
||||
|
||||
|
||||
@@ -1286,7 +1286,7 @@ Second \"item\" text"</string>
|
||||
|
||||
قد لا يعمل تشغيل الفيديو"</string>
|
||||
<string name="revanced_spoof_video_streams_user_dialog_message">إيقاف تشغيل هذا الإعداد قد يسبب مشاكل في تشغيل الفيديو.</string>
|
||||
<string name="revanced_spoof_video_streams_client_title">العميل الافتراضي</string>
|
||||
<string name="revanced_spoof_video_streams_client_type_title">العميل الافتراضي</string>
|
||||
<string name="revanced_spoof_video_streams_ios_force_avc_title">فرض AVC (H.264)</string>
|
||||
<string name="revanced_spoof_video_streams_ios_force_avc_summary_on">تم فرض ترميز الفيديو على AVC (H.264)</string>
|
||||
<string name="revanced_spoof_video_streams_ios_force_avc_summary_off">يتم تحديد ترميز الفيديو تلقائيًا</string>
|
||||
@@ -1297,9 +1297,10 @@ Second \"item\" text"</string>
|
||||
<string name="revanced_spoof_video_streams_about_ios_summary">"• لا يمكن تشغيل مقاطع فيديو الأطفال الخاصة.
|
||||
• تنتهي مقاطع الفيديو مبكرًا بمقدار 1 ثانية."</string>
|
||||
<string name="revanced_spoof_video_streams_about_android_vr_title">التأثيرات الجانبية لمحاكاة Android VR</string>
|
||||
<string name="revanced_spoof_video_streams_about_android_vr_summary">"• قد لا يتم تشغيل فيديوهات الأطفال
|
||||
• تبدأ البثوث المباشرة من البداية
|
||||
• قد تنتهي الفيديوهات قبل النهاية بثانية واحدة"</string>
|
||||
<string name="revanced_spoof_video_streams_about_android_vr_summary">"• مقطع فيديو الأطفال لتعمل تشغيل
|
||||
• قائمة قائمة الصوت مفقودة
|
||||
• لا يتوفر بستوي متوفر
|
||||
• لا يتوفر بالصوت الأصلي لا يتوفر الأصلي"</string>
|
||||
<string name="revanced_spoof_video_streams_language_title">لغة البث الصوتي الافتراضية</string>
|
||||
<string name="revanced_spoof_video_streams_language_DEFAULT">لغة التطبيق</string>
|
||||
<string name="revanced_spoof_video_streams_language_AR">العربية</string>
|
||||
|
||||
@@ -1287,7 +1287,7 @@ Bunu aktivləşdirmə daha yüksək video keyfiyyətləri əngəlin silə bilər
|
||||
|
||||
Video oynatma işləməyə bilər"</string>
|
||||
<string name="revanced_spoof_video_streams_user_dialog_message">Bu seçimi bağlamaq, video oynatma problemlərinə səbəb olar.</string>
|
||||
<string name="revanced_spoof_video_streams_client_title">İlkin qəbuledici</string>
|
||||
<string name="revanced_spoof_video_streams_client_type_title">İlkin qəbuledici</string>
|
||||
<string name="revanced_spoof_video_streams_ios_force_avc_title">Məcburi AVC (H.264)</string>
|
||||
<string name="revanced_spoof_video_streams_ios_force_avc_summary_on">Video kodlama AVC (H.264) -yə məcbur edilir</string>
|
||||
<string name="revanced_spoof_video_streams_ios_force_avc_summary_off">Video kodlama birbaşa yoxlanılır</string>
|
||||
@@ -1298,9 +1298,10 @@ AVC-nin maksimum dəqiqliyi 1080p-dir, Opus səs kodek əlçatan deyil və video
|
||||
<string name="revanced_spoof_video_streams_about_ios_summary">"◦ Xüsusi uşaq videoları bəlkə də oynanılmaya bilər
|
||||
◦ Videolar 1 saniyə tez bitir"</string>
|
||||
<string name="revanced_spoof_video_streams_about_android_vr_title">Android VR saxtakarlığı yan təsirləri</string>
|
||||
<string name="revanced_spoof_video_streams_about_android_vr_summary">"• Uşaq videoları oxudulmaya bilər
|
||||
• Canlı yayımlar başdan başlayır
|
||||
• Videolar 1 saniyə tez bitir"</string>
|
||||
<string name="revanced_spoof_video_streams_about_android_vr_summary">"• Uşaq videoları oynanmaya bilər
|
||||
• Səs izləri menyusu yoxdur
|
||||
• Sabit səs mövcud deyil
|
||||
• Orijinal səsi məcbur etmək mümkün deyil"</string>
|
||||
<string name="revanced_spoof_video_streams_language_title">İlkin səs yayımı dili</string>
|
||||
<string name="revanced_spoof_video_streams_language_DEFAULT">Tətbiq dili</string>
|
||||
<string name="revanced_spoof_video_streams_language_AR">Ərəbcə</string>
|
||||
|
||||
@@ -1288,7 +1288,7 @@ Second \"item\" text"</string>
|
||||
|
||||
Прайграванне відэа можа не працаваць"</string>
|
||||
<string name="revanced_spoof_video_streams_user_dialog_message">Адключэнне гэтай налады можа выклікаць праблемы з прайграваннем відэа.</string>
|
||||
<string name="revanced_spoof_video_streams_client_title">Клиент по умолчанию</string>
|
||||
<string name="revanced_spoof_video_streams_client_type_title">Клиент по умолчанию</string>
|
||||
<string name="revanced_spoof_video_streams_ios_force_avc_title">Принудительно AVC (H.264)</string>
|
||||
<string name="revanced_spoof_video_streams_ios_force_avc_summary_on">Видеокодек принудительно установлен в AVC (H.264)</string>
|
||||
<string name="revanced_spoof_video_streams_ios_force_avc_summary_off">Видеокодек определяется автоматически</string>
|
||||
@@ -1300,8 +1300,9 @@ AVC мае максімальную раздзяляльнасць 1080p, аўд
|
||||
• Відэа заканчваюцца на 1 секунду раней"</string>
|
||||
<string name="revanced_spoof_video_streams_about_android_vr_title">Побочные эффекты подмены Android VR</string>
|
||||
<string name="revanced_spoof_video_streams_about_android_vr_summary">"• Дзіцячыя відэа могуць не прайгравацца
|
||||
• Трансляцыі ў прамым эфіры пачынаюцца з пачатку
|
||||
• Відэа заканчваюцца на 1 секунду раней"</string>
|
||||
• Меню гукавых дарожак адсутнічае
|
||||
• Стабільны гук недаступны
|
||||
• Прымусовае выкарыстанне арыгінальнага аўдыё недаступна"</string>
|
||||
<string name="revanced_spoof_video_streams_language_title">Язык потока аудио по умолчанию</string>
|
||||
<string name="revanced_spoof_video_streams_language_DEFAULT">Язык приложения</string>
|
||||
<string name="revanced_spoof_video_streams_language_AR">Арабский</string>
|
||||
|
||||
@@ -1286,7 +1286,7 @@ Second \"item\" text"</string>
|
||||
|
||||
Възпроизвеждането на видеоклипове може да не работи"</string>
|
||||
<string name="revanced_spoof_video_streams_user_dialog_message">Деактивирането на тази настройка ще доведе до проблеми с възпроизвеждането на видео.</string>
|
||||
<string name="revanced_spoof_video_streams_client_title">Клиент по подразбиране</string>
|
||||
<string name="revanced_spoof_video_streams_client_type_title">Клиент по подразбиране</string>
|
||||
<string name="revanced_spoof_video_streams_ios_force_avc_title">Принудително AVC (H.264)</string>
|
||||
<string name="revanced_spoof_video_streams_ios_force_avc_summary_on">Видео кодек по подразбиране AVC (H.264)</string>
|
||||
<string name="revanced_spoof_video_streams_ios_force_avc_summary_off">Видео кодекът се определя автоматично</string>
|
||||
@@ -1297,9 +1297,10 @@ AVC има максимална разделителна способност о
|
||||
<string name="revanced_spoof_video_streams_about_ios_summary">"• Възможно е частните детски видеоклипове да не се възпроизвеждат
|
||||
• Видеоклиповете завършват 1 секунда по-рано"</string>
|
||||
<string name="revanced_spoof_video_streams_about_android_vr_title">Странични ефекти от подправяне на Android VR</string>
|
||||
<string name="revanced_spoof_video_streams_about_android_vr_summary">"• Детските видеоклипове може да не се възпроизвеждат
|
||||
• Предаванията на живо започват от началото
|
||||
• Видеоклиповете завършват 1 секунда по-рано"</string>
|
||||
<string name="revanced_spoof_video_streams_about_android_vr_summary">"• Може да възникнат проблеми при възпроизвеждане на детски видеоклипове
|
||||
• Липсва меню за аудио песни
|
||||
• Не е налично стабилно ниво на звука
|
||||
• Не е налична опция за оригинално аудио"</string>
|
||||
<string name="revanced_spoof_video_streams_language_title">Език по подразбиране на аудио потока</string>
|
||||
<string name="revanced_spoof_video_streams_language_DEFAULT">Език на приложението</string>
|
||||
<string name="revanced_spoof_video_streams_language_AR">Арабски</string>
|
||||
|
||||
@@ -1288,7 +1288,7 @@ DeArrow সম্পর্কে আরও জানতে এখানে ট
|
||||
|
||||
ভিডিও প্লেব্যাক কাজ নাও করতে পারে"</string>
|
||||
<string name="revanced_spoof_video_streams_user_dialog_message">এই সেটিংটি বন্ধ করার ফলে ভিডিও প্লেব্যাক ত্রুটি হতে পারে।</string>
|
||||
<string name="revanced_spoof_video_streams_client_title">ডিফল্ট ক্লায়েন্ট</string>
|
||||
<string name="revanced_spoof_video_streams_client_type_title">ডিফল্ট ক্লায়েন্ট</string>
|
||||
<string name="revanced_spoof_video_streams_ios_force_avc_title">AVC (H.264) ফোর্স করুন</string>
|
||||
<string name="revanced_spoof_video_streams_ios_force_avc_summary_on">ভিডিও কোডেক AVC (H.264) তে বাধ্য করা হয়েছে</string>
|
||||
<string name="revanced_spoof_video_streams_ios_force_avc_summary_off">ভিডিও কোডেক স্বয়ংক্রিয়ভাবে নির্ধারিত হচ্ছে</string>
|
||||
@@ -1298,9 +1298,10 @@ AVC-এর সর্বোচ্চ রেজোলিউশন 1080p, Opus অ
|
||||
<string name="revanced_spoof_video_streams_about_ios_title">iOS স্পুফিং এর পার্শ্ব প্রতিক্রিয়া</string>
|
||||
<string name="revanced_spoof_video_streams_about_ios_summary">"• বেসরকারি শিশু ভিডিও চলতে নাও পারে<br>• ভিডিওগুলি 1 সেকেন্ড আগে শেষ হয়"</string>
|
||||
<string name="revanced_spoof_video_streams_about_android_vr_title">Android VR স্পুফিং এর পার্শ্ব প্রতিক্রিয়া</string>
|
||||
<string name="revanced_spoof_video_streams_about_android_vr_summary">"• শিশু ভিডিওগুলি প্লে নাও হতে পারে
|
||||
• লাইভস্ট্রিম শুরু থেকে শুরু হয়
|
||||
• ভিডিও 1 সেকেন্ড আগে শেষ হয়"</string>
|
||||
<string name="revanced_spoof_video_streams_about_android_vr_summary">"• শিশুদের ভিডিও চালু নাও হতে পারে
|
||||
• অডিও ট্র্যাক মেনু অনুপস্থিত
|
||||
• স্থিতিশীল ভলিউম পাওয়া যাচ্ছে না
|
||||
• আসল অডিও জোরপূর্বক পাওয়া যাচ্ছে না"</string>
|
||||
<string name="revanced_spoof_video_streams_language_title">ডিফল্ট অডিও স্ট্রিম ভাষা</string>
|
||||
<string name="revanced_spoof_video_streams_language_DEFAULT">অ্যাপ ভাষা</string>
|
||||
<string name="revanced_spoof_video_streams_language_AR">আরবি</string>
|
||||
|
||||
@@ -1287,7 +1287,7 @@ Si actives aquesta opció, es poden desbloquejar qualitats de vídeo més altes"
|
||||
|
||||
La reproducció de vídeo pot no funcionar"</string>
|
||||
<string name="revanced_spoof_video_streams_user_dialog_message">Desactivar aquesta configuració pot causar problemes de reproducció de vídeo.</string>
|
||||
<string name="revanced_spoof_video_streams_client_title">Client predeterminat</string>
|
||||
<string name="revanced_spoof_video_streams_client_type_title">Client predeterminat</string>
|
||||
<string name="revanced_spoof_video_streams_ios_force_avc_title">Força AVC (H.264)</string>
|
||||
<string name="revanced_spoof_video_streams_ios_force_avc_summary_on">El còdec de vídeo es força a AVC (H.264)</string>
|
||||
<string name="revanced_spoof_video_streams_ios_force_avc_summary_off">El còdec de vídeo es determina automàticament</string>
|
||||
@@ -1298,9 +1298,10 @@ AVC té una resolució màxima de 1080p, el còdec d'àudio Opus no està dispon
|
||||
<string name="revanced_spoof_video_streams_about_ios_summary">"• Els vídeos privats per a nens potser no es reprodueixen
|
||||
• Els vídeos finalitzen 1 segon abans"</string>
|
||||
<string name="revanced_spoof_video_streams_about_android_vr_title">Efecte secundaris de la suplantació d\'Android VR</string>
|
||||
<string name="revanced_spoof_video_streams_about_android_vr_summary">"• Els vídeos de nens poden no reproduir-se
|
||||
• Les emissions en directe comencen des del principi
|
||||
• Els vídeos acaben 1 segon abans"</string>
|
||||
<string name="revanced_spoof_video_streams_about_android_vr_summary">"• És possible que els vídeos infantils no es reprodueixin
|
||||
• El menú de pistes d'àudio no està disponible
|
||||
• El volum estable no està disponible
|
||||
• L'opció Forçar àudio original no està disponible"</string>
|
||||
<string name="revanced_spoof_video_streams_language_title">Idioma de la transmissió d\'àudio per defecte</string>
|
||||
<string name="revanced_spoof_video_streams_language_DEFAULT">Idioma de l\'aplicació</string>
|
||||
<string name="revanced_spoof_video_streams_language_AR">Àrab</string>
|
||||
|
||||
@@ -1286,7 +1286,7 @@ Povolením této funkce lze odemknout vyšší kvality videa"</string>
|
||||
|
||||
Přehrávání videa nemusí fungovat"</string>
|
||||
<string name="revanced_spoof_video_streams_user_dialog_message">Vypnutí tohoto nastavení může způsobit problémy s přehráváním videa.</string>
|
||||
<string name="revanced_spoof_video_streams_client_title">Výchozí klient</string>
|
||||
<string name="revanced_spoof_video_streams_client_type_title">Výchozí klient</string>
|
||||
<string name="revanced_spoof_video_streams_ios_force_avc_title">Vynutit AVC (H.264)</string>
|
||||
<string name="revanced_spoof_video_streams_ios_force_avc_summary_on">Video kodek je vynucen na AVC (H.264)</string>
|
||||
<string name="revanced_spoof_video_streams_ios_force_avc_summary_off">Video kodek je určen automaticky</string>
|
||||
@@ -1297,9 +1297,10 @@ AVC má maximální rozlišení 1080p, audio kodek Opus není dostupný a přehr
|
||||
<string name="revanced_spoof_video_streams_about_ios_summary">"• Soukromá dětská videa se nemusí přehrávat
|
||||
• Videa končí o 1 sekundu dříve"</string>
|
||||
<string name="revanced_spoof_video_streams_about_android_vr_title">Vedlejší účinky napodobování Android VR</string>
|
||||
<string name="revanced_spoof_video_streams_about_android_vr_summary">"• Videa pro děti se nemusí přehrát
|
||||
• Livestreamy začínají od začátku
|
||||
• Videa končí o 1 sekundu dříve"</string>
|
||||
<string name="revanced_spoof_video_streams_about_android_vr_summary">"• Dětská videa se nemusí přehrávat
|
||||
• Chybí nabídka zvukových stop
|
||||
• Není k dispozici stabilní hlasitost
|
||||
• Není k dispozici vynucení původního zvuku"</string>
|
||||
<string name="revanced_spoof_video_streams_language_title">Výchozí jazyk zvukového streamu</string>
|
||||
<string name="revanced_spoof_video_streams_language_DEFAULT">Jazyk aplikace</string>
|
||||
<string name="revanced_spoof_video_streams_language_AR">Arabsky</string>
|
||||
|
||||
@@ -1287,7 +1287,7 @@ Aktivering af dette kan låse op for højere videokvalitet"</string>
|
||||
|
||||
Videoafspilning virker muligvis ikke"</string>
|
||||
<string name="revanced_spoof_video_streams_user_dialog_message">At slå denne indstilling fra kan forårsage problemer med videoafspilning.</string>
|
||||
<string name="revanced_spoof_video_streams_client_title">Standard klient</string>
|
||||
<string name="revanced_spoof_video_streams_client_type_title">Standard klient</string>
|
||||
<string name="revanced_spoof_video_streams_ios_force_avc_title">Gennemtving AVC (H.264)</string>
|
||||
<string name="revanced_spoof_video_streams_ios_force_avc_summary_on">Video-codec er tvunget til AVC (H.264)</string>
|
||||
<string name="revanced_spoof_video_streams_ios_force_avc_summary_off">Video-codec bestemmes automatisk</string>
|
||||
@@ -1298,9 +1298,10 @@ AVC har en maksimal opløsning på 1080p, Opus lydcodec er ikke tilgængelig, og
|
||||
<string name="revanced_spoof_video_streams_about_ios_summary">"• Private børnevideoer kan muligvis ikke afspilles
|
||||
• Videoer slutter 1 sekund før"</string>
|
||||
<string name="revanced_spoof_video_streams_about_android_vr_title">Android VR spoofing bivirkninger</string>
|
||||
<string name="revanced_spoof_video_streams_about_android_vr_summary">"• Børnevideoer kan ikke afspilles
|
||||
• Livestreams starter fra begyndelsen
|
||||
• Videoer slutter 1 sekund tidligere"</string>
|
||||
<string name="revanced_spoof_video_streams_about_android_vr_summary">"• Børnevideoer afspilles muligvis ikke
|
||||
• Lydspormenuen mangler
|
||||
• Stabil lydstyrke er ikke tilgængelig
|
||||
• Tving original lyd er ikke tilgængelig"</string>
|
||||
<string name="revanced_spoof_video_streams_language_title">Standard lyd-stream sprog</string>
|
||||
<string name="revanced_spoof_video_streams_language_DEFAULT">App sprog</string>
|
||||
<string name="revanced_spoof_video_streams_language_AR">Arabisk</string>
|
||||
|
||||
@@ -1281,7 +1281,7 @@ Durch Aktivieren dieser Option können höhere Videoqualitäten freigeschaltet w
|
||||
|
||||
Die Videowiedergabe funktioniert möglicherweise nicht"</string>
|
||||
<string name="revanced_spoof_video_streams_user_dialog_message">Das Deaktivieren dieser Einstellung kann zu Videowiedergabeproblemen führen.</string>
|
||||
<string name="revanced_spoof_video_streams_client_title">Standard-Client</string>
|
||||
<string name="revanced_spoof_video_streams_client_type_title">Standard-Client</string>
|
||||
<string name="revanced_spoof_video_streams_ios_force_avc_title">AVC erzwingen (H.264)</string>
|
||||
<string name="revanced_spoof_video_streams_ios_force_avc_summary_on">Video-Codec ist zu AVC gezwungen (H.264)</string>
|
||||
<string name="revanced_spoof_video_streams_ios_force_avc_summary_off">Video-Codec wird automatisch bestimmt</string>
|
||||
@@ -1292,9 +1292,10 @@ AVC hat eine maximale Auflösung von 1080p, der Opus-Audiocodec ist nicht verfü
|
||||
<string name="revanced_spoof_video_streams_about_ios_summary">"• Private Kindervideos werden möglicherweise nicht abgespielt
|
||||
• Videos enden 1 Sekunde früher"</string>
|
||||
<string name="revanced_spoof_video_streams_about_android_vr_title">Android VR Spoofing Nebeneffekte</string>
|
||||
<string name="revanced_spoof_video_streams_about_android_vr_summary">"• Kindervideos werden möglicherweise nicht abgespielt
|
||||
• Livestreams starten von Anfang an
|
||||
• Videos enden 1 Sekunde früher"</string>
|
||||
<string name="revanced_spoof_video_streams_about_android_vr_summary">"• Kinder-Videos werden möglicherweise nicht abgespielt
|
||||
• Audio-Spuren-Menü fehlt
|
||||
• Stabile Lautstärke ist nicht verfügbar
|
||||
• Erzwingen des Original-Audios ist nicht verfügbar"</string>
|
||||
<string name="revanced_spoof_video_streams_language_title">Standard Audio Streamsprache</string>
|
||||
<string name="revanced_spoof_video_streams_language_DEFAULT">App-Sprache</string>
|
||||
<string name="revanced_spoof_video_streams_language_AR">Arabisch</string>
|
||||
|
||||
@@ -1286,7 +1286,7 @@ Second \"item\" text"</string>
|
||||
|
||||
Η αναπαραγωγή βίντεο ενδέχεται να μην λειτουργεί"</string>
|
||||
<string name="revanced_spoof_video_streams_user_dialog_message">Η απενεργοποίηση αυτής της ρύθμισης ενδέχεται να προκαλέσει προβλήματα αναπαραγωγής βίντεο.</string>
|
||||
<string name="revanced_spoof_video_streams_client_title">Προεπιλεγμένο πρόγραμμα πελάτη</string>
|
||||
<string name="revanced_spoof_video_streams_client_type_title">Προεπιλεγμένο πρόγραμμα πελάτη</string>
|
||||
<string name="revanced_spoof_video_streams_ios_force_avc_title">Εξαναγκασμός AVC (H.264)</string>
|
||||
<string name="revanced_spoof_video_streams_ios_force_avc_summary_on">Ο κωδικοποιητής βίντεο έχει οριστεί υποχρεωτικά σε AVC (H.264)</string>
|
||||
<string name="revanced_spoof_video_streams_ios_force_avc_summary_off">Ο κωδικοποιητής βίντεο ορίζεται αυτόματα</string>
|
||||
@@ -1299,7 +1299,8 @@ Second \"item\" text"</string>
|
||||
<string name="revanced_spoof_video_streams_about_android_vr_title">Παρενέργειες παραποίησης σε Android VR</string>
|
||||
<string name="revanced_spoof_video_streams_about_android_vr_summary">"• Τα βίντεο για παιδιά ενδέχεται να μην αναπαράγονται
|
||||
• Το μενού «Κομμάτι ήχου» λείπει
|
||||
• Η λειτουργία «Σταθερή ένταση» δεν είναι διαθέσιμη"</string>
|
||||
• Η λειτουργία «Σταθερή ένταση» δεν είναι διαθέσιμη
|
||||
• Η λειτουργία εξαναγκασμού αρχικού ήχου δεν είναι διαθέσιμη"</string>
|
||||
<string name="revanced_spoof_video_streams_language_title">Προεπιλεγμένη γλώσσα ροής ήχου</string>
|
||||
<string name="revanced_spoof_video_streams_language_DEFAULT">Γλώσσα εφαρμογής</string>
|
||||
<string name="revanced_spoof_video_streams_language_AR">Αραβικά</string>
|
||||
|
||||
@@ -1268,7 +1268,7 @@ Habilitar esto puede desbloquear calidades de vídeo más altas"</string>
|
||||
|
||||
Es posible que la reproducción de vídeo no funcione"</string>
|
||||
<string name="revanced_spoof_video_streams_user_dialog_message">Desactivar esta configuración puede causar problemas de reproducción de vídeo.</string>
|
||||
<string name="revanced_spoof_video_streams_client_title">Cliente por defecto</string>
|
||||
<string name="revanced_spoof_video_streams_client_type_title">Cliente por defecto</string>
|
||||
<string name="revanced_spoof_video_streams_ios_force_avc_title">Forzar AVC (H.264)</string>
|
||||
<string name="revanced_spoof_video_streams_ios_force_avc_summary_on">Códec de vídeo se ve obligado a AVC (H.264)</string>
|
||||
<string name="revanced_spoof_video_streams_ios_force_avc_summary_off">El códec de vídeo se determina automáticamente</string>
|
||||
@@ -1279,9 +1279,10 @@ AVC tiene una resolución máxima de 1080p, el códec de audio Opus no está dis
|
||||
<string name="revanced_spoof_video_streams_about_ios_summary">"• Es posible que los videos privados para niños no se reproduzcan
|
||||
• Los videos terminan 1 segundo antes"</string>
|
||||
<string name="revanced_spoof_video_streams_about_android_vr_title">Efectos secundarios para la falsificación de Android RV</string>
|
||||
<string name="revanced_spoof_video_streams_about_android_vr_summary">"• Es posible que los vídeos para niños no se reproduzcan
|
||||
• Las transmisiones en vivo empiezan desde el principio
|
||||
• Los vídeos terminan 1 segundo antes"</string>
|
||||
<string name="revanced_spoof_video_streams_about_android_vr_summary">"•Los videos para niños pueden no reproducirse
|
||||
• Menú de pistas de audio no disponible
|
||||
• Volumen estable no disponible
|
||||
• Forzar audio original no disponible"</string>
|
||||
<string name="revanced_spoof_video_streams_language_title">Idioma de flujo de audio por defecto</string>
|
||||
<string name="revanced_spoof_video_streams_language_DEFAULT">Idioma de la aplicación</string>
|
||||
<string name="revanced_spoof_video_streams_language_AR">Árabe</string>
|
||||
|
||||
@@ -1288,7 +1288,7 @@ Selle lubamine võib avada kõrgema video kvaliteedi"</string>
|
||||
|
||||
Video taasesitus ei pruugi toimida"</string>
|
||||
<string name="revanced_spoof_video_streams_user_dialog_message">Selle seade keelamine võib põhjustada videote taasesituse probleeme.</string>
|
||||
<string name="revanced_spoof_video_streams_client_title">Vaikimisi klient</string>
|
||||
<string name="revanced_spoof_video_streams_client_type_title">Vaikimisi klient</string>
|
||||
<string name="revanced_spoof_video_streams_ios_force_avc_title">Sunni AVC (H.264)</string>
|
||||
<string name="revanced_spoof_video_streams_ios_force_avc_summary_on">Videokodek on sunnitud AVC (H.264)</string>
|
||||
<string name="revanced_spoof_video_streams_ios_force_avc_summary_off">Videokodek määratakse automaatselt</string>
|
||||
@@ -1299,9 +1299,10 @@ AVC-l on maksimaalne resolutsioon 1080p, Opus-heli kodeerijat pole saadaval ja v
|
||||
<string name="revanced_spoof_video_streams_about_ios_summary">"• Privaatseid lastevideoid ei pruugita esitada
|
||||
• Videod lõpevad 1 sekund varem"</string>
|
||||
<string name="revanced_spoof_video_streams_about_android_vr_title">Android VR spoofing-i kõrvalmõjud</string>
|
||||
<string name="revanced_spoof_video_streams_about_android_vr_summary">"• Lastevideod ei pruugi mängida
|
||||
• Otseülekanded algavad algusest
|
||||
• Videod lõpevad 1 sekundit enne aega"</string>
|
||||
<string name="revanced_spoof_video_streams_about_android_vr_summary">"• Laste videod ei pruugi mängida
|
||||
• Heliriba menüü pole saadaval
|
||||
• Stabiilne helitugevus pole saadaval
|
||||
• Originaalheli pole saadaval"</string>
|
||||
<string name="revanced_spoof_video_streams_language_title">Vaikimisi helivoolu keel</string>
|
||||
<string name="revanced_spoof_video_streams_language_DEFAULT">Rakenduse keel</string>
|
||||
<string name="revanced_spoof_video_streams_language_AR">Araabia keel</string>
|
||||
|
||||
@@ -1287,7 +1287,7 @@ Tämä voi avata korkealaatuisemmat videot"</string>
|
||||
|
||||
Videon toisto ei välttämättä toimi"</string>
|
||||
<string name="revanced_spoof_video_streams_user_dialog_message">Tämän asetuksen poistaminen käytöstä voi aiheuttaa ongelmia videotoistossa.</string>
|
||||
<string name="revanced_spoof_video_streams_client_title">Oletusasiakasohjelma</string>
|
||||
<string name="revanced_spoof_video_streams_client_type_title">Oletusasiakasohjelma</string>
|
||||
<string name="revanced_spoof_video_streams_ios_force_avc_title">Pakota AVC (H.264)</string>
|
||||
<string name="revanced_spoof_video_streams_ios_force_avc_summary_on">Videon koodekki pakotetaan AVC (H.264)</string>
|
||||
<string name="revanced_spoof_video_streams_ios_force_avc_summary_off">Videokoodekki määritetään automaattisesti</string>
|
||||
@@ -1298,9 +1298,10 @@ AVC:llä on enimmäisresoluutio 1080p, Opus-äänikoodekkia ei ole käytettävis
|
||||
<string name="revanced_spoof_video_streams_about_ios_summary">"• Yksityisiä lasten videoita ei ehkä toisteta
|
||||
• Videot päättyvät 1 sekunnin etuajassa"</string>
|
||||
<string name="revanced_spoof_video_streams_about_android_vr_title">Android VR -naamioinnin haittavaikutukset</string>
|
||||
<string name="revanced_spoof_video_streams_about_android_vr_summary">"• Lasten videot eivät välttämättä toistu
|
||||
• Suoratoistot alkavat alusta
|
||||
• Videot päättyvät 1 sekuntia aikaisemmin"</string>
|
||||
<string name="revanced_spoof_video_streams_about_android_vr_summary">"• Lapsivideoita ei ehkä toisteta
|
||||
• Ääniraita-valikko puuttuu
|
||||
• Tasainen äänenvoimakkuus ei ole käytettävissä
|
||||
• Pakota alkuperäinen ääni ei ole käytettävissä"</string>
|
||||
<string name="revanced_spoof_video_streams_language_title">Äänivirran oletuskieli</string>
|
||||
<string name="revanced_spoof_video_streams_language_DEFAULT">Sovelluksen kieli</string>
|
||||
<string name="revanced_spoof_video_streams_language_AR">Arabia</string>
|
||||
|
||||
@@ -1288,7 +1288,7 @@ Ang pagpapagana nito ay maaaring magbukas ng mas mataas na kalidad ng video"</st
|
||||
|
||||
Ang paglalaro ng video ay maaaring hindi gumana"</string>
|
||||
<string name="revanced_spoof_video_streams_user_dialog_message">Ang pag-off sa setting na ito ay maaaring magdulot ng mga isyu sa pag-playback ng video.</string>
|
||||
<string name="revanced_spoof_video_streams_client_title">Default client</string>
|
||||
<string name="revanced_spoof_video_streams_client_type_title">Default na kliyente</string>
|
||||
<string name="revanced_spoof_video_streams_ios_force_avc_title">Pilitin ang AVC (H.264)</string>
|
||||
<string name="revanced_spoof_video_streams_ios_force_avc_summary_on">Ang video codec ay napipilitang maging AVC (H.264)</string>
|
||||
<string name="revanced_spoof_video_streams_ios_force_avc_summary_off">Awtomatikong natutukoy ang video codec</string>
|
||||
@@ -1300,9 +1300,12 @@ Ang AVC ay may maximum na resolution na 1080p, ang Opus audio codec ay hindi mag
|
||||
• Maaaring hindi ma-play ang mga pribadong video ng mga bata
|
||||
• Nagtatapos ang mga video ng 1 segundo nang mas maaga"</string>
|
||||
<string name="revanced_spoof_video_streams_about_android_vr_title">Mga epekto sa gilid ng pag-spoof ng Android VR</string>
|
||||
<string name="revanced_spoof_video_streams_about_android_vr_summary">"• Ang mga video ng mga bata ay maaaring hindi maglaro
|
||||
• Ang mga livestream ay magsisimula mula sa simula
|
||||
• Ang mga video ay magtatapos ng 1 segundo nang maaga"</string>
|
||||
<string name="revanced_spoof_video_streams_about_android_vr_summary">"• Maaaring hindi maipalabas ang mga video para sa mga bata
|
||||
• Nawawala ang menu ng audio track
|
||||
• Hindi available ang matatag na volume
|
||||
• Hindi available ang puwersahang orihinal na audio
|
||||
|
||||
"</string>
|
||||
<string name="revanced_spoof_video_streams_language_title">Default na wika ng audio stream</string>
|
||||
<string name="revanced_spoof_video_streams_language_DEFAULT">Wika ng app</string>
|
||||
<string name="revanced_spoof_video_streams_language_AR">Arabe</string>
|
||||
|
||||
@@ -1287,7 +1287,7 @@ L'activation de cette option peut déverrouiller des qualités vidéo plus élev
|
||||
|
||||
La lecture vidéo peut ne pas fonctionner"</string>
|
||||
<string name="revanced_spoof_video_streams_user_dialog_message">Désactiver ce paramètre peut causer des problèmes de lecture vidéo.</string>
|
||||
<string name="revanced_spoof_video_streams_client_title">Client par défaut</string>
|
||||
<string name="revanced_spoof_video_streams_client_type_title">Client par défaut</string>
|
||||
<string name="revanced_spoof_video_streams_ios_force_avc_title">Forcer AVC (H.264)</string>
|
||||
<string name="revanced_spoof_video_streams_ios_force_avc_summary_on">Le codec vidéo est forcé à AVC (H.264)</string>
|
||||
<string name="revanced_spoof_video_streams_ios_force_avc_summary_off">Le codec vidéo est déterminé automatiquement</string>
|
||||
@@ -1298,9 +1298,10 @@ AVC a une résolution maximale de 1080p, le codec audio Opus n'est pas disponibl
|
||||
<string name="revanced_spoof_video_streams_about_ios_summary">"• Les vidéos privées pour enfants ne peuvent pas être lues
|
||||
• Les vidéos se terminent 1 seconde plus tôt"</string>
|
||||
<string name="revanced_spoof_video_streams_about_android_vr_title">Effets secondaires de l\'usurpation VR Android</string>
|
||||
<string name="revanced_spoof_video_streams_about_android_vr_summary">"• Les vidéos pour enfants peuvent ne pas être lues
|
||||
• Les diffusions en direct commencent depuis le début
|
||||
• Les vidéos se terminent 1 seconde plus tôt"</string>
|
||||
<string name="revanced_spoof_video_streams_about_android_vr_summary">"• Les vidéos pour enfants risquent de ne pas être lues
|
||||
• Le menu de la piste audio est manquant
|
||||
• Le volume stable n'est pas disponible
|
||||
• Forcer l'audio d'origine n'est pas disponible"</string>
|
||||
<string name="revanced_spoof_video_streams_language_title">Langue du flux audio par défaut</string>
|
||||
<string name="revanced_spoof_video_streams_language_DEFAULT">Langue de l\'application</string>
|
||||
<string name="revanced_spoof_video_streams_language_AR">Arabe</string>
|
||||
|
||||
@@ -1288,7 +1288,7 @@ Is féidir le seo caighdeáin físeáin níos airde a dhíghlasáil"</string>
|
||||
|
||||
D'fhéadfadh nach n-oibreoidh athsheinm físeáin"</string>
|
||||
<string name="revanced_spoof_video_streams_user_dialog_message">Seans go mbeidh fadhbanna athsheinm físe ag baint leis an socrú seo a mhúchadh.</string>
|
||||
<string name="revanced_spoof_video_streams_client_title">Cliant réamhshocraithe</string>
|
||||
<string name="revanced_spoof_video_streams_client_type_title">Cliant réamhshocraithe</string>
|
||||
<string name="revanced_spoof_video_streams_ios_force_avc_title">Fórsa AVC (H.264)</string>
|
||||
<string name="revanced_spoof_video_streams_ios_force_avc_summary_on">Tá códú físeáin á fhorchur ar AVC (H.264)</string>
|
||||
<string name="revanced_spoof_video_streams_ios_force_avc_summary_off">Cinneadh go huathoibríoch an códú físeáin</string>
|
||||
@@ -1299,9 +1299,10 @@ Tá uasmhéid réiteach 1080p ag AVC, níl an cód fuaime Opus ar fáil, agus ú
|
||||
<string name="revanced_spoof_video_streams_about_ios_summary">"• Ní fhéadfaidh físeáin phríobháideacha leanaí a imirt
|
||||
• Críochnaíonn físeáin 1 soicind go luath"</string>
|
||||
<string name="revanced_spoof_video_streams_about_android_vr_title">Fo-iarsmaí spoofing Android VR</string>
|
||||
<string name="revanced_spoof_video_streams_about_android_vr_summary">"• D'fhéadfadh nach n-imreoidh físeáin pháistí
|
||||
• Tosóidh shruth beo ón tús
|
||||
• Críochnóidh físeáin 1 soicind go luath"</string>
|
||||
<string name="revanced_spoof_video_streams_about_android_vr_summary">"• Fuairfí b'fhéidir nach mbeidh físeáin do pháistí ag seinm
|
||||
• Tá an fhéilire raca fhuaime ar iarraidh
|
||||
• Ní fheictear an toirt in úsáid
|
||||
• Níl éisteacht leis an fuaim bhunúsach ar fáil"</string>
|
||||
<string name="revanced_spoof_video_streams_language_title">Teanga réamhshocraithe sruth fuaime</string>
|
||||
<string name="revanced_spoof_video_streams_language_DEFAULT">Teanga na feidhmchláir</string>
|
||||
<string name="revanced_spoof_video_streams_language_AR">Araibis</string>
|
||||
|
||||
@@ -1049,7 +1049,7 @@ Ha később kikapcsolja, akkor ajánlott az alkalmazás adatait törölni, hogy
|
||||
<string name="revanced_disable_resuming_shorts_player_summary_off">A Shorts lejátszás folytatódik az alkalmazás indításakor</string>
|
||||
</patch>
|
||||
<patch id="layout.shortsplayer.shortsPlayerTypePatch">
|
||||
<string name="revanced_shorts_player_type_title">Nyissa meg a Shorts</string>
|
||||
<string name="revanced_shorts_player_type_title">Shorts megnyitása ezzel:</string>
|
||||
<string name="revanced_shorts_player_type_shorts">Shorts lejátszó</string>
|
||||
<string name="revanced_shorts_player_type_regular_player">Normál lejátszó</string>
|
||||
<string name="revanced_shorts_player_type_regular_player_fullscreen">Teljes képernyős normál lejátszó</string>
|
||||
@@ -1285,7 +1285,7 @@ Ez a beállítás lehetővé teszi a magasabb videóminőségek feloldását"</s
|
||||
|
||||
A videólejátszás nem működhet"</string>
|
||||
<string name="revanced_spoof_video_streams_user_dialog_message">A beállítás kikapcsolása videolejátszási problémákat okozhat.</string>
|
||||
<string name="revanced_spoof_video_streams_client_title">Alapértelmezett kliens</string>
|
||||
<string name="revanced_spoof_video_streams_client_type_title">Alapértelmezett kliens</string>
|
||||
<string name="revanced_spoof_video_streams_ios_force_avc_title">AVC (H.264) kényszerítése</string>
|
||||
<string name="revanced_spoof_video_streams_ios_force_avc_summary_on">A videokodek AVC-re kényszerítve (H.264)</string>
|
||||
<string name="revanced_spoof_video_streams_ios_force_avc_summary_off">A videokodek meghatározása automatikusan történik</string>
|
||||
@@ -1296,9 +1296,10 @@ Az AVC maximális felbontása 1080p, az Opus audio kodek nem érhető el, és a
|
||||
<string name="revanced_spoof_video_streams_about_ios_summary">"• A privát gyerekvideók nem játszhatók le
|
||||
• A videók 1 másodperccel korábban érnek véget"</string>
|
||||
<string name="revanced_spoof_video_streams_about_android_vr_title">Android VR-hamisítási mellékhatások</string>
|
||||
<string name="revanced_spoof_video_streams_about_android_vr_summary">"• A gyermekeknek szóló videók nem játszódhatnak le
|
||||
• Az élő közvetítések a kezdettől kezdődnek
|
||||
• A videók 1 másodperccel korábban érnek véget"</string>
|
||||
<string name="revanced_spoof_video_streams_about_android_vr_summary">"• A gyermekvideók nem játszódnak le
|
||||
• Hiányzik a hangsáv menü
|
||||
• A stabil hangerő nem érhető el
|
||||
• Az eredeti hang kényszerítése nem érhető el"</string>
|
||||
<string name="revanced_spoof_video_streams_language_title">Alapértelmezett hangfolyam nyelve</string>
|
||||
<string name="revanced_spoof_video_streams_language_DEFAULT">Alkalmazás nyelve</string>
|
||||
<string name="revanced_spoof_video_streams_language_AR">Arab</string>
|
||||
|
||||
@@ -1287,7 +1287,7 @@ Mini-player-ը կարող է գրավվել էկրանից դուրս՝ դեպի
|
||||
|
||||
Տեսանյութի վերարտադրումը կարող է չաշխատել։"</string>
|
||||
<string name="revanced_spoof_video_streams_user_dialog_message">Այս կարգավորման անջատումը կարող է առաջացնել տեսանյութի վերարտադրման հետ կապված պրոբլեմներ</string>
|
||||
<string name="revanced_spoof_video_streams_client_title">Դեֆոլտ կլիենտ</string>
|
||||
<string name="revanced_spoof_video_streams_client_type_title">Դեֆոլտ կլիենտ</string>
|
||||
<string name="revanced_spoof_video_streams_ios_force_avc_title">Անհրաժեշտ է AVC (H.264)</string>
|
||||
<string name="revanced_spoof_video_streams_ios_force_avc_summary_on">Տեսանյութի կոդեկը սահմանվում է AVC (H.264)</string>
|
||||
<string name="revanced_spoof_video_streams_ios_force_avc_summary_off">Տեսանյութի կոդեկը սահմանվում է ավտոմատ</string>
|
||||
@@ -1298,9 +1298,10 @@ AVC-ն ունի առավելագույն 1080p լուծում, Opus ձայնայ
|
||||
<string name="revanced_spoof_video_streams_about_ios_summary">"• Երեխաների համար նախատեսված մասնավոր տեսանյութերը կարող են չհեռարձակվել
|
||||
• Տեսանյութերն ավարտվում են 1 վայրկյան շուտ"</string>
|
||||
<string name="revanced_spoof_video_streams_about_android_vr_title">Android VR փոփոխության կողմնակի ազդեցություններ</string>
|
||||
<string name="revanced_spoof_video_streams_about_android_vr_summary">"• Երեխաների տեսանյութերը կարող է չվերարտադրվեն
|
||||
• Livestream-ները սկսվում են սկզբից
|
||||
• Տեսանյութերը ավարտվում են 1 վայրկյան առաջ։"</string>
|
||||
<string name="revanced_spoof_video_streams_about_android_vr_summary">"• Մանկական տեսանյութերը չեն կարող լինել
|
||||
• Ձայնային ֆայլի ընտրացանկը բացակայում է
|
||||
• Ստաբիլ ձայնի մակարդակը հասանելի չէ
|
||||
• Իրական ձայնի հնարավորությունը հասանելի չէ"</string>
|
||||
<string name="revanced_spoof_video_streams_language_title">Ըստ նախապատվության, հնչյունային հոսքի լեզուն</string>
|
||||
<string name="revanced_spoof_video_streams_language_DEFAULT">Ծրագրի լեզուն</string>
|
||||
<string name="revanced_spoof_video_streams_language_AR">Արաբերեն</string>
|
||||
|
||||
@@ -1285,7 +1285,7 @@ Mengaktifkan ini dapat membuka kualitas video yang lebih tinggi"</string>
|
||||
|
||||
Playback video mungkin tidak berfungsi"</string>
|
||||
<string name="revanced_spoof_video_streams_user_dialog_message">Mematikan pengaturan ini dapat menyebabkan masalah pemutaran video.</string>
|
||||
<string name="revanced_spoof_video_streams_client_title">Klien bawaan</string>
|
||||
<string name="revanced_spoof_video_streams_client_type_title">Klien bawaan</string>
|
||||
<string name="revanced_spoof_video_streams_ios_force_avc_title">Paksa AVC (H.264)</string>
|
||||
<string name="revanced_spoof_video_streams_ios_force_avc_summary_on">Kodek video dipaksa ke AVC (H.264)</string>
|
||||
<string name="revanced_spoof_video_streams_ios_force_avc_summary_off">Kodek video ditentukan otomatis</string>
|
||||
@@ -1296,9 +1296,10 @@ AVC memiliki resolusi maksimum 1080p, codec audio Opus tidak tersedia, dan playb
|
||||
<string name="revanced_spoof_video_streams_about_ios_summary">"• Video pribadi anak-anak mungkin tidak diputar
|
||||
• Video berakhir 1 detik lebih awal"</string>
|
||||
<string name="revanced_spoof_video_streams_about_android_vr_title">Efek samping pemalsuan Android VR</string>
|
||||
<string name="revanced_spoof_video_streams_about_android_vr_summary">"• Video anak-anak mungkin tidak dapat diputar
|
||||
• Livestream dimulai dari awal
|
||||
• Video berakhir 1 detik lebih awal"</string>
|
||||
<string name="revanced_spoof_video_streams_about_android_vr_summary">"• Video anak mungkin tidak bisa diputar
|
||||
• Menu trek audio tidak ada
|
||||
• Volume stabil tidak tersedia
|
||||
• Paksa audio asli tidak tersedia"</string>
|
||||
<string name="revanced_spoof_video_streams_language_title">Bahasa aliran audio bawaan</string>
|
||||
<string name="revanced_spoof_video_streams_language_DEFAULT">Bahasa aplikasi</string>
|
||||
<string name="revanced_spoof_video_streams_language_AR">Arab</string>
|
||||
|
||||
@@ -1285,7 +1285,7 @@ Abilitare questa opzione può sbloccare qualità video più elevate"</string>
|
||||
|
||||
La riproduzione video potrebbe non funzionare"</string>
|
||||
<string name="revanced_spoof_video_streams_user_dialog_message">Disattivando questa impostazione potrebbe causare problemi di riproduzione video.</string>
|
||||
<string name="revanced_spoof_video_streams_client_title">Client predefinito</string>
|
||||
<string name="revanced_spoof_video_streams_client_type_title">Client predefinito</string>
|
||||
<string name="revanced_spoof_video_streams_ios_force_avc_title">Forza AVC (H.264)</string>
|
||||
<string name="revanced_spoof_video_streams_ios_force_avc_summary_on">Il codec video è forzato ad AVC (H.264)</string>
|
||||
<string name="revanced_spoof_video_streams_ios_force_avc_summary_off">Il codec video viene determinato automaticamente</string>
|
||||
@@ -1296,9 +1296,10 @@ AVC ha una risoluzione massima di 1080p, il codec audio Opus non è disponibile
|
||||
<string name="revanced_spoof_video_streams_about_ios_summary">"• I video per bambini privati potrebbero non essere riproducibili
|
||||
• I video terminano 1 secondo prima"</string>
|
||||
<string name="revanced_spoof_video_streams_about_android_vr_title">Effetti collaterali simulazione Android VR</string>
|
||||
<string name="revanced_spoof_video_streams_about_android_vr_summary">"• I video per bambini potrebbero non essere riprodotti
|
||||
• Le dirette iniziano dall'inizio
|
||||
• I video terminano 1 secondo prima"</string>
|
||||
<string name="revanced_spoof_video_streams_about_android_vr_summary">"• I video per bambini potrebbero non essere riproducibili
|
||||
• Il menu della traccia audio è mancante
|
||||
• Il volume stabile non è disponibile
|
||||
• Forzare l'audio originale non è disponibile"</string>
|
||||
<string name="revanced_spoof_video_streams_language_title">Lingua predefinita del flusso audio</string>
|
||||
<string name="revanced_spoof_video_streams_language_DEFAULT">Lingua app</string>
|
||||
<string name="revanced_spoof_video_streams_language_AR">Arabo</string>
|
||||
|
||||
@@ -494,9 +494,6 @@ Mלות עם אותיות גדולות באמצע צריכות להיכנס עם
|
||||
<string name="revanced_spoof_video_streams_ios_force_avc_user_dialog_message">"הפעלת אפשרות זו עשויה לשפר את חיי הסוללה ולתקן קרטוע בהשמעת וידאו.
|
||||
|
||||
AVC בעל רזולוציה מקסימלית של 1080p, קודק הסאונד Opus אינו זמין, והשמעת וידאו תשתמש בנתוני אינטרנט רבים יותר מ-VP9 או AV1."</string>
|
||||
<string name="revanced_spoof_video_streams_about_android_vr_summary">"• סרטוני ילדים ייתכן שלא יפעלו
|
||||
• שידורים חיים מתחילים מההתחלה
|
||||
• סרטונים מסתיימים 1 שנייה לפני הזמן"</string>
|
||||
<string name="revanced_spoof_video_streams_language_EN">אנגלית</string>
|
||||
<string name="revanced_spoof_video_streams_language_FR">צרפתית</string>
|
||||
</patch>
|
||||
|
||||
@@ -25,8 +25,8 @@ Second \"item\" text"</string>
|
||||
<string name="revanced_check_environment_failed_title">チェックに失敗しました</string>
|
||||
<string name="revanced_check_environment_dialog_open_official_source_button">公式ウェブサイトを開く</string>
|
||||
<string name="revanced_check_environment_dialog_ignore_button">無視</string>
|
||||
<string name="revanced_check_environment_failed_message"><h5>このアプリは、あなたによってパッチが適用されていないようです。</h5><br>このアプリは正しく動作しない可能性があり、<b>有害または危険な可能性があります</b>。<br><br>これらのチェックは、このアプリが事前にパッチが適用されているか、または他のユーザーから取得されたことを示しています。<br><br><small>%1$s</small><br>このアプリを<b>アンインストールして、自分でパッチを適用することを強くお勧めします</b>。これにより、検証済みで安全なアプリを使用していることを確認できます。<p><br>無視した場合、この警告は2回のみ表示されます。</string>
|
||||
<string name="revanced_check_environment_not_same_patching_device">別のデバイスにパッチを適用しました</string>
|
||||
<string name="revanced_check_environment_failed_message"><h5>このアプリは、あなたによってパッチが適用されていないようです。</h5><br>このアプリは正しく動作しない可能性があり、<b>有害または危険な可能性があります</b>。<br><br>これらのチェックは、このアプリがパッチ済みAPKであるか、または他のユーザーから取得されたことを示唆しています。<br><br><small>%1$s</small><br>このアプリを<b>アンインストールして、自分でパッチを適用する</b>ことを強くお勧めします。これにより、検証済みで安全なアプリを使用していることを確認できます。<p><br>無視した場合、この警告は2回のみ表示されます。</string>
|
||||
<string name="revanced_check_environment_not_same_patching_device">別のデバイス上でパッチを適用しました</string>
|
||||
<string name="revanced_check_environment_manager_not_expected_installer">ReVanced Manager によってインストールされていません</string>
|
||||
<string name="revanced_check_environment_not_near_patch_time">10分以上前にパッチを適用しました</string>
|
||||
<string name="revanced_check_environment_not_near_patch_time_days">パッチ適用から %s 日</string>
|
||||
@@ -45,7 +45,7 @@ Second \"item\" text"</string>
|
||||
<string name="revanced_pref_import_export_title">インポート/エクスポート</string>
|
||||
<string name="revanced_pref_import_export_summary">Revanced設定のインポート/エクスポート</string>
|
||||
<!-- Settings about dialog. -->
|
||||
<string name="revanced_settings_about_links_body">ReVancedパッチのバージョン <i>%s</i> を使用しています</string>
|
||||
<string name="revanced_settings_about_links_body">ReVanced Patchesのバージョン <i>%s</i> を使用しています</string>
|
||||
<string name="revanced_settings_about_links_dev_header">メモ</string>
|
||||
<string name="revanced_settings_about_links_dev_body">このバージョンはプレリリースで、予期しない問題が発生する可能性があります。</string>
|
||||
<string name="revanced_settings_about_links_header">公式リンク</string>
|
||||
@@ -1287,7 +1287,7 @@ DeArrowの詳細については、ここをタップしてください。"</stri
|
||||
|
||||
動画再生が機能しない可能性があります"</string>
|
||||
<string name="revanced_spoof_video_streams_user_dialog_message">この設定をオフにすると、ビデオ再生の問題が発生する可能性があります。</string>
|
||||
<string name="revanced_spoof_video_streams_client_title">デフォルトのクライアント</string>
|
||||
<string name="revanced_spoof_video_streams_client_type_title">デフォルトのクライアント</string>
|
||||
<string name="revanced_spoof_video_streams_ios_force_avc_title">強制AVC (H.264)</string>
|
||||
<string name="revanced_spoof_video_streams_ios_force_avc_summary_on">ビデオコーデックはAVCに強制されました (H.264)</string>
|
||||
<string name="revanced_spoof_video_streams_ios_force_avc_summary_off">ビデオコーデックが自動的に決定されます</string>
|
||||
@@ -1297,9 +1297,10 @@ AVCは、最大解像度が1080pであり、Opusオーディオコーデック
|
||||
<string name="revanced_spoof_video_streams_about_ios_title">iOSのクライアント偽装での副作用</string>
|
||||
<string name="revanced_spoof_video_streams_about_ios_summary">"• プライベートキッズの動画は再生されない場合があります。<br/>• 動画は1秒早く終了します"</string>
|
||||
<string name="revanced_spoof_video_streams_about_android_vr_title">Android-VR クライアント偽装の副作用</string>
|
||||
<string name="revanced_spoof_video_streams_about_android_vr_summary">"• キッズ動画は再生されない場合があります
|
||||
• ライブストリームは最初から始まります
|
||||
• 動画は1秒早く終了します"</string>
|
||||
<string name="revanced_spoof_video_streams_about_android_vr_summary">"• 子供向けビデオは再生できない場合があります
|
||||
• オーディオトラックメニューがありません
|
||||
• 安定したボリュームが利用できない
|
||||
• 強制的にオリジナルのオーディオを使用することはできません"</string>
|
||||
<string name="revanced_spoof_video_streams_language_title">デフォルトのオーディオストリーム言語</string>
|
||||
<string name="revanced_spoof_video_streams_language_DEFAULT">アプリの言語</string>
|
||||
<string name="revanced_spoof_video_streams_language_AR">アラビア文字</string>
|
||||
|
||||
@@ -1054,7 +1054,7 @@ MicroG를 배터리 최적화 목록에서 제외하더라도, 배터리 사용
|
||||
<string name="revanced_disable_resuming_shorts_player_summary_off">앱을 시작할 때, Shorts 플레이어를 다시 실행합니다</string>
|
||||
</patch>
|
||||
<patch id="layout.shortsplayer.shortsPlayerTypePatch">
|
||||
<string name="revanced_shorts_player_type_title">Shorts를 사용하여 열기</string>
|
||||
<string name="revanced_shorts_player_type_title">Shorts 재생 플레이어 유형</string>
|
||||
<string name="revanced_shorts_player_type_shorts">Shorts 플레이어</string>
|
||||
<string name="revanced_shorts_player_type_regular_player">일반 플레이어</string>
|
||||
<string name="revanced_shorts_player_type_regular_player_fullscreen">일반 플레이어 전체 화면</string>
|
||||
@@ -1078,7 +1078,7 @@ MicroG를 배터리 최적화 목록에서 제외하더라도, 배터리 사용
|
||||
<string name="revanced_miniplayer_screen_summary">앱 내에서 최소화된 플레이어의 스타일을 변경할 수 있습니다</string>
|
||||
<string name="revanced_miniplayer_type_title">미니 플레이어 유형</string>
|
||||
<string name="revanced_miniplayer_type_entry_0">비활성화됨</string>
|
||||
<string name="revanced_miniplayer_type_entry_1">홈 (기본값)</string>
|
||||
<string name="revanced_miniplayer_type_entry_1">기본값</string>
|
||||
<string name="revanced_miniplayer_type_entry_2">최소화</string>
|
||||
<string name="revanced_miniplayer_type_entry_3">태블릿</string>
|
||||
<string name="revanced_miniplayer_type_entry_4">모던 스타일 1</string>
|
||||
@@ -1096,12 +1096,12 @@ MicroG를 배터리 최적화 목록에서 제외하더라도, 배터리 사용
|
||||
<string name="revanced_miniplayer_drag_and_drop_title">드래그 & 드롭 활성화하기</string>
|
||||
<string name="revanced_miniplayer_drag_and_drop_summary_on">"드래그 & 드롭을 활성화합니다
|
||||
|
||||
• 미니 플레이어를 화면의 어느 곳이든 드래그할 수 있습니다"</string>
|
||||
• 미니 플레이어를 화면 구석으로 드래그 할 수 있습니다"</string>
|
||||
<string name="revanced_miniplayer_drag_and_drop_summary_off">드래그 & 드롭을 비활성화합니다</string>
|
||||
<string name="revanced_miniplayer_horizontal_drag_title">수평 드래그 제스처 활성화하기</string>
|
||||
<string name="revanced_miniplayer_horizontal_drag_summary_on">"수평 드래그 제스처를 활성화합니다
|
||||
|
||||
미니 플레이어 절반 정도를 왼쪽 밖 또는 오른쪽 밖으로 드래그하여 숨길 수 있습니다"</string>
|
||||
• 미니 플레이어 절반 정도를 왼쪽 밖 또는 오른쪽 밖으로 드래그하여 숨길 수 있습니다"</string>
|
||||
<string name="revanced_miniplayer_horizontal_drag_summary_off">수평 드래그 제스처를 비활성화합니다</string>
|
||||
<string name="revanced_miniplayer_hide_expand_close_title">\'닫기\' 버튼 숨기기</string>
|
||||
<string name="revanced_miniplayer_hide_expand_close_summary_on">\'닫기\' 버튼이 숨겨집니다</string>
|
||||
@@ -1109,7 +1109,7 @@ MicroG를 배터리 최적화 목록에서 제외하더라도, 배터리 사용
|
||||
<string name="revanced_miniplayer_hide_expand_close_legacy_title">\'펼치기\' & \'닫기\' 버튼 숨기기</string>
|
||||
<string name="revanced_miniplayer_hide_expand_close_legacy_summary_on">"'펼치기' & '닫기' 버튼이 숨겨집니다
|
||||
|
||||
• 스와이프하여 미니 플레이어를 펼치거나 닫을 수 있습니다"</string>
|
||||
• 미니 플레이어를 스와이프하여 펼치거나 닫을 수 있습니다"</string>
|
||||
<string name="revanced_miniplayer_hide_expand_close_legacy_summary_off">\'펼치기\' & \'닫기\' 버튼이 표시됩니다</string>
|
||||
<string name="revanced_miniplayer_hide_subtext_title">서브텍스트 숨기기</string>
|
||||
<string name="revanced_miniplayer_hide_subtext_summary_on">서브텍스트가 숨겨집니다\n\n• 왼쪽 하단에서 표시되는 \'유료 광고 포함\'과 같은 라벨</string>
|
||||
@@ -1289,7 +1289,7 @@ DeArrow에 대해 자세히 알아보려면 여기를 누르세요"</string>
|
||||
<string name="revanced_spoof_video_streams_summary_off">"스트리밍 데이터를 변경하지 않습니다
|
||||
동영상 재생 문제가 발생할 수 있습니다"</string>
|
||||
<string name="revanced_spoof_video_streams_user_dialog_message">이 설정을 비활성화하면 동영상 재생 문제가 발생할 수 있습니다</string>
|
||||
<string name="revanced_spoof_video_streams_client_title">기본 클라이언트</string>
|
||||
<string name="revanced_spoof_video_streams_client_type_title">기본 클라이언트</string>
|
||||
<string name="revanced_spoof_video_streams_ios_force_avc_title">AVC (H.264) 강제로 활성화하기</string>
|
||||
<string name="revanced_spoof_video_streams_ios_force_avc_summary_on">동영상 코덱을 AVC (H.264)로 강제 활성화합니다</string>
|
||||
<string name="revanced_spoof_video_streams_ios_force_avc_summary_off">동영상 코덱을 자동으로 활성화합니다</string>
|
||||
@@ -1300,9 +1300,10 @@ AVC의 최대 화질 값은 1080p이며, OPUS 오디오 코덱을 사용할 수
|
||||
<string name="revanced_spoof_video_streams_about_ios_summary">"• 비공개 Kids 동영상이 재생되지 않을 수 있습니다
|
||||
• 동영상이 1초 일찍 종료될 수 있습니다"</string>
|
||||
<string name="revanced_spoof_video_streams_about_android_vr_title">\'Android VR로 변경\'의 알려진 문제점</string>
|
||||
<string name="revanced_spoof_video_streams_about_android_vr_summary">"• Kids 동영상이 재생되지 않을 수 있습니다
|
||||
• 오디오 트랙 메뉴가 표시되지 않습니다
|
||||
• 안정적인 볼륨 메뉴가 비활성화된 채로 잠겨있습니다"</string>
|
||||
<string name="revanced_spoof_video_streams_about_android_vr_summary">"• 어린이 동영상은 재생되지 않을 수 있습니다
|
||||
• 오디오 트랙 메뉴가 없습니다
|
||||
• 안정적인 볼륨을 사용할 수 없습니다
|
||||
• 원본 오디오를 강제로 사용할 수 없습니다"</string>
|
||||
<string name="revanced_spoof_video_streams_language_title">기본 오디오 트랙 언어</string>
|
||||
<string name="revanced_spoof_video_streams_language_DEFAULT">앱 언어</string>
|
||||
<string name="revanced_spoof_video_streams_language_AR">아랍어</string>
|
||||
|
||||
@@ -1288,7 +1288,7 @@ Gali būti atrakinta aukštesnės vaizdo įrašų kokybės, bet galite patirti v
|
||||
|
||||
Vaizdo įrašo atkūrimas gali neveikti"</string>
|
||||
<string name="revanced_spoof_video_streams_user_dialog_message">Išjungus šį nustatymą, gali kilti vaizdo įrašų atkūrimo problemų.</string>
|
||||
<string name="revanced_spoof_video_streams_client_title">Numatytasis klientas</string>
|
||||
<string name="revanced_spoof_video_streams_client_type_title">Numatytasis klientas</string>
|
||||
<string name="revanced_spoof_video_streams_ios_force_avc_title">Priversti AVC (H.264)</string>
|
||||
<string name="revanced_spoof_video_streams_ios_force_avc_summary_on">Vaizdo kodekas priverstinai nustatytas į AVC (H.264)</string>
|
||||
<string name="revanced_spoof_video_streams_ios_force_avc_summary_off">Vaizdo kodekas nustatomas automatiškai</string>
|
||||
@@ -1299,9 +1299,10 @@ AVC maksimalus rezoliucija yra 1080p, Opus garso kodekas nėra prieinamas, o vai
|
||||
<string name="revanced_spoof_video_streams_about_ios_summary">"• Privatūs vaikų vaizdo įrašai gali neveikti
|
||||
• Vaizdo įrašai baigiasi 1 sekunde anksčiau"</string>
|
||||
<string name="revanced_spoof_video_streams_about_android_vr_title">Android VR apgaulės šalutiniai poveikiai</string>
|
||||
<string name="revanced_spoof_video_streams_about_android_vr_summary">"• Vaikų vaizdo įrašai gali neveikti
|
||||
• Tiesioginės transliacijos prasideda nuo pradžios
|
||||
• Vaizdo įrašai baigiasi 1 sekundę anksčiau"</string>
|
||||
<string name="revanced_spoof_video_streams_about_android_vr_summary">"• Vaikų vaizdo įrašai gali neatsidarys
|
||||
• Trūksta garso takelio meniu
|
||||
• Stabilaus garso nėra
|
||||
• Nėra galimybės priverstinai nustatyti originalaus garso"</string>
|
||||
<string name="revanced_spoof_video_streams_language_title">Numatytoji garso srauto kalba</string>
|
||||
<string name="revanced_spoof_video_streams_language_DEFAULT">Programėlės kalba</string>
|
||||
<string name="revanced_spoof_video_streams_language_AR">Arabų</string>
|
||||
|
||||
@@ -1285,7 +1285,7 @@ Var tikt atbloķētas augstākas video kvalitātes, taču var rasties video atsk
|
||||
|
||||
Video atskaņošana var nedarboties"</string>
|
||||
<string name="revanced_spoof_video_streams_user_dialog_message">Šī iestatījuma atspējošana var izraisīt video atskaņošanas problēmas.</string>
|
||||
<string name="revanced_spoof_video_streams_client_title">Noklusētā klients</string>
|
||||
<string name="revanced_spoof_video_streams_client_type_title">Noklusētā klients</string>
|
||||
<string name="revanced_spoof_video_streams_ios_force_avc_title">Spiest AVC (H.264)</string>
|
||||
<string name="revanced_spoof_video_streams_ios_force_avc_summary_on">Video kodeks ir piespiests uz AVC (H.264)</string>
|
||||
<string name="revanced_spoof_video_streams_ios_force_avc_summary_off">Video kodeks tiek noteikts automātiski</string>
|
||||
@@ -1296,9 +1296,10 @@ AVC maksimālā izšķirtspēja ir 1080p, Opus audio kodeks nav pieejams, un vid
|
||||
<string name="revanced_spoof_video_streams_about_ios_summary">"• Privāti bērnu videoklipi, iespējams, netiek atskaņoti
|
||||
• Video beidzas 1 sekundi agrāk"</string>
|
||||
<string name="revanced_spoof_video_streams_about_android_vr_title">Android VR viltošanas blakusparādības</string>
|
||||
<string name="revanced_spoof_video_streams_about_android_vr_summary">"• Bērnu videoklipi var nedarboties
|
||||
• Tiešraides straumes sākas no sākuma
|
||||
• Video beidzas 1 sekundi agrāk"</string>
|
||||
<string name="revanced_spoof_video_streams_about_android_vr_summary">"• Bērnu videoklipi, iespējams, netiek atskaņoti
|
||||
• Trūkst audioieraksta izvēlnes
|
||||
• Nav pieejama stabila skaļuma
|
||||
• Nav pieejams oriģinālā audioieraksta piespiedu iestatījums"</string>
|
||||
<string name="revanced_spoof_video_streams_language_title">Noklusētā audio straumes valoda</string>
|
||||
<string name="revanced_spoof_video_streams_language_DEFAULT">Lietotnes valoda</string>
|
||||
<string name="revanced_spoof_video_streams_language_AR">Arābu</string>
|
||||
|
||||
@@ -1287,7 +1287,7 @@ Het inschakelen hiervan kan hogere videokwaliteiten ontgrendelen"</string>
|
||||
|
||||
Video-playback werkt mogelijk niet"</string>
|
||||
<string name="revanced_spoof_video_streams_user_dialog_message">Het uitschakelen van deze instelling kan afspeelproblemen veroorzaken.</string>
|
||||
<string name="revanced_spoof_video_streams_client_title">Standaard client</string>
|
||||
<string name="revanced_spoof_video_streams_client_type_title">Standaard client</string>
|
||||
<string name="revanced_spoof_video_streams_ios_force_avc_title">Dwing AVC (H.264) af</string>
|
||||
<string name="revanced_spoof_video_streams_ios_force_avc_summary_on">Videoc codec is geforceerd naar AVC (H.264)</string>
|
||||
<string name="revanced_spoof_video_streams_ios_force_avc_summary_off">Videoc codec wordt automatisch bepaald</string>
|
||||
@@ -1299,8 +1299,9 @@ AVC heeft een maximale resolutie van 1080p, Opus audiocodec is niet beschikbaar
|
||||
• Video's eindigen 1 seconde eerder"</string>
|
||||
<string name="revanced_spoof_video_streams_about_android_vr_title">Neveneffecten van Android VR-vervalsing</string>
|
||||
<string name="revanced_spoof_video_streams_about_android_vr_summary">"• Kindervideo's worden mogelijk niet afgespeeld
|
||||
• Livestreams beginnen vanaf het begin
|
||||
• Video's eindigen 1 seconde eerder"</string>
|
||||
• Het menu met audiotracks ontbreekt
|
||||
• Stabiel volume is niet beschikbaar
|
||||
• Originele audio forceren is niet beschikbaar"</string>
|
||||
<string name="revanced_spoof_video_streams_language_title">Standaardtaal voor audiostream</string>
|
||||
<string name="revanced_spoof_video_streams_language_DEFAULT">App-taal</string>
|
||||
<string name="revanced_spoof_video_streams_language_AR">Arabisch</string>
|
||||
|
||||
@@ -1286,7 +1286,7 @@ Włączenie tego może odblokować wyższe jakości wideo"</string>
|
||||
|
||||
Odtwarzanie wideo może nie działać"</string>
|
||||
<string name="revanced_spoof_video_streams_user_dialog_message">Wyłączenie tej opcji może spowodować problemy z odtwarzaniem filmów.</string>
|
||||
<string name="revanced_spoof_video_streams_client_title">Domyślny klient</string>
|
||||
<string name="revanced_spoof_video_streams_client_type_title">Domyślny klient</string>
|
||||
<string name="revanced_spoof_video_streams_ios_force_avc_title">Wymuś AVC (H.264)</string>
|
||||
<string name="revanced_spoof_video_streams_ios_force_avc_summary_on">Kodek filmu jest wymuszony do AVC (H.264)</string>
|
||||
<string name="revanced_spoof_video_streams_ios_force_avc_summary_off">Kodek filmu jest ustawiany automatycznie</string>
|
||||
@@ -1297,9 +1297,10 @@ AVC ma maksymalną rozdzielczość 1080p, kodek audio Opus nie jest dostępny, a
|
||||
<string name="revanced_spoof_video_streams_about_ios_summary">"• Prywatne filmy dla dzieci mogą nie być odtwarzane
|
||||
• Filmy kończą się 1 sekundę wcześniej"</string>
|
||||
<string name="revanced_spoof_video_streams_about_android_vr_title">Efekty uboczne spoofingu Android VR</string>
|
||||
<string name="revanced_spoof_video_streams_about_android_vr_summary">"• Filmy dla dzieci mogą się nie odtwarzać
|
||||
• Transmisje na żywo rozpoczynają się od początku
|
||||
• Filmy kończą się 1 sekundę wcześniej"</string>
|
||||
<string name="revanced_spoof_video_streams_about_android_vr_summary">"• Filmy dla dzieci mogą nie być odtwarzane
|
||||
• Brak menu ścieżki audio
|
||||
• Stabilna głośność nie jest dostępna
|
||||
• Opcja wymuszenia oryginalnego dźwięku nie jest dostępna"</string>
|
||||
<string name="revanced_spoof_video_streams_language_title">Domyślny język strumienia dźwięku</string>
|
||||
<string name="revanced_spoof_video_streams_language_DEFAULT">Język aplikacji</string>
|
||||
<string name="revanced_spoof_video_streams_language_AR">Arabski</string>
|
||||
|
||||
@@ -1285,7 +1285,7 @@ Habilitar isso pode desbloquear qualidades de vídeo mais altas"</string>
|
||||
|
||||
A reprodução de vídeo pode não funcionar"</string>
|
||||
<string name="revanced_spoof_video_streams_user_dialog_message">Desativar esta configuração pode causar problemas de reprodução de vídeo.</string>
|
||||
<string name="revanced_spoof_video_streams_client_title">Cliente padrão</string>
|
||||
<string name="revanced_spoof_video_streams_client_type_title">Cliente padrão</string>
|
||||
<string name="revanced_spoof_video_streams_ios_force_avc_title">Forçar AVC (H.264)</string>
|
||||
<string name="revanced_spoof_video_streams_ios_force_avc_summary_on">O codec de vídeo é forçado para AVC (H.264)</string>
|
||||
<string name="revanced_spoof_video_streams_ios_force_avc_summary_off">O codec de vídeo é determinado automaticamente</string>
|
||||
@@ -1296,9 +1296,10 @@ AVC tem uma resolução máxima de 1080p, o codec de áudio Opus não está disp
|
||||
<string name="revanced_spoof_video_streams_about_ios_summary">"• Vídeos privados para crianças podem não ser reproduzidos
|
||||
• Os vídeos terminam 1 segundo mais cedo"</string>
|
||||
<string name="revanced_spoof_video_streams_about_android_vr_title">Efeitos colaterais do spoofing de Android VR</string>
|
||||
<string name="revanced_spoof_video_streams_about_android_vr_summary">"• Vídeos infantis podem não ser reproduzidos
|
||||
• As transmissões ao vivo começam do início
|
||||
• Os vídeos terminam 1 segundo antes"</string>
|
||||
<string name="revanced_spoof_video_streams_about_android_vr_summary">"• Vídeos infantis podem não ser reproduzidos
|
||||
• O menu da trilha de áudio está ausente
|
||||
• O volume estável não está disponível
|
||||
• Forçar áudio original não está disponível"</string>
|
||||
<string name="revanced_spoof_video_streams_language_title">Idioma do fluxo de áudio padrão</string>
|
||||
<string name="revanced_spoof_video_streams_language_DEFAULT">Idioma do aplicativo</string>
|
||||
<string name="revanced_spoof_video_streams_language_AR">Árabe</string>
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user