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

failed to load feed #485

Closed
istovits opened this issue Nov 10, 2024 · 8 comments
Closed

failed to load feed #485

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

Comments

@istovits
Copy link

videos in on the home screen load and play ok,but now
bookmarks get nothing but failed to load feed and API error 400 "request contains an invalid argument" for the past several days.
is this game over?

@iBicha
Copy link
Owner

iBicha commented Nov 10, 2024

No, it is not game over.
You're describing an issue that already has been fixed.
Since the fix has been merged two days ago, you need to make sure you're using an Invidious instance that's updated on or after Nov 8th (e.g. if you're hosting your own instance, you need to update)

@iBicha iBicha added the bug Something isn't working label Nov 10, 2024
@iBicha
Copy link
Owner

iBicha commented Nov 11, 2024

Closing, if you are referring to a different issue, we can reopen

@iBicha iBicha closed this as completed Nov 11, 2024
@istovits
Copy link
Author

all is well now, I did change instances last week but that failed.
thanks for doing this cause using youtube direct sucks

@xa4hf8
Copy link

xa4hf8 commented Nov 12, 2024

Just some additional observations:

  1. I initially assumed that selecting Playlet for the Backend eliminates the need for an Invidious server. The U.I. does not communicate this clearly, and it may confuse some users. It is also not immediately obvious that the Github release number indicates the library version (not the Roku app version).

  2. None of the available instances would pass all of the tests here — but the default instance started working again after I manually entered some (unreachable) instances, selected Never for proxy, switched back to the default instance, and restarted the app. I now realize that some of those actions may have been irrelevant in this context, but the average user might not, and it could be helpful to display a notification on the loading screen when the Playlet library is updated.

  3. When changing Invidious instances, bookmarks & feeds will not refresh until Playlet is restarted, and this is not clearly communicated in the U.I. It also appears that thumbnails are not cached, so it takes a long time to re-load everything.

  4. When the selected Invidious instance is not working properly, the error message is repeated for every bookmarked channel. I therefore recommend that repeat warnings for the same error in the Bookmarks category should be suppressed because it is very difficult to change the settings with new alerts appearing constantly.

@istovits
Copy link
Author

istovits commented Nov 12, 2024

one minor issue is when a youtube channel is deleted the app keeps looking for that channel and there is a delay until it gives up. because its deleted the icon or tile does not appear so you can delete it. is there another way to edit the channels to stop this?

@iBicha
Copy link
Owner

iBicha commented Nov 13, 2024

Just some additional observations:

Thanks for the feedback!

  1. I initially assumed that selecting Playlet for the Backend eliminates the need for an Invidious server. The U.I. does not communicate this clearly, and it may confuse some users. It is also not immediately obvious that the Github release number indicates the library version (not the Roku app version).

For this one I made sure to do two things, the backend is under playback settings, and that it says The backend used for fetching video data. Maybe it can use some clarification. Both items are now on the roadmap #6

  1. None of the available instances would pass all of the tests here — but the default instance started working again after I manually entered some (unreachable) instances, selected Never for proxy, switched back to the default instance, and restarted the app. I now realize that some of those actions may have been irrelevant in this context, but the average user might not, and it could be helpful to display a notification on the loading screen when the Playlet library is updated.

The Invidious "landscape" is constantly changing: instances break, new ones are added, some instances do not support proxying, some no API access, and some with no CORS, and so on. Now most instances can't play videos. I will do my best to communicate things, but for the most part this is because so many changes happened recently.

  1. When changing Invidious instances, bookmarks & feeds will not refresh until Playlet is restarted, and this is not clearly communicated in the U.I. It also appears that thumbnails are not cached, so it takes a long time to re-load everything.

This was mostly part of the design - as there should be no need to refresh when changing the instance, because it was assumed to be the same feed (except for the popular feed, which is instance specific). The right way to refresh is hold the OK button and hit refresh.
"How would people know to hold OK?", well the UI had a self discovery flow, you first discover the side menu and find the bookmarks page. The bookmarks page tells you how to add a bookmark. From there, you'd discover the context menu, which contains the refresh button. It's a process of organic discovery (not perfect though).
For the thumbnails, Roku devices are low powered, so caching system is not that great, it can't keep much in memory (and gpu memory) so it needs to refresh frequently.

  1. When the selected Invidious instance is not working properly, the error message is repeated for every bookmarked channel. I therefore recommend that repeat warnings for the same error in the Bookmarks category should be suppressed because it is very difficult to change the settings with new alerts appearing constantly.

This is one is tricky as well - I can attempt to suppress some errors, but at the added risk of hiding errors by mistake. The errors go through the dialog on screen, and as well as developer logs. The assumption here is that errors rarely happen, and that when they do, we'd want as much information as possible, so I'd want to try to avoid deduplicating errors. But because of recent instabilities, we're seeing higher than usual number of issues.

I know some of my answers feel like rubber stamp response. It doesn't mean there's nothing to be done. Please create an issue for separate things that you consider important, and add both the issue at hand and what the right solution should be so we can track it. Thanks

one minor issue is when a youtube channel is deleted the app keeps looking for that channel and there is a delay until it gives up. because its deleted the icon or tile does not appear so you can delete it. is there another way to edit the channels to stop this?

This issue was reported before for both playlists and channels #421
I unfortunately only fixed the issue with playlists. Please create a separate issue with channels, I will look into it.

@xa4hf8
Copy link

xa4hf8 commented Nov 14, 2024

For the thumbnails, Roku devices are low powered, so caching system is not that great, it can't keep much in memory (and gpu memory) so it needs to refresh frequently.

The OS recently alerted me that the internal storage is full, so I purchased an SD card to install more apps. Is it possible for Roku apps to specifically designate this external storage as cache, similar to the way it works on Android ?

I know some of my answers feel like rubber stamp response.

No problem, its not urgent, I just wanted to illustrate the issue and solicit ideas.

@iBicha
Copy link
Owner

iBicha commented Nov 14, 2024

The OS recently alerted me that the internal storage is full, so I purchased an SD card to install more apps. Is it possible for Roku apps to specifically designate this external storage as cache, similar to the way it works on Android ?

Playlet uses Roku's cache system (see tmp and cachefs in File System), which is backed by RAM. Cache gets periodically purged when it gets full.

Is it possible for Roku apps to specifically designate this external storage as cache, similar to the way it works on Android ?

Possible, yes. But no out of the box support, cache management needs to be implemented from scratch.

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