anxdpanic / plugin.video.youtube

Watch your favorite YouTube content on Kodi
https://ytaddon.panicked.xyz/forum
682 stars 112 forks source link

Setup Wizard does not always open (languageinvokerthread appears to hang) #920

Open scrampker opened 1 week ago

scrampker commented 1 week ago

Context

Please provide any relevant information about your setup


Expected Behavior

Expecting the oauth error to be fixed, and app to start properly. Previously the app would give oauth error.


Current Behavior

The app refuses to run, with generic error, but no oauth mention.


Steps to Reproduce

Please provide detailed steps for reproducing the issue.

  1. Install repo version 7.0.9.2 and dependencies.
  2. Install 7.1.0 version from linked thread above by copying zip over SMB share and using addon browser to install.
  3. Confirm new version of app.
  4. Run -- get error.

Log

Please include a complete debug log.


Additional Information

Can you retest https://github.com/MoojMidge/plugin.video.youtube/archive/refs/heads/master.zip

I think it should be fixed but no opportunity to test it myself.

` 2024-10-02 18:58:04.867 T:2957 info : CActiveAESink::OpenSink - initialize sink 2024-10-02 18:58:04.868 T:2957 info : CAESinkALSA::Initialize - Requested layout FL, FR, FC, LFE, BL, BR, SL, SR 2024-10-02 18:58:04.868 T:2957 info : CAESinkALSA::Initialize - set digital codec 0 2024-10-02 18:58:04.868 T:2957 info : CAESinkALSA::Initialize - Attempting to open device "default" 2024-10-02 18:58:04.890 T:2957 info : CAESinkALSA::Initialize - Opened device "default" 2024-10-02 18:58:04.891 T:2957 info : CAESinkALSA::InitializeHW - Your hardware does not support AE_FMT_FLOAT, trying other formats 2024-10-02 18:58:04.891 T:2957 info : CAESinkALSA::InitializeHW - Using data format AE_FMT_S24NE4 2024-10-02 18:58:04.931 T:2957 info : CAESinkALSA::Initialize - speaker layout 19 2024-10-02 18:58:16.999 T:6109 error : EXCEPTION Thrown (PythonToCppException) : -->Python callback/script returned the following error<--

This looks a lot like when a required dependency is not installed, or a bad call/syntax is used. Any thoughts? It's been a real eye-opener buying this device and trying to get things to work, despite using XMBC back in the day on my modded XB. So far I'm 0 for 2 on Plex and YouTube using the 'official' add-ons to make this OSMC box compete even slightly with my Shield Pro.

scrampker commented 1 week ago

I just pulled the latest master version of 7.1.0 and the formatting issue is fixed, but I'm back to the oauth issue.

"error" in response JSON data Request response: {'error': 'invalid_client', 'error_description': 'The OAuth client was not found.', 'code': 401} 2024-10-02 19:26:44.989 T:6690 error <general>: [plugin.video.youtube] LoginException: {'error': 'invalid_client', 'error_description': 'The OAuth client was not found.', 'code': 401}

MoojMidge commented 1 week ago

Log snippets are not useful.

The issue identified in #910 only effects the beta and test versions referenced in that issue.

Can't tell without a full log but if you are getting that error in v7.0.9.2 and the official release (not beta or test versions) of v7.1.0, then you have not created your OAuth credentials correctly.

Refer to #439 for details and some instructions that some other users have contributed.

scrampker commented 1 week ago

Thank you for the response. I was able to get the proper master version working. Several compounding issues. One of them being that during one of the attempts, I fat-fingered one of the keys/id on my BT keyboard. The API config web page would never work for me. Something is odd there that you can't let it bind to 0.0.0.0, and once I explicitly updated it to my actual IP, it worked. Funky, but works now.

Much appreciated.

MoojMidge commented 1 week ago

The API config web page would never work for me. Something is odd there that you can't let it bind to 0.0.0.0, and once I explicitly updated it to my actual IP, it worked. Funky, but works now.

Was there any errors in the log when this didn't work? When binding to 0.0.0.0 will still need to access the web page using the local IP address, can't actually use 0.0.0.0 in your browser.

Glad you got it sorted anyway

scrampker commented 1 week ago

I was watching the logs in real-time, with and without debug enabled, and I got nothing. It was odd. I tried on two separate Vero V units with the same results. I was convinced that the little web server was just busted, hence the BT keyboard shenanigans. So glad I figured that out. I'll be more than happy to do a bit more testing/log collection on the other unit that I haven't fixed yet.

MoojMidge commented 6 days ago

Seems to work ok for me.

If the server is running, there should be some log messages similar to the following when debug logging is enabled and you are trying to access the API config page

debug <general>: [plugin.video.youtube] HTTPServer: Connection from |127.0.0.1| Local range: |True|
debug <general>: [plugin.video.youtube] HTTPServer: GET |/youtube/api|
scrampker commented 6 days ago

Okay I'll see what I can dig up. In the meantime something is driving me nuts. Almost every time I click the plugin from programs, or favourites, it opens straight into settings. No amount of searching here or in general has helped. I have to use the menu button -> Information -> scroll to open. Not fun because that locks me into using the dinky little remote instead of CEC. Ever seen something like that before?

MoojMidge commented 6 days ago

Almost every time I click the plugin from programs, or favourites, it opens straight into settings.

Kodi addons have various extension points that they can use. This particular addon has several, including a program extension point that by default will open the addon settings.

If you want to open the plugin extension point, which has all the actual plugin content, then you should open the plugin from the Video Addons node in the Kodi library, not from the Program addons node.

dtteufel commented 4 days ago

7.1.0 seems to run fine for me on OSMC Vero 5 - providing I DO NOT run the setup option. I'll try to get a log for you.

scrampker commented 3 days ago

7.1.0 seems to run fine for me on OSMC Vero 5 - providing I DO NOT run the setup option. I'll try to get a log for you.

Yep, it definitely runs on my Vero 5. The only issues I have is that about 30% of videos have audio skip out every 2-3 seconds. 100% of videos skip audio/video about 2 seconds in, but it's not recurring. I also have a few issues if I let it run through the guided setup as well. Crashes out and I can resume some of it.

I assume there's some codec that needs to be disabled to maintain full compatibility re: audio dropouts. Though from what I can find online, the Vero V should support them all.

MoojMidge commented 3 days ago

I also have a few issues if I let it run through the guided setup as well. Crashes out and I can resume some of it.

providing I DO NOT run the setup option.

Sounds like the same issue, but I can't do anything without a log.

Trying to get a v7.1.0.1 release pushed to the official Kodi addon repository shortly, so if either of you can get a log of this then I can try to get a fix for this included as well.

The only issues I have is that about 30% of videos have audio skip out every 2-3 seconds

This shouldn't happen, but again will need a debug log.

100% of videos skip audio/video about 2 seconds in, but it's not recurring.

This is likely just Kodi selecting the correct framerate because the framerate identified by YouTube is incorrect.

Won't be able to get rid of this, but you can try changing the following settings to see if it minimises the occurrence for the types of videos you play:

Though from what I can find online, the Vero V should support them all.

It should play pretty much everything on Youtube smoothly.

dtteufel commented 3 days ago

2 x Log files attached

  1. full debug log!
  2. extracted portion of log showing point at which YT Plug-in crashes when calling the setup option. kodi.log extract from log.txt
MoojMidge commented 3 days ago

Thanks - that is due to an incorrect merge in the unofficial version following a tidy up in the official version.

Easily fixed but probably not the same issue then.

scrampker commented 2 days ago

I updated the refresh rate settings, and it's probably too soon to tell, but the early-on skip for A/V seems to be gone or at least way better. Also, of course just my luck, I'm not finding any videos that continuously skip. It's a bit hard to jump back through my history to find the clips. In fact, my history only has a single video in it for some reason.

As I'm writing this, I finally found a video that has this issue. Seems to happen to many from this creator. 4K VP9 content. Attaching the debug log.

Last but not least, I tried the API configuration page again.

kodi.log

MoojMidge commented 2 days ago

It's a bit hard to jump back through my history to find the clips. In fact, my history only has a single video in it for some reason.

This is likely due to a bug in v7.0.9.2 that was fixed in v7.1.0

  • It has a 3 second black out of video and audio in the first 5-10 seconds, then it has audio dropouts every 3 seconds continuously.

There is a lot going on in your log. Your settings appear to indicate that you have an 8 channel speaker setup. Is this actually the case?

Can you get a debug log where you are only playing the video that skips continuously?

  • The very first question "Configure settings?" I click yes, and it just falls back to the videos page, (not even inside the video addons folder)

Does this happen regularly? Or just on this occasion? Is this what you mean by the Setup Wizard crashing?

  • Went back into advanced settings, and chose the listen IP from the menu as 0.0.0.0. Which btw has a bug where I drop out of the settings menu. If I do this from within the plugin by using the side-bar, it drops back to the side-bar, and if I did this in the past using the Programs entry point, it falls out completely back to the Programs selection menu.

That is not a bug. The listen IP selection is a separate dialog. The settings dialog needs to be closed otherwise it won't get updated with the new selection.

  • Check in my browser at http://192.168.187.8:50152/youtube/api again and no dice. Page not found. I see no errors on the debug log in realtime while I hit refresh. "2024-10-07 14:08:01.628 T:20189 debug : Thread JobWorker 3539988736 terminating (autodelete)" is the closest thing, but it's not actually directly-responsive to me hitting refresh. Probably a coincidence, but it did occur after changing to 0.0.0.0.

Maybe this needs to be made clearer, but listening on 0.0.0.0 is actually serving on 127.0.0.1. Had to do this because of some previously reported issues with network interfaces on some systems not being available to bind to. Not sure if it is still a problem.

scrampker commented 2 days ago

It's a bit hard to jump back through my history to find the clips. In fact, my history only has a single video in it for some reason.

This is likely due to a bug in v7.0.9.2 that was fixed in v7.1.0

Makes sense.

  • It has a 3 second black out of video and audio in the first 5-10 seconds, then it has audio dropouts every 3 seconds continuously.

There is a lot going on in your log. Your settings appear to indicate that you have an 8 channel speaker setup. Is this actually the case?

It's actually a 5.1.2 (Dolby Atmos w/ 2 up-firing,) setup, which is confusing how to actually configure in the settings. It's pretty happy up or down-mixing, however.

Can you get a debug log where you are only playing the video that skips continuously?

  • The very first question "Configure settings?" I click yes, and it just falls back to the videos page, (not even inside the video addons folder)

Does this happen regularly? Or just on this occasion? Is this what you mean by the Setup Wizard crashing?

I mean that as soon as I clicked 'yes' the screen refreshes and I'm no longer in the settings menu at all. It's as though it has submitted my yes/no selection, then fallen out. This does not appear to happen every single time, no.

  • Went back into advanced settings, and chose the listen IP from the menu as 0.0.0.0. Which btw has a bug where I drop out of the settings menu. If I do this from within the plugin by using the side-bar, it drops back to the side-bar, and if I did this in the past using the Programs entry point, it falls out completely back to the Programs selection menu.

That is not a bug. The listen IP selection is a separate dialog. The settings dialog needs to be closed otherwise it won't get updated with the new selection.

Gotcha. A bit unexpected, but it is what it is I suppose.

  • Check in my browser at http://192.168.187.8:50152/youtube/api again and no dice. Page not found. I see no errors on the debug log in realtime while I hit refresh. "2024-10-07 14:08:01.628 T:20189 debug : Thread JobWorker 3539988736 terminating (autodelete)" is the closest thing, but it's not actually directly-responsive to me hitting refresh. Probably a coincidence, but it did occur after changing to 0.0.0.0.

Maybe this needs to be made clearer, but listening on 0.0.0.0 is actually serving on 127.0.0.1. Had to do this because of some previously reported issues with network interfaces on some systems not being available to bind to. Not sure if it is still a problem.

Perhaps the default setting should be to bind to the actual v4 address then? Just shooting from the hip.

I've attached a new log with just the attempt to play the video that skips audio.

kodi.log

scrampker commented 2 days ago

FYI, just tried switching my Vero 5 to 5.1 and the audio still skips.

MoojMidge commented 2 days ago

This issue is a bit all over the place.

I have split things up into separate issues to keep track of things.

Lets keep this issue specific to the Setup Wizard not opening.

I mean that as soon as I clicked 'yes' the screen refreshes and I'm no longer in the settings menu at all. It's as though it has submitted my yes/no selection, then fallen out. This does not appear to happen every single time, no.

It's strange, the Python interpreter appears to be unable to finish running because there is a confirmation dialog open, but is being asked to terminate so that the language invoker thread can be reused, presumably to run the Setup Wizard.

Can't think of what would cause this. Does your system feel slow or otherwise unresponsive to user input by any chance?

Can you see this still happens in v7.1.0 or v7.1.0.1?