From cf0a68bd77251528713404822a19c411a1c0aaca Mon Sep 17 00:00:00 2001 From: Fijxu Date: Sun, 15 Jun 2025 16:51:04 -0400 Subject: [PATCH] store adaptiveFormats data into a variable --- src/invidious/videos/parser.cr | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/invidious/videos/parser.cr b/src/invidious/videos/parser.cr index 6892b37c..178b905b 100644 --- a/src/invidious/videos/parser.cr +++ b/src/invidious/videos/parser.cr @@ -118,9 +118,10 @@ def extract_video_info(video_id : String) next if !(player_fallback_response = try_fetch_streaming_data(video_id, client_config)) - if player_fallback_response.dig?("streamingData", "adaptiveFormats", 0, "url") || player_fallback_response.dig?("streamingData", "adaptiveFormats", 0, "signatureCipher") + adaptive_formats = player_fallback_response.dig?("streamingData", "adaptiveFormats") + if adaptive_formats && (adaptive_formats.dig?(0, "url") || adaptive_formats.dig?(0, "signatureCipher")) streaming_data = player_response["streamingData"].as_h - streaming_data["adaptiveFormats"] = player_fallback_response["streamingData"]["adaptiveFormats"] + streaming_data["adaptiveFormats"] = adaptive_formats player_response["streamingData"] = JSON::Any.new(streaming_data) break end