Skip to content

Commit

Permalink
fix(YouTube - Client spoof): Fix toast shown for live streams (#489)
Browse files Browse the repository at this point in the history
  • Loading branch information
LisoUseInAIKyrios committed Sep 28, 2023
1 parent da923a3 commit 27f49df
Show file tree
Hide file tree
Showing 3 changed files with 27 additions and 15 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -128,23 +128,26 @@ public static boolean getSeekbarThumbnailOverrideValue() {
*/
@Nullable
public static String getStoryboardRendererSpec(String originalStoryboardRendererSpec) {
if (!SettingsEnum.SPOOF_SIGNATURE.getBoolean()) return originalStoryboardRendererSpec;

StoryboardRenderer renderer = getRenderer();
if (renderer == null) return originalStoryboardRendererSpec;
if (SettingsEnum.SPOOF_SIGNATURE.getBoolean()) {
StoryboardRenderer renderer = getRenderer();
if (renderer != null) return renderer.getSpec();
}

return renderer.getSpec();
return originalStoryboardRendererSpec;
}

/**
* Injection point.
*/
public static int getRecommendedLevel(int originalLevel) {
if (!SettingsEnum.SPOOF_SIGNATURE.getBoolean()) return originalLevel;

StoryboardRenderer renderer = getRenderer();
if (renderer == null) return originalLevel;
if (SettingsEnum.SPOOF_SIGNATURE.getBoolean()) {
StoryboardRenderer renderer = getRenderer();
if (renderer != null) {
Integer recommendedLevel = renderer.getRecommendedLevel();
if (recommendedLevel != null) return recommendedLevel;
}
}

return renderer.getRecommendedLevel();
return originalLevel;
}
}
Original file line number Diff line number Diff line change
@@ -1,13 +1,16 @@
package app.revanced.integrations.patches.spoof;

import androidx.annotation.NonNull;
import androidx.annotation.Nullable;

import org.jetbrains.annotations.NotNull;

public final class StoryboardRenderer {
private final String spec;
private final int recommendedLevel;
@Nullable
private final Integer recommendedLevel;

public StoryboardRenderer(String spec, int recommendedLevel) {
public StoryboardRenderer(String spec, @Nullable Integer recommendedLevel) {
this.spec = spec;
this.recommendedLevel = recommendedLevel;
}
Expand All @@ -17,7 +20,11 @@ public String getSpec() {
return spec;
}

public int getRecommendedLevel() {
/**
* @return Recommended image quality level, or NULL if no recommendation exists.
*/
@Nullable
public Integer getRecommendedLevel() {
return recommendedLevel;
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -49,7 +49,7 @@ private static boolean isPlayabilityStatusOk(@NonNull JSONObject playerResponse)
try {
return playerResponse.getJSONObject("playabilityStatus").getString("status").equals("OK");
} catch (JSONException e) {
LogHelper.printException(() -> "Failed to get playabilityStatus", e);
LogHelper.printDebug(() -> "Failed to get playabilityStatus for response: " + playerResponse);
}

return false;
Expand Down Expand Up @@ -80,7 +80,9 @@ private static StoryboardRenderer getStoryboardRendererUsingResponse(@NonNull JS
final var rendererElement = storyboards.getJSONObject(storyboardsRendererTag);
StoryboardRenderer renderer = new StoryboardRenderer(
rendererElement.getString("spec"),
rendererElement.getInt("recommendedLevel")
rendererElement.has("recommendedLevel")
? rendererElement.getInt("recommendedLevel")
: null
);

LogHelper.printDebug(() -> "Fetched: " + renderer);
Expand Down

0 comments on commit 27f49df

Please sign in to comment.