From fa7670aeaad1e2e5f8b3b59aca00cc3e4645a463 Mon Sep 17 00:00:00 2001 From: frank Date: Sun, 13 Jul 2025 17:43:49 -0500 Subject: [PATCH] [ie/kultura] Fix extraction for hidden url --- yt_dlp/extractor/kaltura.py | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/yt_dlp/extractor/kaltura.py b/yt_dlp/extractor/kaltura.py index 6d51e32f6d..802336aee2 100644 --- a/yt_dlp/extractor/kaltura.py +++ b/yt_dlp/extractor/kaltura.py @@ -264,9 +264,15 @@ def _kaltura_api_call(self, video_id, actions, service_url=None, **kwargs): def _get_video_info(self, video_id, partner_id, service_url=None, player_type='html5'): assert player_type in ('html5', 'kwidget') if player_type == 'kwidget': - return self._get_video_info_kwidget(video_id, partner_id, service_url) + response, info, flavor_assets, captions = self._get_video_info_kwidget(video_id, partner_id, service_url) + else: + response, info, flavor_assets, captions = self._get_video_info_html5(video_id, partner_id, service_url) - return self._get_video_info_html5(video_id, partner_id, service_url) + real_video_id = self._search_regex(r'http://cfvod.kaltura.com/p/\d+/sp/\d+/thumbnail/entry_id/(\w+)/version/\d+', info.get('thumbnailUrl'), 'entry_id') + if video_id != real_video_id: + return self._get_video_info(real_video_id, partner_id, service_url=service_url, player_type=player_type) + + return response, info, flavor_assets, captions def _get_video_info_html5(self, video_id, partner_id, service_url=None): actions = [