mirror of
https://github.com/iv-org/invidious.git
synced 2024-11-15 04:38:24 +00:00
Videos: use WEB client instead of WEB CREATOR (#4984)
Use the WEB client when a potoken is configured, otherwise try with Android test suite if there is no potoken configured. This PR reverts some of the changes made in 4928 Related to 4734
This commit is contained in:
commit
ec82c2f539
@ -53,10 +53,6 @@ end
|
|||||||
def extract_video_info(video_id : String)
|
def extract_video_info(video_id : String)
|
||||||
# Init client config for the API
|
# Init client config for the API
|
||||||
client_config = YoutubeAPI::ClientConfig.new
|
client_config = YoutubeAPI::ClientConfig.new
|
||||||
# Use the WEB_CREATOR when po_token is configured because it fully only works on this client
|
|
||||||
if CONFIG.po_token
|
|
||||||
client_config.client_type = YoutubeAPI::ClientType::WebCreator
|
|
||||||
end
|
|
||||||
|
|
||||||
# Fetch data from the player endpoint
|
# Fetch data from the player endpoint
|
||||||
player_response = YoutubeAPI.player(video_id: video_id, params: "2AMB", client_config: client_config)
|
player_response = YoutubeAPI.player(video_id: video_id, params: "2AMB", client_config: client_config)
|
||||||
@ -106,15 +102,8 @@ def extract_video_info(video_id : String)
|
|||||||
|
|
||||||
new_player_response = nil
|
new_player_response = nil
|
||||||
|
|
||||||
# Second try in case WEB_CREATOR doesn't work with po_token.
|
# Don't use Android test suite client if po_token is passed because po_token doesn't
|
||||||
# Only trigger if reason found and po_token configured.
|
# work for Android test suite client.
|
||||||
if reason && CONFIG.po_token
|
|
||||||
client_config.client_type = YoutubeAPI::ClientType::WebEmbeddedPlayer
|
|
||||||
new_player_response = try_fetch_streaming_data(video_id, client_config)
|
|
||||||
end
|
|
||||||
|
|
||||||
# Don't use Android client if po_token is passed because po_token doesn't
|
|
||||||
# work for Android client.
|
|
||||||
if reason.nil? && CONFIG.po_token.nil?
|
if reason.nil? && CONFIG.po_token.nil?
|
||||||
# Fetch the video streams using an Android client in order to get the
|
# Fetch the video streams using an Android client in order to get the
|
||||||
# decrypted URLs and maybe fix throttling issues (#2194). See the
|
# decrypted URLs and maybe fix throttling issues (#2194). See the
|
||||||
|
@ -300,9 +300,8 @@ module YoutubeAPI
|
|||||||
end
|
end
|
||||||
|
|
||||||
if client_config.screen == "EMBED"
|
if client_config.screen == "EMBED"
|
||||||
# embedUrl https://www.google.com allow loading almost all video that are configured not embeddable
|
|
||||||
client_context["thirdParty"] = {
|
client_context["thirdParty"] = {
|
||||||
"embedUrl" => "https://www.google.com/",
|
"embedUrl" => "https://www.youtube.com/embed/#{video_id}",
|
||||||
} of String => String | Int64
|
} of String => String | Int64
|
||||||
end
|
end
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user