Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

All Videos Unplayable #996

Closed
DarkPunk420 opened this issue Nov 25, 2024 · 37 comments
Closed

All Videos Unplayable #996

DarkPunk420 opened this issue Nov 25, 2024 · 37 comments
Labels
bug Something isn't working

Comments

@DarkPunk420
Copy link

DarkPunk420 commented Nov 25, 2024

Context

Please provide any relevant information about your setup

  • Add-on Version: 7.0.9.2
  • Kodi Version: Nexus (Kodi-20.2)
  • Kodi GUI Language: English
  • Operating System: Kubuntu Linux 22.04.5
  • Operating System Language: English

Expected Behavior

Play video


Current Behavior

Error: UNKNOWN
Unplayable: This video is not available


Steps to Reproduce

  1. Play video

Log

2024-11-25 15:12:41.281 T:1541 debug : [plugin.video.youtube] Starting Kodion framework by bromix...
2024-11-25 15:12:41.282 T:1541 info : [plugin.video.youtube] Running: YouTube (7.0.9.2) on Nexus (Kodi-20.2) with Python 3.10.12
Path: /play/
Params: {'video_id': 'jS_7lxKzdaU'}
2024-11-25 15:12:41.284 T:1541 debug : requested setting (kodion.access_token) was not found.
2024-11-25 15:12:41.284 T:1541 debug : requested setting (kodion.access_token.expires) was not found.
2024-11-25 15:12:41.284 T:1541 debug : requested setting (kodion.alternative_player.web.urls) was not found.
2024-11-25 15:12:41.284 T:1541 debug : requested setting (kodion.fanart.show) was not found.
2024-11-25 15:12:41.284 T:1541 debug : requested setting (kodion.mpd.hdr) was not found.
2024-11-25 15:12:41.284 T:1541 debug : requested setting (kodion.mpd.limit.30) was not found.
2024-11-25 15:12:41.284 T:1541 debug : requested setting (kodion.mpd.live_streams) was not found.
2024-11-25 15:12:41.284 T:1541 debug : requested setting (kodion.mpd.proxy.port) was not found.
2024-11-25 15:12:41.284 T:1541 debug : requested setting (kodion.playback.history) was not found.
2024-11-25 15:12:41.284 T:1541 debug : requested setting (kodion.refresh_token) was not found.
2024-11-25 15:12:41.284 T:1541 debug : requested setting (kodion.video.quality.mpd) was not found.
2024-11-25 15:12:41.284 T:1541 debug : requested setting (simple.requests.ssl.verify) was not found.
2024-11-25 15:12:41.284 T:1541 debug : requested setting (youtube.api.last.hash) was not found.
2024-11-25 15:12:41.284 T:1541 debug : requested setting (youtube.channel.fanart.show) was not found.
2024-11-25 15:12:41.284 T:1541 debug : requested setting (youtube.client.selection) was not found.
2024-11-25 15:12:41.284 T:1541 debug : requested setting (youtube.hide_shorts) was not found.
2024-11-25 15:12:41.284 T:1541 debug : requested setting (youtube.view.description.show_channel_name) was not found.
2024-11-25 15:12:41.284 T:1541 debug : [plugin.video.youtube] Get |kodion.setup_wizard.forced_runs|: 5 (int, success)
2024-11-25 15:12:41.284 T:1541 debug : [plugin.video.youtube] Get |kodion.setup_wizard|: False (bool, success)
2024-11-25 15:12:41.385 T:1541 debug : [plugin.video.youtube] Wakeup |server_wakeup| in 100ms
2024-11-25 15:12:41.385 T:1541 debug : [plugin.video.youtube] JSONStore.load - loading:
|/home/darksine/.kodi/userdata/addon_data/plugin.video.youtube/access_manager.json|
2024-11-25 15:12:41.385 T:1541 debug : [plugin.video.youtube] JSONStore.save - data unchanged:
|/home/darksine/.kodi/userdata/addon_data/plugin.video.youtube/access_manager.json|
2024-11-25 15:12:41.385 T:1541 debug : [plugin.video.youtube] JSONStore.load - loading:
|/home/darksine/.kodi/userdata/addon_data/plugin.video.youtube/api_keys.json|
2024-11-25 15:12:41.385 T:1541 debug : [plugin.video.youtube] JSONStore.save - data unchanged:
|/home/darksine/.kodi/userdata/addon_data/plugin.video.youtube/api_keys.json|
2024-11-25 15:12:41.385 T:1541 debug : [plugin.video.youtube] JSONStore.load - loading:
|/home/darksine/.kodi/userdata/addon_data/plugin.video.youtube/access_manager.json|
2024-11-25 15:12:41.385 T:1541 debug : [plugin.video.youtube] JSONStore.save - data unchanged:
|/home/darksine/.kodi/userdata/addon_data/plugin.video.youtube/access_manager.json|
2024-11-25 15:12:41.385 T:1541 debug : [plugin.video.youtube] Get |youtube.api.key|: "000...000" (str, success)
2024-11-25 15:12:41.385 T:1541 debug : [plugin.video.youtube] Get |youtube.api.id|: "000...000" (str, success)
2024-11-25 15:12:41.385 T:1541 debug : [plugin.video.youtube] Get |youtube.api.secret|: "000...000" (str, success)
2024-11-25 15:12:41.385 T:1541 debug : [plugin.video.youtube] User: |0|, Using API key set: |own|
2024-11-25 15:12:41.385 T:1541 debug : [plugin.video.youtube] Selecting YouTube config "All"
2024-11-25 15:12:41.385 T:1541 debug : [plugin.video.youtube] Access token count: |2|, refresh token count: |2|
2024-11-25 15:12:41.385 T:1541 debug : [plugin.video.youtube] Get |youtube.language|: "en-US" (str, success)
2024-11-25 15:12:41.385 T:1541 debug : [plugin.video.youtube] Get |youtube.region|: "US" (str, success)
2024-11-25 15:12:41.385 T:1541 debug : [plugin.video.youtube] Get |kodion.content.max_per_page|: 50 (int, success)
2024-11-25 15:12:41.386 T:1541 debug : [plugin.video.youtube] Get |requests.ssl.verify|: True (bool, success)
2024-11-25 15:12:41.386 T:1541 debug : [plugin.video.youtube] Get |requests.timeout.connect|: 9 (int, success)
2024-11-25 15:12:41.386 T:1541 debug : [plugin.video.youtube] Get |requests.timeout.read|: 27 (int, success)
2024-11-25 15:12:41.386 T:1541 debug : [plugin.video.youtube] User is logged in
2024-11-25 15:12:41.386 T:1541 debug : [plugin.video.youtube] Get |kodion.support.alternative_player|: False (bool, success)
2024-11-25 15:12:41.386 T:1541 debug : [plugin.video.youtube] Get |kodion.default_player.web_urls|: False (bool, success)
2024-11-25 15:12:41.386 T:1541 debug : [plugin.video.youtube] Get |kodion.video.quality.isa|: True (bool, success)
2024-11-25 15:12:41.386 T:1541 debug : [plugin.video.youtube] Get |kodion.mpd.videos|: True (bool, success)
2024-11-25 15:12:41.386 T:1541 debug : [plugin.video.youtube] Get |kodion.mpd.stream.select|: 3 (int, success)
2024-11-25 15:12:41.386 T:1541 debug : [plugin.video.youtube] Get |kodion.audio_only|: False (bool, success)
2024-11-25 15:12:41.386 T:1541 debug : [plugin.video.youtube] Get |kodion.age.gate|: False (bool, success)
2024-11-25 15:12:41.583 T:1541 error : [plugin.video.youtube] Player request failed
exc: |"error" in response JSON data|
reason: badRequest
message: |Request contains an invalid argument.|
video_id: jS_7lxKzdaU, client: ios, auth: True
Request response:
{'error': {'code': 400, 'message': 'Request contains an invalid argument.', 'errors': [{'message': 'Request contains an invalid argument.', 'domain': 'global', 'reason': 'badRequest'}], 'status': 'INVALID_ARGUMENT'}}
Stack trace (most recent call last):
File "/home/darksine/.kodi/addons/plugin.video.youtube/resources/lib/plugin.py", line 16, in
plugin_runner.run()
File "/home/darksine/.kodi/addons/plugin.video.youtube/resources/lib/youtube_plugin/kodion/plugin_runner.py", line 62, in run
plugin.run(provider, context, focused=(current_uri == new_uri))
File "/home/darksine/.kodi/addons/plugin.video.youtube/resources/lib/youtube_plugin/kodion/plugin/xbmc/xbmc_plugin.py", line 158, in run
result, options = provider.navigate(context)
File "/home/darksine/.kodi/addons/plugin.video.youtube/resources/lib/youtube_plugin/kodion/abstract_provider.py", line 157, in navigate
result = handler(provider=self, context=context, re_match=re_match)
File "/home/darksine/.kodi/addons/plugin.video.youtube/resources/lib/youtube_plugin/youtube/helper/yt_play.py", line 348, in process
media_item = _play_stream(provider, context)
File "/home/darksine/.kodi/addons/plugin.video.youtube/resources/lib/youtube_plugin/youtube/helper/yt_play.py", line 68, in _play_stream
streams = client.get_streams(context,
File "/home/darksine/.kodi/addons/plugin.video.youtube/resources/lib/youtube_plugin/youtube/client/youtube.py", line 200, in get_streams
use_mpd=use_mpd).load_stream_info(video_id)
File "/home/darksine/.kodi/addons/plugin.video.youtube/resources/lib/youtube_plugin/youtube/helper/stream_info.py", line 1398, in load_stream_info
_result = self.request(
File "/home/darksine/.kodi/addons/plugin.video.youtube/resources/lib/youtube_plugin/kodion/network/requests.py", line 126, in request
stack_trace = format_stack()

2024-11-25 15:12:41.583 T:1541 warning : [plugin.video.youtube] Failed to retrieve video info - video_id: jS_7lxKzdaU, client: ios, auth: True,
status: ERROR, reason: UNKNOWN
2024-11-25 15:12:41.644 T:1541 error : [plugin.video.youtube] Player request failed
exc: |"error" in response JSON data|
reason: badRequest
message: |Request contains an invalid argument.|
video_id: jS_7lxKzdaU, client: android_youtube_tv, auth: True
Request response:
{'error': {'code': 400, 'message': 'Request contains an invalid argument.', 'errors': [{'message': 'Request contains an invalid argument.', 'domain': 'global', 'reason': 'badRequest'}], 'status': 'INVALID_ARGUMENT'}}
Stack trace (most recent call last):
File "/home/darksine/.kodi/addons/plugin.video.youtube/resources/lib/plugin.py", line 16, in
plugin_runner.run()
File "/home/darksine/.kodi/addons/plugin.video.youtube/resources/lib/youtube_plugin/kodion/plugin_runner.py", line 62, in run
plugin.run(provider, context, focused=(current_uri == new_uri))
File "/home/darksine/.kodi/addons/plugin.video.youtube/resources/lib/youtube_plugin/kodion/plugin/xbmc/xbmc_plugin.py", line 158, in run
result, options = provider.navigate(context)
File "/home/darksine/.kodi/addons/plugin.video.youtube/resources/lib/youtube_plugin/kodion/abstract_provider.py", line 157, in navigate
result = handler(provider=self, context=context, re_match=re_match)
File "/home/darksine/.kodi/addons/plugin.video.youtube/resources/lib/youtube_plugin/youtube/helper/yt_play.py", line 348, in process
media_item = _play_stream(provider, context)
File "/home/darksine/.kodi/addons/plugin.video.youtube/resources/lib/youtube_plugin/youtube/helper/yt_play.py", line 68, in _play_stream
streams = client.get_streams(context,
File "/home/darksine/.kodi/addons/plugin.video.youtube/resources/lib/youtube_plugin/youtube/client/youtube.py", line 200, in get_streams
use_mpd=use_mpd).load_stream_info(video_id)
File "/home/darksine/.kodi/addons/plugin.video.youtube/resources/lib/youtube_plugin/youtube/helper/stream_info.py", line 1398, in load_stream_info
_result = self.request(
File "/home/darksine/.kodi/addons/plugin.video.youtube/resources/lib/youtube_plugin/kodion/network/requests.py", line 126, in request
stack_trace = format_stack()

2024-11-25 15:12:41.644 T:1541 warning : [plugin.video.youtube] Failed to retrieve video info - video_id: jS_7lxKzdaU, client: android_youtube_tv, auth: True,
status: ERROR, reason: UNKNOWN
2024-11-25 15:12:41.754 T:1541 warning : [plugin.video.youtube] Failed to retrieve video info - video_id: jS_7lxKzdaU, client: android_testsuite, auth: True,
status: UNPLAYABLE, reason: This video is not available
2024-11-25 15:12:41.755 T:1541 error : [plugin.video.youtube] yt_play.play_video - This video is not available:
File "/home/darksine/.kodi/addons/plugin.video.youtube/resources/lib/plugin.py", line 16, in
plugin_runner.run()
File "/home/darksine/.kodi/addons/plugin.video.youtube/resources/lib/youtube_plugin/kodion/plugin_runner.py", line 62, in run
plugin.run(provider, context, focused=(current_uri == new_uri))
File "/home/darksine/.kodi/addons/plugin.video.youtube/resources/lib/youtube_plugin/kodion/plugin/xbmc/xbmc_plugin.py", line 158, in run
result, options = provider.navigate(context)
File "/home/darksine/.kodi/addons/plugin.video.youtube/resources/lib/youtube_plugin/kodion/abstract_provider.py", line 157, in navigate
result = handler(provider=self, context=context, re_match=re_match)
File "/home/darksine/.kodi/addons/plugin.video.youtube/resources/lib/youtube_plugin/youtube/helper/yt_play.py", line 348, in process
media_item = _play_stream(provider, context)
File "/home/darksine/.kodi/addons/plugin.video.youtube/resources/lib/youtube_plugin/youtube/helper/yt_play.py", line 75, in _play_stream
exc=exc, details=''.join(format_stack())

2024-11-25 15:12:41.766 T:1541 debug : [plugin.video.youtube] Profiling stats: 14999 function calls (14780 primitive calls) in 0.474 seconds

                                                  Ordered by: cumulative time, internal time
                                                  List reduced from 798 to 20 due to restriction <20>
                                               
                                                  ncalls  tottime  percall  cumtime  percall filename:lineno(function)
                                                       1    0.000    0.000    0.473    0.473 xbmc_plugin.py:64(run)
                                                       1    0.000    0.000    0.471    0.471 abstract_provider.py:146(navigate)
                                                       1    0.000    0.000    0.471    0.471 yt_play.py:308(process)
                                                       1    0.000    0.000    0.370    0.370 yt_play.py:37(_play_stream)
                                                       1    0.000    0.000    0.369    0.369 youtube.py:190(get_streams)
                                                       1    0.000    0.000    0.369    0.369 stream_info.py:1336(load_stream_info)
                                                       3    0.000    0.000    0.368    0.123 requests.py:76(request)
                                                       3    0.000    0.000    0.366    0.122 sessions.py:502(request)
                                                       3    0.000    0.000    0.358    0.119 sessions.py:673(send)
                                                       3    0.000    0.000    0.357    0.119 adapters.py:434(send)
                                                       3    0.000    0.000    0.355    0.118 connectionpool.py:595(urlopen)
                                                       3    0.000    0.000    0.354    0.118 connectionpool.py:380(_make_request)
                                                       3    0.000    0.000    0.217    0.072 connection.py:435(getresponse)
                                                       3    0.000    0.000    0.216    0.072 client.py:1331(getresponse)
                                                       3    0.000    0.000    0.216    0.072 client.py:311(begin)
                                                      92    0.000    0.000    0.215    0.002 {method 'readline' of '_io.BufferedReader' objects}
                                                       7    0.000    0.000    0.215    0.031 socket.py:691(readinto)
                                                       7    0.000    0.000    0.215    0.031 ssl.py:1292(recv_into)
                                                       3    0.000    0.000    0.215    0.072 client.py:278(_read_status)
                                                       7    0.000    0.000    0.215    0.031 ssl.py:1150(read)

2024-11-25 15:12:41.766 T:1541 debug : CPythonInvoker(13, /home/darksine/.kodi/addons/plugin.video.youtube/resources/lib/plugin.py): script successfully run
2024-11-25 15:12:41.768 T:1369 debug : ------ Window Deinit (DialogBusy.xml) ------
2024-11-25 15:12:41.768 T:1542 debug : Thread ScriptObs 140611973015104 terminating
2024-11-25 15:12:41.768 T:1369 error : Playlist Player: skipping unplayable item: 11, path [plugin://plugin.video.youtube/play/?video_id=jS_7lxKzdaU]
2024-11-25 15:12:41.768 T:1369 debug : CScriptRunner: running add-on script YouTube('plugin://plugin.video.youtube/play/', '10', '?video_id=Q37OYGy-0ZQ')
2024-11-25 15:12:41.768 T:1369 debug : GetLanguageInvoker - Reusing LanguageInvokerThread 13 for script /home/darksine/.kodi/addons/plugin.video.youtube/resources/lib/plugin.py
2024-11-25 15:12:41.768 T:1541 debug : initializing python engine.
2024-11-25 15:12:41.768 T:1541 debug : CPythonInvoker(13, /home/darksine/.kodi/addons/plugin.video.youtube/resources/lib/plugin.py): start processing
2024-11-25 15:12:41.768 T:1541 debug : CPythonInvoker(13): adding args:
2024-11-25 15:12:41.768 T:1541 debug : CPythonInvoker(13): plugin://plugin.video.youtube/play/
2024-11-25 15:12:41.768 T:1541 debug : CPythonInvoker(13): 10
2024-11-25 15:12:41.768 T:1541 debug : CPythonInvoker(13): ?video_id=Q37OYGy-0ZQ
2024-11-25 15:12:41.768 T:1541 debug : CPythonInvoker(13): resume:false
2024-11-25 15:12:41.768 T:1541 debug : CPythonInvoker(13, /home/darksine/.kodi/addons/plugin.video.youtube/resources/lib/plugin.py): entering source directory /home/darksine/.kodi/addons/plugin.video.youtube/resources/lib
2024-11-25 15:12:41.768 T:1541 debug : CPythonInvoker(13, /home/darksine/.kodi/addons/plugin.video.youtube/resources/lib/plugin.py): instantiating addon using automatically obtained id of "plugin.video.youtube" dependent on version 3.0.0 of the xbmc.python api


Additional Information

Working fine for months until today. Same error happens on every play attempt. Tested hundreds of videos. Manual update to 7.1.1.1 from 995 makes videos playable. Just posting to make my error log available. I modified the API Key, ID, and secret lines. Thanks for all the work on this amazing add-on.


@DarkPunk420 DarkPunk420 added the bug Something isn't working label Nov 25, 2024
@MoojMidge
Copy link
Collaborator

Appreciate you took the time to post a log using v7.0.9.2. Will look to push a v7.1.1.2 release out shortly to help those similarly affected.

@smurfy
Copy link

smurfy commented Nov 26, 2024

Just updated to 7.1.1.1 manually and the issues seems to be gone, only tested a few videos.

Also tried before updating with 7.0.9.2 and no video worked, compared to yesterday where only some had errors.

But i'm happy and thankful this has already been fixed just not pushed to offical repos yet.

@balta3
Copy link

balta3 commented Nov 26, 2024

I have suddenly the same problem, but already using 7.1.1.1 since a few days. I played a video for my daughter and that run fine, and suddenly the next video could not be played anymore, now no video suitable for kids is working.

@phpTrix
Copy link

phpTrix commented Nov 26, 2024

Same here, no video playback possible, v7.1.1.1 (downloaded today).
https://paste.libreelec.tv/crisp-urchin.log
Request contains an invalid argument / The caller does not have permission

@raulardila
Copy link

Same problem with 7.0.9.2 and 7.1.1.1.
Tested with two different API.
If I'm logged in with my youtube account videos doesn't work.
Without login it works!

@lordOric
Copy link

Fixed in 7.1.1.1 on my Kodi 20.5 (Ubuntu package). Thanks a lot !

@teodoryantcheff
Copy link

This may be useful:

2024-11-26 20:16:20.523 T:641346    info <general>: [plugin.video.youtube] Plugin: Running v7.1.1.1+unofficial.1
                                                        Kodi:   v21.1 (Kodi Omega)
                                                        Python: v3.11.9
                                                        Path:   |/play/|
                                                        Params: |{'video_id': 'LLxDF_Ny6yU'}|
2024-11-26 20:16:20.683 T:641346   error <general>: [plugin.video.youtube] Player request failed
                                                        Request - Failed
                                                        Exception: YouTubeException('"error" in response JSON data')
                                                        Reason:    badRequest
                                                        Message:   Request contains an invalid argument.
                                                        video_id:  |LLxDF_Ny6yU|
                                                        Client:    |ios|
                                                        Auth:      |True|
                                                        Response:   {'error': {'code': 400, 'message': 'Request contains an invalid argument.', 'errors': [{'message': 'Request contains an invalid argument.', 'domain': 'global', 'reason': 'badRequest'}], 'status': 'INVALID_ARGUMENT'}}
                                                        Stack trace (most recent call last):
                                                     File "/storage/.kodi/addons/plugin.video.youtube/resources/lib/plugin.py", line 16, in <module>
                                                       plugin_runner.run()
                                                     File "/storage/.kodi/addons/plugin.video.youtube/resources/lib/youtube_plugin/kodion/plugin_runner.py", line 67, in run
                                                       plugin.run(provider, context, focused=(current_uri == new_uri))
                                                     File "/storage/.kodi/addons/plugin.video.youtube/resources/lib/youtube_plugin/kodion/plugin/xbmc/xbmc_plugin.py", line 185, in run
                                                       result, options = provider.navigate(context)
                                                     File "/storage/.kodi/addons/plugin.video.youtube/resources/lib/youtube_plugin/kodion/abstract_provider.py", line 170, in navigate
                                                       result = handler(provider=self, context=context, re_match=re_match)
                                                     File "/storage/.kodi/addons/plugin.video.youtube/resources/lib/youtube_plugin/youtube/helper/yt_play.py", line 347, in process
                                                       media_item = _play_stream(provider, context)
                                                     File "/storage/.kodi/addons/plugin.video.youtube/resources/lib/youtube_plugin/youtube/helper/yt_play.py", line 77, in _play_stream
                                                       streams = client.get_streams(
                                                     File "/storage/.kodi/addons/plugin.video.youtube/resources/lib/youtube_plugin/youtube/client/youtube.py", line 206, in get_streams
                                                       ).load_stream_info(video_id)
                                                     File "/storage/.kodi/addons/plugin.video.youtube/resources/lib/youtube_plugin/youtube/helper/stream_info.py", line 1417, in load_stream_info
                                                       _result = self.request(
                                                     File "/storage/.kodi/addons/plugin.video.youtube/resources/lib/youtube_plugin/kodion/network/requests.py", line 151, in request
                                                       stack = format_stack()

2024-11-26 20:16:20.683 T:641346 warning <general>: [plugin.video.youtube] Failed to retrieve video info
                                                        Status:   ERROR
                                                        Reason:   UNKNOWN
                                                        video_id: |LLxDF_Ny6yU|
                                                        Client:   |ios|
                                                        Auth:     |True|
2024-11-26 20:16:20.760 T:641346   error <general>: [plugin.video.youtube] Player request failed
                                                        Request - Failed
                                                        Exception: YouTubeException('"error" in response JSON data')
                                                        Reason:    forbidden
                                                        Message:   The caller does not have permission
                                                        video_id:  |LLxDF_Ny6yU|
                                                        Client:    |media_connect_frontend|
                                                        Auth:      |True|
                                                        Response:   {'error': {'code': 403, 'message': 'The caller does not have permission', 'errors': [{'message': 'The caller does not have permission', 'domain': 'global', 'reason': 'forbidden'}], 'status': 'PERMISSION_DENIED'}}
                                                        Stack trace (most recent call last):
                                                     File "/storage/.kodi/addons/plugin.video.youtube/resources/lib/plugin.py", line 16, in <module>
                                                       plugin_runner.run()
                                                     File "/storage/.kodi/addons/plugin.video.youtube/resources/lib/youtube_plugin/kodion/plugin_runner.py", line 67, in run
                                                       plugin.run(provider, context, focused=(current_uri == new_uri))
                                                     File "/storage/.kodi/addons/plugin.video.youtube/resources/lib/youtube_plugin/kodion/plugin/xbmc/xbmc_plugin.py", line 185, in run
                                                       result, options = provider.navigate(context)
                                                     File "/storage/.kodi/addons/plugin.video.youtube/resources/lib/youtube_plugin/kodion/abstract_provider.py", line 170, in navigate
                                                       result = handler(provider=self, context=context, re_match=re_match)
                                                     File "/storage/.kodi/addons/plugin.video.youtube/resources/lib/youtube_plugin/youtube/helper/yt_play.py", line 347, in process
                                                       media_item = _play_stream(provider, context)
                                                     File "/storage/.kodi/addons/plugin.video.youtube/resources/lib/youtube_plugin/youtube/helper/yt_play.py", line 77, in _play_stream
                                                       streams = client.get_streams(
                                                     File "/storage/.kodi/addons/plugin.video.youtube/resources/lib/youtube_plugin/youtube/client/youtube.py", line 206, in get_streams
                                                       ).load_stream_info(video_id)
                                                     File "/storage/.kodi/addons/plugin.video.youtube/resources/lib/youtube_plugin/youtube/helper/stream_info.py", line 1417, in load_stream_info
                                                       _result = self.request(
                                                     File "/storage/.kodi/addons/plugin.video.youtube/resources/lib/youtube_plugin/kodion/network/requests.py", line 151, in request
                                                       stack = format_stack()

2024-11-26 20:16:20.760 T:641346 warning <general>: [plugin.video.youtube] Failed to retrieve video info
                                                        Status:   ERROR
                                                        Reason:   UNKNOWN
                                                        video_id: |LLxDF_Ny6yU|
                                                        Client:   |media_connect_frontend|
                                                        Auth:     |True|
2024-11-26 20:16:20.761 T:641346   error <general>: [plugin.video.youtube] yt_play.play_video - Error
                                                        Exception: YouTubeException('UNKNOWN')
                                                        Stack trace (most recent call last):
                                                     File "/storage/.kodi/addons/plugin.video.youtube/resources/lib/plugin.py", line 16, in <module>
                                                       plugin_runner.run()
                                                     File "/storage/.kodi/addons/plugin.video.youtube/resources/lib/youtube_plugin/kodion/plugin_runner.py", line 67, in run
                                                       plugin.run(provider, context, focused=(current_uri == new_uri))
                                                     File "/storage/.kodi/addons/plugin.video.youtube/resources/lib/youtube_plugin/kodion/plugin/xbmc/xbmc_plugin.py", line 185, in run
                                                       result, options = provider.navigate(context)
                                                     File "/storage/.kodi/addons/plugin.video.youtube/resources/lib/youtube_plugin/kodion/abstract_provider.py", line 170, in navigate
                                                       result = handler(provider=self, context=context, re_match=re_match)
                                                     File "/storage/.kodi/addons/plugin.video.youtube/resources/lib/youtube_plugin/youtube/helper/yt_play.py", line 347, in process
                                                       media_item = _play_stream(provider, context)
                                                     File "/storage/.kodi/addons/plugin.video.youtube/resources/lib/youtube_plugin/youtube/helper/yt_play.py", line 89, in _play_stream
                                                       stack=''.join(format_stack())))

2024-11-26 20:16:20.772 T:914     error <general>: Playlist Player: skipping unplayable item: 0, path [plugin://plugin.video.youtube/play/?video_id=LLxDF_Ny6yU]
2024-11-26 20:16:20.773 T:922      info <general>: CActiveAESink::OpenSink - initialize sink
2024-11-26 20:16:20.773 T:922      info <general>: CAESinkALSA::Initialize - Attempting to open device "hdmi:CARD=vc4hdmi0,DEV=0"
2024-11-26 20:16:20.775 T:922      info <general>: CAESinkALSA::Initialize - Opened device "hdmi:CARD=vc4hdmi0,DEV=0,AES0=0x04,AES1=0x82,AES2=0x00,AES3=0x00"
2024-11-26 20:16:20.775 T:922      info <general>: CAESinkALSA::InitializeHW - Your hardware does not support AE_FMT_FLOAT, trying other formats
2024-11-26 20:16:20.775 T:922      info <general>: CAESinkALSA::InitializeHW - Using data format AE_FMT_S24NE3
2024-11-26 20:16:21.773 T:641346    info <general>: [plugin.video.youtube] Plugin: Running v7.1.1.1+unofficial.1
                                                        Kodi:   v21.1 (Kodi Omega)
                                                        Python: v3.11.9
                                                        Path:   |/kodion/route/home/|
                                                        Params: |{'window_fallback': True, 'window_replace': True, 'window_return': False}|
2024-11-26 20:16:22.107 T:914     error <general>: Control 54 in window 10025 has been asked to focus, but it can't
2024-11-26 20:16:22.223 T:641346    info <general>: [plugin.video.youtube] Plugin: Running v7.1.1.1+unofficial.1
                                                        Kodi:   v21.1 (Kodi Omega)
                                                        Python: v3.11.9
                                                        Path:   |/home/|
                                                        Params: |{}|

@shadowimmage
Copy link

Same problem here, all youtube videos unplayable. Log shows "request contains an invalid argument".

  • Kodi version: 21.1.0
  • plugin.video.youtube v 7.0.9.2
  • OS: LibreELEC 12.0.1
  • Kernel 6.6.45
  • HW: Raspberry Pi 5 (ARM x64)

I'll try installing the updated youtube plugin version tonight and see if that changes things

@shadowimmage
Copy link

installing v7.1.1.1 from the github releases official zip file fixed the issue, looks like.

@kujub
Copy link

kujub commented Nov 27, 2024

No luck here with the update to 7.1.1.1. Needed to Sign out.
Now unable to sign in again. (running on Ubuntu 22.04.5)
2024-11-27 09:20:50.907 T:69348 error <general>: [plugin.video.youtube] Login Failed: Unknown response Device/user code request - Failed Exception: LoginException('"error" in response JSON data') config_type: |YouTube-Kodi| client_id: |618...t.com| Response: {'error': 'invalid_client', 'error_description': 'Invalid client type.', 'code': 401} 2024-11-27 09:20:50.910 T:69348 error <general>: [plugin.video.youtube] LoginException: {'error': 'invalid_client', 'error_description': 'Invalid client type.', 'code': 401} 2024-11-27 09:20:50.935 T:69348 info <general>: [plugin.video.youtube] Plugin: Running v7.1.1.1 Kodi: v21.1 (Kodi Omega) Python: v3.11.10 Path: |/kodion/route/sign/| Params: |{'window_fallback': True, 'window_replace': True, 'window_return': False}|

@MoojMidge
Copy link
Collaborator

Needed to Sign out.
Now unable to sign in again.

That's an interesting observation. It means that your OAuth credentials are no longer valid and need to be recreated. Follow the steps here: #439 (comment)
Pay particular attention to Step 10, as that is what the issue is with your current OAuth credentials.

Once you do this and can login again, can you check whether playback also works using v7.1.1.1?

For anyone else having problems using v7.1.1.1, are you also unable to log in after logging out? Or are you able to log in, but still have problems with playback?

There are reports of OAuth credentials no longer working in the way that it is used in this addon, and this change is slowly rolling out, but would be interested to find out a bit more from those correctly having issues using v7.1.1.1

@Kaizaaaa
Copy link

Kaizaaaa commented Nov 27, 2024

Hey there,
I am having the problem no video is loading. Yesterday I manually installed v7.1.1.1 yesterday, but it did not fix the problem with the videos.
I seem to be still logged in and can retrieve the list contents, but cannot start any videos.

I would love to share a log too, but can't locate it. The /storage/logs folder is empty. :/

If you can give me a hint how to retrieve the log I would be happy to share it. :)

@MoojMidge
Copy link
Collaborator

@Kaizaaaa - don't need a log just at this stage, but can you try to logout and then login? Does the login work?

If the login does work after the logout, but playback still doesn't work, then I would like to see a log.

The easiest way to share a log is to use the Kodi Logfile Uploader addon. There are some instructions in the Kodi wiki: https://kodi.wiki/view/Log_file/Easy

@kujub
Copy link

kujub commented Nov 27, 2024

There are reports of OAuth credentials no longer working in the way that it is used in this addon, and this change is slowly rolling out, but would be interested to find out a bit more from those correctly having issues using v7.1.1.1

Followed step 9, 10 to switch OAuth from "Desktop client" to "TV client". This fixed sign in.

Now again can't play anything as before.
log says: 'Request contains an invalid argument / The caller does not have permission'
Also tried with new api key w/o api restrictions w/o success.
youtube data api v3 is fully enabled (v1 and v3, all options).
Still running v7.1.1.1 here.
edit: v7.0.9.2 works for me now.

@sloat
Copy link

sloat commented Nov 27, 2024

For anyone else having problems using v7.1.1.1, are you also unable to log in after logging out?

I had no problem logging out and logging in again, but I checked and my credentials are for TV.

Or are you able to log in, but still have problems with playback?

Still no playback for me though. I have basically the same log output as @teodoryantcheff --

  1. Invalid argument
  2. Caller does not have permission
  3. Unknown

@Kaizaaaa
Copy link

Kaizaaaa commented Nov 27, 2024

I logged out and logged in again. That did not help. So I followed the instructions to get the log file:

2024-11-27 14:38:11.890 T:1329     info <general>: [plugin.video.youtube] playlist_id: 1, position - 1/1
2024-11-27 14:38:11.892 T:1329     info <general>: [plugin.video.youtube] JSONStore.load - loading
                                                   	File: /storage/.kodi/userdata/addon_data/plugin.video.youtube/access_manager.json
2024-11-27 14:38:11.893 T:1329     info <general>: [plugin.video.youtube] JSONStore.save - data unchanged
                                                   	File: /storage/.kodi/userdata/addon_data/plugin.video.youtube/access_manager.json
2024-11-27 14:38:11.893 T:1329     info <general>: [plugin.video.youtube] JSONStore.load - loading
                                                   	File: /storage/.kodi/userdata/addon_data/plugin.video.youtube/api_keys.json
2024-11-27 14:38:11.893 T:1329     info <general>: [plugin.video.youtube] JSONStore.save - data unchanged
                                                   	File: /storage/.kodi/userdata/addon_data/plugin.video.youtube/api_keys.json
2024-11-27 14:38:11.893 T:1329     info <general>: [plugin.video.youtube] JSONStore.load - loading
                                                   	File: /storage/.kodi/userdata/addon_data/plugin.video.youtube/access_manager.json
2024-11-27 14:38:11.894 T:1329     info <general>: [plugin.video.youtube] JSONStore.save - data unchanged
                                                   	File: /storage/.kodi/userdata/addon_data/plugin.video.youtube/access_manager.json
2024-11-27 14:38:11.894 T:1329     info <general>: [plugin.video.youtube] Get |youtube.api.key|: "AIz...-PQ" (str, success)
2024-11-27 14:38:11.894 T:1329     info <general>: [plugin.video.youtube] Get |youtube.api.id|: "587...3ggqn" (str, success)
2024-11-27 14:38:11.894 T:1329     info <general>: [plugin.video.youtube] Get |youtube.api.secret|: "GOC...H43" (str, success)
2024-11-27 14:38:11.894 T:1329     info <general>: [plugin.video.youtube] User: |1|, Using API key set: |own|
2024-11-27 14:38:11.894 T:1329     info <general>: [plugin.video.youtube] Selecting YouTube config "All"
2024-11-27 14:38:11.894 T:1329     info <general>: [plugin.video.youtube] Access token count: |1|, refresh token count: |1|
2024-11-27 14:38:11.894 T:1329     info <general>: [plugin.video.youtube] Get |youtube.language|: "de" (str, success)
2024-11-27 14:38:11.894 T:1329     info <general>: [plugin.video.youtube] Get |youtube.region|: "DE" (str, success)
2024-11-27 14:38:11.894 T:1329     info <general>: [plugin.video.youtube] Get |kodion.content.max_per_page|: 50 (int, success)
2024-11-27 14:38:11.894 T:1329     info <general>: [plugin.video.youtube] Get |requests.ssl.verify|: True (bool, success)
2024-11-27 14:38:11.894 T:1329     info <general>: [plugin.video.youtube] Get |requests.timeout.connect|: 9 (int, success)
2024-11-27 14:38:11.894 T:1329     info <general>: [plugin.video.youtube] Get |requests.timeout.read|: 27 (int, success)
2024-11-27 14:38:11.895 T:1329     info <general>: [plugin.video.youtube] Get |requests.proxy.source|: 1 (int, success)
2024-11-27 14:38:11.895 T:1329     info <general>: [plugin.video.youtube] User is logged in
2024-11-27 14:38:11.895 T:1329     info <general>: [plugin.video.youtube] Get |kodion.support.alternative_player|: True (bool, success)
2024-11-27 14:38:11.895 T:1329     info <general>: [plugin.video.youtube] Get |kodion.video.quality.isa|: False (bool, success)
2024-11-27 14:38:11.895 T:1329     info <general>: [plugin.video.youtube] Get |kodion.video.quality.ask|: False (bool, success)
2024-11-27 14:38:11.895 T:1329     info <general>: [plugin.video.youtube] Get |kodion.audio_only|: False (bool, success)
2024-11-27 14:38:11.896 T:1329     info <general>: [plugin.video.youtube] Get |kodion.age.gate|: True (bool, success)
2024-11-27 14:38:12.014 T:1329    error <general>: [plugin.video.youtube] Player request failed
                                                   	Request - Failed
                                                   	Exception: YouTubeException('"error" in response JSON data')
                                                   	Reason:    badRequest
                                                   	Message:   Request contains an invalid argument.
                                                   	video_id:  |meoK1AGHKzA|
                                                   	Client:    |ios|
                                                   	Auth:      |True|
                                                   	Response:   {'error': {'code': 400, 'message': 'Request contains an invalid argument.', 'errors': [{'message': 'Request contains an invalid argument.', 'domain': 'global', 'reason': 'badRequest'}], 'status': 'INVALID_ARGUMENT'}}
                                                   	Stack trace (most recent call last):
                                                     File "/storage/.kodi/addons/plugin.video.youtube/resources/lib/plugin.py", line 16, in <module>
                                                       plugin_runner.run()
                                                     File "/storage/.kodi/addons/plugin.video.youtube/resources/lib/youtube_plugin/kodion/plugin_runner.py", line 67, in run
                                                       plugin.run(provider, context, focused=(current_uri == new_uri))
                                                     File "/storage/.kodi/addons/plugin.video.youtube/resources/lib/youtube_plugin/kodion/plugin/xbmc/xbmc_plugin.py", line 185, in run
                                                       result, options = provider.navigate(context)
                                                     File "/storage/.kodi/addons/plugin.video.youtube/resources/lib/youtube_plugin/kodion/abstract_provider.py", line 169, in navigate
                                                       result = handler(provider=self, context=context, re_match=re_match)
                                                     File "/storage/.kodi/addons/plugin.video.youtube/resources/lib/youtube_plugin/youtube/helper/yt_play.py", line 347, in process
                                                       media_item = _play_stream(provider, context)
                                                     File "/storage/.kodi/addons/plugin.video.youtube/resources/lib/youtube_plugin/youtube/helper/yt_play.py", line 77, in _play_stream
                                                       streams = client.get_streams(
                                                     File "/storage/.kodi/addons/plugin.video.youtube/resources/lib/youtube_plugin/youtube/client/youtube.py", line 206, in get_streams
                                                       ).load_stream_info(video_id)
                                                     File "/storage/.kodi/addons/plugin.video.youtube/resources/lib/youtube_plugin/youtube/helper/stream_info.py", line 1417, in load_stream_info
                                                       _result = self.request(
                                                     File "/storage/.kodi/addons/plugin.video.youtube/resources/lib/youtube_plugin/kodion/network/requests.py", line 151, in request
                                                       stack = format_stack()
                                                   
2024-11-27 14:38:12.014 T:1329  warning <general>: [plugin.video.youtube] Failed to retrieve video info
                                                   	Status:   ERROR
                                                   	Reason:   UNKNOWN
                                                   	video_id: |meoK1AGHKzA|
                                                   	Client:   |ios|
                                                   	Auth:     |True|
2024-11-27 14:38:12.063 T:1329    error <general>: [plugin.video.youtube] Player request failed
                                                   	Request - Failed
                                                   	Exception: YouTubeException('"error" in response JSON data')
                                                   	Reason:    forbidden
                                                   	Message:   The caller does not have permission
                                                   	video_id:  |meoK1AGHKzA|
                                                   	Client:    |media_connect_frontend|
                                                   	Auth:      |True|
                                                   	Response:   {'error': {'code': 403, 'message': 'The caller does not have permission', 'errors': [{'message': 'The caller does not have permission', 'domain': 'global', 'reason': 'forbidden'}], 'status': 'PERMISSION_DENIED'}}
                                                   	Stack trace (most recent call last):
                                                     File "/storage/.kodi/addons/plugin.video.youtube/resources/lib/plugin.py", line 16, in <module>
                                                       plugin_runner.run()
                                                     File "/storage/.kodi/addons/plugin.video.youtube/resources/lib/youtube_plugin/kodion/plugin_runner.py", line 67, in run
                                                       plugin.run(provider, context, focused=(current_uri == new_uri))
                                                     File "/storage/.kodi/addons/plugin.video.youtube/resources/lib/youtube_plugin/kodion/plugin/xbmc/xbmc_plugin.py", line 185, in run
                                                       result, options = provider.navigate(context)
                                                     File "/storage/.kodi/addons/plugin.video.youtube/resources/lib/youtube_plugin/kodion/abstract_provider.py", line 169, in navigate
                                                       result = handler(provider=self, context=context, re_match=re_match)
                                                     File "/storage/.kodi/addons/plugin.video.youtube/resources/lib/youtube_plugin/youtube/helper/yt_play.py", line 347, in process
                                                       media_item = _play_stream(provider, context)
                                                     File "/storage/.kodi/addons/plugin.video.youtube/resources/lib/youtube_plugin/youtube/helper/yt_play.py", line 77, in _play_stream
                                                       streams = client.get_streams(
                                                     File "/storage/.kodi/addons/plugin.video.youtube/resources/lib/youtube_plugin/youtube/client/youtube.py", line 206, in get_streams
                                                       ).load_stream_info(video_id)
                                                     File "/storage/.kodi/addons/plugin.video.youtube/resources/lib/youtube_plugin/youtube/helper/stream_info.py", line 1417, in load_stream_info
                                                       _result = self.request(
                                                     File "/storage/.kodi/addons/plugin.video.youtube/resources/lib/youtube_plugin/kodion/network/requests.py", line 151, in request
                                                       stack = format_stack()
                                                   
2024-11-27 14:38:12.063 T:1329  warning <general>: [plugin.video.youtube] Failed to retrieve video info
                                                   	Status:   ERROR
                                                   	Reason:   UNKNOWN
                                                   	video_id: |meoK1AGHKzA|
                                                   	Client:   |media_connect_frontend|
                                                   	Auth:     |True|
2024-11-27 14:38:12.063 T:1329    error <general>: [plugin.video.youtube] yt_play.play_video - Error
                                                   	Exception: YouTubeException('UNKNOWN')
                                                   	Stack trace (most recent call last):
                                                     File "/storage/.kodi/addons/plugin.video.youtube/resources/lib/plugin.py", line 16, in <module>
                                                       plugin_runner.run()
                                                     File "/storage/.kodi/addons/plugin.video.youtube/resources/lib/youtube_plugin/kodion/plugin_runner.py", line 67, in run
                                                       plugin.run(provider, context, focused=(current_uri == new_uri))
                                                     File "/storage/.kodi/addons/plugin.video.youtube/resources/lib/youtube_plugin/kodion/plugin/xbmc/xbmc_plugin.py", line 185, in run
                                                       result, options = provider.navigate(context)
                                                     File "/storage/.kodi/addons/plugin.video.youtube/resources/lib/youtube_plugin/kodion/abstract_provider.py", line 169, in navigate
                                                       result = handler(provider=self, context=context, re_match=re_match)
                                                     File "/storage/.kodi/addons/plugin.video.youtube/resources/lib/youtube_plugin/youtube/helper/yt_play.py", line 347, in process
                                                       media_item = _play_stream(provider, context)
                                                     File "/storage/.kodi/addons/plugin.video.youtube/resources/lib/youtube_plugin/youtube/helper/yt_play.py", line 89, in _play_stream
                                                       stack=''.join(format_stack())))
                                                   
2024-11-27 14:38:12.063 T:1329     info <general>: [plugin.video.youtube] Redirecting to: |plugin://plugin.video.youtube/?window_fallback=True&window_replace=True&window_return=False|
2024-11-27 14:38:12.067 T:1147    debug <general>: ------ Window Deinit (DialogBusy.xml) ------
2024-11-27 14:38:12.067 T:1334    debug <general>: Thread ScriptObs 140732199825152 terminating
2024-11-27 14:38:12.067 T:1147    error <general>: Playlist Player: skipping unplayable item: 0, path [plugin://plugin.video.youtube/play/?video_id=meoK1AGHKzA]
2024-11-27 14:38:12.067 T:1147    debug <general>: Playlist Player: no more playable items... aborting playback
2024-11-27 14:38:12.070 T:1335    debug <general>: Thread BackgroundLoader start, auto delete: false
2024-11-27 14:38:12.070 T:1147    debug <general>: [threads] name: 'BackgroundLoader' priority: '1'
2024-11-27 14:38:12.073 T:1335    debug <general>: Thread BackgroundLoader 140732208279296 terminating
2024-11-27 14:38:12.181 T:1181    debug <CAddonSettings[[email protected]]>: trying to load setting definitions from old format...
2024-11-27 14:38:12.182 T:1181    debug <CSettingsManager>: requested setting (cache_checksum) was not found.
2024-11-27 14:38:12.182 T:1181    debug <CAddonSettings[[email protected]]>: trying to load setting definitions from old format...
2024-11-27 14:38:12.182 T:1181    debug <CSettingsManager>: requested setting (cache_checksum) was not found.
2024-11-27 14:38:12.183 T:1181     info <general>: plugin.audio.spotify:spotty:run_spotty: Running spotty...
2024-11-27 14:38:12.184 T:1181     info <general>: plugin.audio.spotify:spotty:run_spotty: Spotty args: /storage/.kodi/addons/plugin.audio.spotify/resources/lib/deps/spotty/arm-linux/spotty-muslhf --cache /storage/.kodi/userdata/addon_data/plugin.audio.spotify/spotty-cache --ap-port 54443 --verbose --enable-audio-cache --name temp-spotty --get-token --client-id ********** --scope user-read-playback-state,user-read-currently-playing,user-modify-playback-state,playlist-read-private,playlist-read-collaborative,playlist-modify-public,playlist-modify-private,user-follow-modify,user-follow-read,user-library-read,user-library-modify,user-read-private,user-read-email,user-read-birthdate,user-top-read -u *******
2024-11-27 14:38:12.455 T:1181     info <general>: plugin.audio.spotify:spotty_auth:get_token: Spotty stdout: b'{"error":"Failed to create session or connect to servers."}\n'
2024-11-27 14:38:13.087 T:1147    debug <general>: CScriptRunner: running add-on script YouTube('plugin://plugin.video.youtube/kodion/route/home/', '-1', '?window_fallback=True&window_replace=True&window_return=False')
2024-11-27 14:38:13.087 T:1343    debug <general>: Thread LanguageInvoker start, auto delete: false
2024-11-27 14:38:13.087 T:1343    debug <general>: initializing python engine.
2024-11-27 14:38:13.087 T:1343    debug <general>: CPythonInvoker(17, /storage/.kodi/addons/plugin.video.youtube/resources/lib/plugin.py): start processing
2024-11-27 14:38:13.089 T:1329     info <general>: [plugin.video.youtube] Profiling stats:          12573 function calls (12411 primitive calls) in 1.175 seconds
                                                   
                                                      Ordered by: cumulative time, internal time
                                                      List reduced from 809 to 20 due to restriction <20>
                                                   
                                                      ncalls  tottime  percall  cumtime  percall filename:lineno(function)
                                                           1    0.000    0.000    1.175    1.175 xbmc_plugin.py:67(run)
                                                           1    0.000    0.000    1.000    1.000 xbmc_plugin.py:292(post_run)
                                                           1    0.000    0.000    1.000    1.000 xbmc_context.py:655(sleep)
                                                           1    0.000    0.000    1.000    1.000 methods.py:314(wait)
                                                           1    1.000    1.000    1.000    1.000 {method 'waitForAbort' of 'xbmc.Monitor' objects}
                                                           1    0.000    0.000    0.174    0.174 abstract_provider.py:158(navigate)
                                                           1    0.000    0.000    0.174    0.174 yt_play.py:278(process)
                                                           1    0.000    0.000    0.171    0.171 yt_play.py:40(_play_stream)
                                                           1    0.000    0.000    0.167    0.167 youtube.py:194(get_streams)
                                                           1    0.000    0.000    0.167    0.167 stream_info.py:1351(load_stream_info)
                                                           2    0.000    0.000    0.166    0.083 requests.py:99(request)
                                                           2    0.000    0.000    0.163    0.081 sessions.py:502(request)
                                                           2    0.000    0.000    0.155    0.078 sessions.py:673(send)
                                                           2    0.000    0.000    0.154    0.077 adapters.py:434(send)
                                                           2    0.000    0.000    0.152    0.076 connectionpool.py:595(urlopen)
                                                           2    0.000    0.000    0.151    0.076 connectionpool.py:380(_make_request)
                                                           2    0.000    0.000    0.091    0.046 connection.py:435(getresponse)
                                                           2    0.000    0.000    0.090    0.045 client.py:1351(getresponse)
                                                           2    0.000    0.000    0.090    0.045 client.py:318(begin)
                                                          45    0.000    0.000    0.089    0.002 {method 'readline' of '_io.BufferedReader' objects}

@sgrontflix
Copy link

Getting the same exact issue on version 7.0.9.2 installed from Kodi's Add-on repository. I tried updating to version 7.1.1.1 but it looks like it hasn't been uploaded yet?

@scindiver
Copy link

v7.0.9.2 running on two XBox Series X under Kodi 21.1. - One affected, the other not. Separate accounts on each. Log off / Log in did not resolve. v7.0.9.2 appears to be the official in XBox repo. Manually updating to v7.1.1.1 on the affected machine seems to have resolved.

@OllyFunkster
Copy link

Kodi 20 on Ubuntu 20.04, manually updated to 7.1.1.1 using zip from here, videos now play again. I didn't try logging out and back in again, either before or after updating.

@Dikowda
Copy link

Dikowda commented Nov 27, 2024

Same issue as shown in Kaizaaaa log #996 (comment). But I'm using:

  • Running v7.1.1.1+unofficial.1
  • Kodi: v21.1 (Kodi Omega)
  • Python: v3.11.9

Can play videos when logged out but not when logged in.

@gardebreak
Copy link

gardebreak commented Nov 27, 2024

Kodi 21 on LibreELEC 12.0.1. Installing 7.1.1.1 from zip works for me.

@Dikowda
Copy link

Dikowda commented Nov 27, 2024

Installing 7.1.1.1 from zip and running through setup wizard (including refreshing settings.xml at the end) appears to have worked.
Thanks for the suggestion @gardebreak

@Kaizaaaa
Copy link

I was sure that I ran the setup wizard after the update. I tried again anyways and reset the settings.xml either. Now video playback works for me again.

Thanks for looking into this.

@koboldskind
Copy link

That worked for me as well:

  • use version 7.1.1.1
  • Enable Setup Wizard
  • delete settings.xml (Maintenance page in the Configuration)
  • run YouTube and do the setup

Thanks for figuring that out!!!

MoojMidge added a commit to MoojMidge/plugin.video.youtube that referenced this issue Nov 28, 2024
- Workaround for issues with family/linked accounts
- Workaround for potential future restrictions on use of OAuth
MoojMidge added a commit to MoojMidge/plugin.video.youtube that referenced this issue Nov 28, 2024
- Workaround for issues with family/linked accounts
- Workaround for potential future restrictions on use of OAuth
MoojMidge added a commit to MoojMidge/plugin.video.youtube that referenced this issue Nov 28, 2024
- Workaround for issues with family/linked accounts
- Workaround for potential future restrictions on use of OAuth
MoojMidge added a commit to MoojMidge/plugin.video.youtube that referenced this issue Nov 28, 2024
- Workaround for issues with family/linked accounts
- Workaround for potential future restrictions on use of OAuth
@MoojMidge
Copy link
Collaborator

For those who are using v7.1.1.1, have run the Setup Wizard, logged out and back in, but are still having issues please try this test version (identified as v7.1.1.3):
https://github.com/MoojMidge/plugin.video.youtube/archive/refs/heads/v7.1.1.zip

MoojMidge added a commit to MoojMidge/plugin.video.youtube that referenced this issue Nov 28, 2024
- Workaround for issues with family/linked accounts
- Workaround for potential future restrictions on use of OAuth
@kuene
Copy link

kuene commented Nov 28, 2024

With Version: 7.0.9.2 and 7.1.1.1 i get the same error: "Request contains an invalid argument"
When I am not logged in the Videos play fine. I tried 2 different gmail accounts.

with @MoojMidge version 7.1.1.3 I get a new error.
See logs below:

Logs from V 7.1.1.3

2024-11-28 13:44:03.851 T:2972     info <general>: Loading skin file: MyVideoNav.xml, load type: KEEP_IN_MEMORY
2024-11-28 13:44:16.517 T:19058    info <general>: [plugin.video.youtube] Plugin: Running v7.1.1.3
                                                        Kodi:   v21.1 (Kodi Omega)
                                                        Python: v3.9.2
                                                        Path:   |/|
                                                        Params: |{}|
2024-11-28 13:44:16.539 T:19058   error <general>: [plugin.video.youtube] ResourceManager.get_channels - Own channel_id not found
                                                        Exception: TypeError("'NoneType' object is not subscriptable")
                                                        Channels:  {'kind': 'youtube#channelListResponse', 'etag': 'RuuXzTIr0OoDqI4S0RU6n4FqKEM', 'pageInfo': {'totalResults': 0, 'resultsPerPage': 5}}
2024-11-28 13:44:17.318 T:19058    info <general>: [plugin.video.youtube] Plugin: Running v7.1.1.3
                                                        Kodi:   v21.1 (Kodi Omega)
                                                        Python: v3.9.2
                                                        Path:   |/|
                                                        Params: |{}|
2024-11-28 13:44:17.328 T:19058   error <general>: [plugin.video.youtube] ResourceManager.get_channels - Own channel_id not found
                                                        Exception: TypeError("'NoneType' object is not subscriptable")
                                                        Channels:  {'kind': 'youtube#channelListResponse', 'etag': 'RuuXzTIr0OoDqI4S0RU6n4FqKEM', 'pageInfo': {'totalResults': 0, 'resultsPerPage': 5}}
2024-11-28 13:44:20.790 T:19058    info <general>: [plugin.video.youtube] Plugin: Running v7.1.1.3
                                                        Kodi:   v21.1 (Kodi Omega)
                                                        Python: v3.9.2
                                                        Path:   |/special/my_subscriptions/|
                                                        Params: |{'category_label': 'My Subscriptions'}|
2024-11-28 13:44:25.325 T:19058    info <general>: [plugin.video.youtube] Plugin: Running v7.1.1.3
                                                        Kodi:   v21.1 (Kodi Omega)
                                                        Python: v3.9.2
                                                        Path:   |/play/|
                                                        Params: |{'video_id': 'AqKeqTTeuec'}|
2024-11-28 13:44:25.465 T:19058   error <general>: [plugin.video.youtube] Wakeup |server_wakeup| in 100ms - failed

2024-11-28 13:44:25.742 T:19058   error <general>: [plugin.video.youtube] Player request failed
                                                        Request - Failed
                                                        Exception: YouTubeException('"error" in response JSON data')
                                                        Reason:    forbidden
                                                        Message:   The caller does not have permission
                                                        video_id:  |AqKeqTTeuec|
                                                        Client:    |media_connect_frontend|
                                                        Auth:      |False|
                                                        Response:   {'error': {'code': 403, 'message': 'The caller does not have permission', 'errors': [{'message': 'The caller does not have permission', 'domain': 'global', 'reason': 'forbidden'}], 'status': 'PERMISSION_DENIED'}}
                                                        Stack trace (most recent call last):
                                                     File "/home/osmc/.kodi/addons/plugin.video.youtube/resources/lib/plugin.py", line 16, in <module>
                                                       plugin_runner.run()
                                                     File "/home/osmc/.kodi/addons/plugin.video.youtube/resources/lib/youtube_plugin/kodion/plugin_runner.py", line 67, in run
                                                       plugin.run(provider, context, focused=(current_uri == new_uri))
                                                     File "/home/osmc/.kodi/addons/plugin.video.youtube/resources/lib/youtube_plugin/kodion/plugin/xbmc/xbmc_plugin.py", line 185, in run
                                                       result, options = provider.navigate(context)
                                                     File "/home/osmc/.kodi/addons/plugin.video.youtube/resources/lib/youtube_plugin/kodion/abstract_provider.py", line 169, in navigate
                                                       result = handler(provider=self, context=context, re_match=re_match)
                                                     File "/home/osmc/.kodi/addons/plugin.video.youtube/resources/lib/youtube_plugin/youtube/helper/yt_play.py", line 347, in process
                                                       media_item = _play_stream(provider, context)
                                                     File "/home/osmc/.kodi/addons/plugin.video.youtube/resources/lib/youtube_plugin/youtube/helper/yt_play.py", line 77, in _play_stream
                                                       streams = client.get_streams(
                                                     File "/home/osmc/.kodi/addons/plugin.video.youtube/resources/lib/youtube_plugin/youtube/client/youtube.py", line 200, in get_streams
                                                       return StreamInfo(
                                                     File "/home/osmc/.kodi/addons/plugin.video.youtube/resources/lib/youtube_plugin/youtube/helper/stream_info.py", line 1418, in load_stream_info
                                                       _result = self.request(
                                                     File "/home/osmc/.kodi/addons/plugin.video.youtube/resources/lib/youtube_plugin/kodion/network/requests.py", line 151, in request
                                                       stack = format_stack()
                                                   
2024-11-28 13:44:25.743 T:19058 warning <general>: [plugin.video.youtube] Failed to retrieve video info
                                                        Status:   ERROR
                                                        Reason:   UNKNOWN
                                                        video_id: |AqKeqTTeuec|
                                                        Client:   |media_connect_frontend|
                                                        Auth:     |False|
2024-11-28 13:44:26.173 T:2972     info <general>: VideoPlayer::OpenFile: plugin://plugin.video.youtube/play/?video_id=AqKeqTTeuec
2024-11-28 13:44:26.177 T:19076    info <general>: Creating InputStream
2024-11-28 13:44:26.178 T:19076   error <general>: IAddonInstanceHandler::CreateInstance: inputstream.adaptive returned bad status "Permanent failure" during instance creation
2024-11-28 13:44:26.178 T:19076   error <general>: CVideoPlayer::OpenInputStream - error opening [plugin://plugin.video.youtube/play/?video_id=AqKeqTTeuec]
2024-11-28 13:44:26.178 T:19076    info <general>: CVideoPlayer::OnExit()
2024-11-28 13:44:26.686 T:2972     info <general>: CVideoPlayer::CloseFile()
2024-11-28 13:44:26.686 T:2972     info <general>: VideoPlayer: waiting for threads to exit
2024-11-28 13:44:26.686 T:2972     info <general>: VideoPlayer: finished waiting
2024-11-28 13:44:26.790 T:18941   error <general>: EXCEPTION: Kodi is not playing any file

@MoojMidge
Copy link
Collaborator

@kuene - that is unrelated to this issue. If you have the same problem after restarting your device, updating InputStream.Adaptive and running the Setup Wizard, then post a full debug log in a new issue - there appears to be some significant problems with the way your device is working

@izumitelj
Copy link

@MoojMidge version 7.1.1.3 fixes this issue for me. 👏👏👏

@MoojMidge MoojMidge mentioned this issue Nov 28, 2024
@mgrunwald
Copy link

Sorry for the stupid question, but how can I log out and log in again? I was blind and didn't find a menu or whatever 🙈

@MoojMidge
Copy link
Collaborator

There are entries in the main menu of the addon to Sign In or Sign Out, but it is not necessary, was just for testing. If you are having issues please try the test version:
https://github.com/MoojMidge/plugin.video.youtube/archive/refs/heads/v7.1.1.zip

@mgrunwald
Copy link

That's what happens. I see no reaction on the screen (no video, no error message):

2024-11-28 17:52:31.347 T:665      info <general>: [plugin.video.youtube] Plugin: Running v7.1.1.3
                                                   	Kodi:   v21.1 (Kodi Omega)
                                                   	Python: v3.9.2
                                                   	Path:   |/play/|
                                                   	Params: |{'video_id': 'KEqGsda2uxk'}|
2024-11-28 17:52:31.574 T:665     error <general>: [plugin.video.youtube] Player request failed
                                                   	Request - Failed
                                                   	Exception: YouTubeException('"error" in response JSON data')
                                                   	Reason:    forbidden
                                                   	Message:   The caller does not have permission
                                                   	video_id:  |KEqGsda2uxk|
                                                   	Client:    |media_connect_frontend|
                                                   	Auth:      |False|
                                                   	Response:   {'error': {'code': 403, 'message': 'The caller does not have permission', 'errors': [{'message': 'The caller does not have permission', 'domain': 'global', 'reason': 'forbidden'}], 'status': 'PERMISSION_DENIED'}}
                                                   	Stack trace (most recent call last):
                                                     File "/home/osmc/.kodi/addons/plugin.video.youtube/resources/lib/plugin.py", line 16, in <module>
                                                       plugin_runner.run()
                                                     File "/home/osmc/.kodi/addons/plugin.video.youtube/resources/lib/youtube_plugin/kodion/plugin_runner.py", line 67, in run
                                                       plugin.run(provider, context, focused=(current_uri == new_uri))
                                                     File "/home/osmc/.kodi/addons/plugin.video.youtube/resources/lib/youtube_plugin/kodion/plugin/xbmc/xbmc_plugin.py", line 185, in run
                                                       result, options = provider.navigate(context)
                                                     File "/home/osmc/.kodi/addons/plugin.video.youtube/resources/lib/youtube_plugin/kodion/abstract_provider.py", line 169, in navigate
                                                       result = handler(provider=self, context=context, re_match=re_match)
                                                     File "/home/osmc/.kodi/addons/plugin.video.youtube/resources/lib/youtube_plugin/youtube/helper/yt_play.py", line 347, in process
                                                       media_item = _play_stream(provider, context)
                                                     File "/home/osmc/.kodi/addons/plugin.video.youtube/resources/lib/youtube_plugin/youtube/helper/yt_play.py", line 77, in _play_stream
                                                       streams = client.get_streams(
                                                     File "/home/osmc/.kodi/addons/plugin.video.youtube/resources/lib/youtube_plugin/youtube/client/youtube.py", line 200, in get_streams
                                                       return StreamInfo(
                                                     File "/home/osmc/.kodi/addons/plugin.video.youtube/resources/lib/youtube_plugin/youtube/helper/stream_info.py", line 1418, in load_stream_info
                                                       _result = self.request(
                                                     File "/home/osmc/.kodi/addons/plugin.video.youtube/resources/lib/youtube_plugin/kodion/network/requests.py", line 151, in request
                                                       stack = format_stack()
                                                   
2024-11-28 17:52:31.574 T:665   warning <general>: [plugin.video.youtube] Failed to retrieve video info
                                                   	Status:   ERROR
                                                   	Reason:   UNKNOWN
                                                   	video_id: |KEqGsda2uxk|
                                                   	Client:   |media_connect_frontend|
                                                   	Auth:     |False|
2024-11-28 17:52:31.671 T:531     error <general>: Playlist Player: skipping unplayable item: 0, path [plugin://plugin.video.youtube/play/?video_id=KEqGsda2uxk]
2024-11-28 17:52:31.671 T:531      info <general>: Loading skin file: DialogConfirm.xml, load type: KEEP_IN_MEMORY
2024-11-28 17:52:32.712 T:665      info <general>: [plugin.video.youtube] Plugin: Running v7.1.1.3
                                                   	Kodi:   v21.1 (Kodi Omega)
                                                   	Python: v3.9.2
                                                   	Path:   |/kodion/route/home/|
                                                   	Params: |{'window_fallback': True, 'window_replace': True, 'window_return': False}|

@MoojMidge
Copy link
Collaborator

MoojMidge commented Nov 28, 2024

Use Setup Wizard to configure the addon correctly.

v7.1.1.3 has now been released which contains these fixes
https://github.com/anxdpanic/plugin.video.youtube/releases/tag/v7.1.1.3

@mgrunwald
Copy link

I ran setup Wizzard, that's what happens now:

2024-11-28 17:59:01.165 T:550      info <general>: Skipped 2 duplicate messages..
2024-11-28 17:59:01.165 T:550      info <general>: CActiveAESink::OpenSink - initialize sink
2024-11-28 17:59:01.165 T:550      info <general>: CAESinkALSA::Initialize - Attempting to open device "default"
2024-11-28 17:59:01.174 T:550      info <general>: CAESinkALSA::Initialize - Opened device "default"
2024-11-28 17:59:01.175 T:550      info <general>: CAESinkALSA::InitializeHW - Your hardware does not support AE_FMT_FLOAT, trying other formats
2024-11-28 17:59:01.176 T:550      info <general>: CAESinkALSA::InitializeHW - Using data format AE_FMT_S24NE3
2024-11-28 17:59:01.401 T:767      info <general>: [plugin.video.youtube] Plugin: Running v7.1.1.3
                                                   	Kodi:   v21.1 (Kodi Omega)
                                                   	Python: v3.9.2
                                                   	Path:   |/play/|
                                                   	Params: |{'video_id': 'QoGmnKYBRDQ'}|
2024-11-28 17:59:01.937 T:531      info <general>: VideoPlayer::OpenFile: plugin://plugin.video.youtube/play/?video_id=QoGmnKYBRDQ
2024-11-28 17:59:01.939 T:791      info <general>: Creating InputStream
2024-11-28 17:59:01.941 T:791     error <general>: IAddonInstanceHandler::CreateInstance: inputstream.adaptive returned bad status "Permanent failure" during instance creation
2024-11-28 17:59:01.941 T:791     error <general>: CVideoPlayer::OpenInputStream - error opening [plugin://plugin.video.youtube/play/?video_id=QoGmnKYBRDQ]
2024-11-28 17:59:01.942 T:791      info <general>: CVideoPlayer::OnExit()
2024-11-28 17:59:02.001 T:662     error <general>: EXCEPTION: Kodi is not playing any file
2024-11-28 17:59:02.071 T:531      info <general>: CVideoPlayer::CloseFile()
2024-11-28 17:59:02.072 T:531      info <general>: VideoPlayer: waiting for threads to exit
2024-11-28 17:59:02.072 T:531      info <general>: VideoPlayer: finished waiting

I get a messagebox which basically says "general failure, look at the protocol".

@mgrunwald
Copy link

Ok, I restarted Kodi, now it works :) Thanks a lot!

@MoojMidge
Copy link
Collaborator

@kuene, @mgrunwald - that is an issue with InputStream.Adaptive which occurs after updating: xbmc/inputstream.adaptive#454

A restart is required.

MoojMidge added a commit to MoojMidge/plugin.video.youtube that referenced this issue Nov 28, 2024
- Workaround for issues with family/linked accounts
- Workaround for potential future restrictions on use of OAuth
@cmteuffel
Copy link

installing v7.1.1.3, deleting settings.xml and running the wizard solved this issue for me. Thanks for the effort.

@pejobo
Copy link

pejobo commented Dec 4, 2024

For me the update to v7.1.1.3 was enough, no need to delete settings.xml or running the setup wizard. I'm using my own Google API key, don't know if that makes a difference.

@MoojMidge MoojMidge mentioned this issue Dec 4, 2024
MoojMidge added a commit to MoojMidge/plugin.video.youtube that referenced this issue Dec 5, 2024
- Workaround for issues with family/linked accounts
- Workaround for potential future restrictions on use of OAuth
MoojMidge added a commit to MoojMidge/plugin.video.youtube that referenced this issue Dec 6, 2024
- Workaround for issues with family/linked accounts
- Workaround for potential future restrictions on use of OAuth
MoojMidge added a commit to MoojMidge/plugin.video.youtube that referenced this issue Dec 7, 2024
- Workaround for issues with family/linked accounts
- Workaround for potential future restrictions on use of OAuth
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests