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

Playback stopped working ("The caller does not have permission") #986

Closed
malversoft opened this issue Nov 19, 2024 · 10 comments
Closed

Playback stopped working ("The caller does not have permission") #986

malversoft opened this issue Nov 19, 2024 · 10 comments
Labels
bug Something isn't working

Comments

@malversoft
Copy link

malversoft commented Nov 19, 2024

With InputStream.Adaptive option disabled, videos playback just stopped working today. Listings work, everything else works, except any video playback.

With InputStream.Adaptive option enabled, videos playback works. But there are good reasons to not use it (*).

  • Add-on Version: 7.1.1.1 (official)
  • Kodi Version: 21.0.0
  • Kodi GUI Language: es_ES
  • Operating System: Windows 8.1
  • Operating System Language: es_ES

Also tested with plugin version 7.1.0.1 (official), with the same result.


To reproduce:

  1. Disable use of InputStream.Adaptive.
  2. Select any video on any listing.

Expected behavior: Video plays.
Current behavior: The playback fails silently. In some cases an error dialog arises with no information, just pointing to check the log.


Log of a playback attempt.

I think the key part is here:

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:  |WKFtmCcRD00|
                                                   	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'}}

After seeing the log, I tried to play with disabling and enabling the "Support for alternate player" option. No success, the result is unchanged.


(*) There are good reasons to not use InputSream.Adaptive with the Youtube plugin:

  • It has troubles with subtitles enabling with hotkey/remote (Subtitles only sporadically work #634).
  • It changes automatically to translated audio stream. The experience is horrible, most of times the Youtube translated stream is completely silent or it is an AI voice. No option in InputStream.Adaptive to just let the original audio stream, forces you to select it manually during playback.
@malversoft malversoft added the bug Something isn't working label Nov 19, 2024
@aizelauna
Copy link

aizelauna commented Nov 19, 2024

I have the same issue with the same error.

I was using the version 7.0.9.2 which is the official one from kodi's add-on repository.

I installed the latest version from github, same issue:

2024-11-19 19:40:36.202 T:1675     info <general>: [plugin.video.youtube] Plugin: Running v7.1.1.1
                                                   	Kodi:   v21.1 (Kodi Omega)
                                                   	Python: v3.11.9
                                                   	Path:   |/play/|
                                                   	Params: |{'video_id': 'F1w_Lqul0H8'}|
2024-11-19 19:40:36.524 T:1675    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:  |F1w_Lqul0H8|
                                                   	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'}}

On my side, the InputStream.Adaptive option is set to auto.

I also checked my API key with console.cloud.google.com, everything seems fine from the console point of view.
No error is logged. The Kodi Youtube Addon is enabled. Everything seems fine.

@MoojMidge
Copy link
Collaborator

With InputStream.Adaptive option disabled, videos playback just stopped working today. Listings work, everything else works, except any video playback.

That is because you have disabled the only means to play the streams that are available. The streams that can be played without InputStream.Adaptive aren't coming back.

On my side, the InputStream.Adaptive option is set to auto.

Maybe, but that is not what your log snippet indicates. Run the Setup Wizard and if the problem persists post a full debug log in a new issue.

@MoojMidge MoojMidge closed this as not planned Won't fix, can't repro, duplicate, stale Nov 19, 2024
@aizelauna
Copy link

Thanks so much for the feedback!
Effectively, I did look at the kodi's general InputStream.Adaptive setting instead of the plugin.
Once Adaptive enabled in the Youtube extension, video streaming has come back, it plays smoothly.

@MoojMidge
Copy link
Collaborator

Glad you got it working

@malversoft
Copy link
Author

malversoft commented Nov 19, 2024

The streams that can be played without InputStream.Adaptive aren't coming back.

Excuse me, I do not understand. Do you mean with this plugin videos cannot be played without InputStream.Adaptive anymore?

I sincerely do not understand that move. Currently with InputStream.Adaptive audio is not working (#989), subtitles are not working (#634), and it has horrible side effects like automatically switching to the audio stream in the user locale language (that usually is AI-generated crap), with no option to default at least to the original audio.

That makes the playback experience simply terrible, more than words can transmit. Every time I open a video with InputStream.Adaptive, audio and subtitles are not working at all. Every video playback forces me to open the audio menu and select an audio stream from a pretty big list, if I want to hear something. Then open subtitles menu and change subtitles enabled state twice, for them to work. And finally go back to the video start because you have lost half minute in configuring streams. Every time, for every video! Even worse, those options fail again when the playback is restarted from the beginning.

I did not have InputStream.Adaptive disabled for no reason. It has noticeable unsolved bugs that make the Youtube playback experience a true pain. Probably you will not notice it a lot if your Kodi locale is english (because the original audio uses to be the english option, so then you default to the original audio). But it is a real mess when InputStream.Adaptive automatically chooses the streams to play. Not only because it chooses the wrong/unwanted ones (with no option at all to change this behavior), but specially because it does not play them at all, neither audio or subtitles, and you have to select them manually for the whole thing to work.

Would it be somehow possible that the non-ISA mode is preserved until those noticeable-impact bugs are avoidable in some way? The disable/enable InputStream.Adaptive option is still there. And playback without ISA was working until today, no plugin update was involved.

@MoojMidge
Copy link
Collaborator

There is no option, the streams are no longer accessible. You can use InputStream.Adaptive or be limited to 360p or nothing.

But it is a real mess when InputStream.Adaptive automatically chooses the streams to play. Not only because it chooses the wrong/unwanted ones (with no option at all to change this behavior)

InputStream.Adaptive does not do this. Your Kodi settings control this. Have already made some changes that allow additional flexibility for this as well, that will be included in the next beta:

  • Media default will use the language configured in the addon (not currently working)
  • Original will use the original language (should already work)
  • User interface will use the Kodi language (not currently working)
  • Any other language selected will be used if selected (should already work)

but specially because it does not play them at all, neither audio or subtitles, and you have to select them manually for the whole thing to work

I can't replicate the issues you have reported which means there is something specific to your installation that is not working correctly.

I have opened an issue for you regarding the audio: #989

If you can provide a debug log of the problem then it can be looked into. Please continue the conversation regarding the audio issues in #989

@malversoft
Copy link
Author

malversoft commented Nov 20, 2024

There is no option, the streams are no longer accessible. You can use InputStream.Adaptive or be limited to 360p or nothing.

Believe me when I say I prefer 360p to the onerous streams gambling I have to do at this moment for each and every playback.

Have already made some changes that allow additional flexibility for this as well, that will be included in the next beta:

  • Original will use the original language (should already work)

I can only applaud that, and wish to have that beta soon. Most Youtube translated streams are translated and talked by AI, and they simply suck in every sense one can imagine. Currently it is a nightmare not being able to stop the plugin from defaulting automatically to a translated stream.

@MoojMidge
Copy link
Collaborator

Please continue the discussion regarding the audio in #989

As I mentioned the option to use the original language already exists within Kodi and if it is not working for you then need a log to understand why.

Same with the audio not working at all. Need to see a log to see what is happening.

@malversoft
Copy link
Author

I thought #989 was only regarding the audio not playing, as you put exactly that in the title.

the option to use the original language already exists within Kodi

I think the point is being missed here.

I do not want EVERYTHING in Kodi in its original language. I like movies and other contents dubbed or subtitled in my language.

Only Youtube translations suck, because they are AI-automated. It is a lack that only affects Youtube.

That is why I applaud your initiative of giving more flexibility to those options specifically in the Youtube plugin. I really want to put my hands on that plugin beta you announce.

@MoojMidge
Copy link
Collaborator

Well discussion about the audio language settings are more related to #989 than the issue raised here. Lets try to keep things the related discussions in one place.

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

3 participants