-
-
Notifications
You must be signed in to change notification settings - Fork 3.1k
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
Feed order and subscriptions groups #2309
Conversation
We all love you 😍 |
Is it possible that you post an apk test to permit us to send you feedbacks? |
How compile this on android studio? I love your work |
Thanks! @justanidea Sure, here you go: org.schabi.newpipe.pr2309.apk.zip @Brimont The easiest way is checking out the branch that I'm using in this PR (this one at my fork). Then it should be straightforward as opening the project in Android Studio and hitting "Run". |
@mauriciocolli
So even if a lot of things could be done i want to remind you how amazing this work had already been, and that a lot of persons are already happy with it :) |
Welcome back! It is good to hear from you. I absolutely love these changes ❤️ |
Exception
Crash log
|
I have this with your apk, with normal apk i not have problem. Is my Phone? |
19b8ade
to
e050a9c
Compare
@Stypox Oops, fixed and added a test. @Brimont some classes were trying to use some changes in Java that apparently were not included in your specific ROM (sometimes it doesn't include the latest ones). I removed the use of these changes. Can you test this version? org.schabi.newpipe.pr2309-2.apk.zip
I think the user would lose the ability to remember their positioning in the list, because even a group that they didn't used often would be the first as soon as they accessed it. What I do think is missing is to let the user reorder the groups.
Agreed, changes for a future PR though.
I thought about doing that, but then the "Last Updated" in every feed would be probably wrong and items would be up-to-date differently, as subscriptions can be in multiple feeds and are updated individually. I don't know if it's worth removing it entirely or just accept that it would be misleading... We could also hide the items that were updated/inserted after the last update of the selected feed group, that way we could be more or less consistent thoughout the groups. Maybe?
The groups will be exported like anything else, as they are in the same database. |
@mauriciocolli thanks this apk work! |
Thank you for this PL that's what we were all waiting for! Concerning the watching state/progress of items, I think we should be able to mark a video as "watched" from the items list through a single button/menu, because since NewPipe does not use youtube API nor google services the only way that you can track watching state is by recording it within the app itself. However, NewPipe is not the only/main support for watching youtube videos so the tracking system won't be able to track all of them, so we should have a mean to solve that issue. Edit : spelling mistake |
@mauriciocolli many thanks for your work on this feature. The groups in your second apk are great for users who like to watch the "what's new" section of NewPipe but I miss something. I usually prefer to navigate channel by channel and watch videos, even when the videos are a little old (e.g. 4 months). If I use the group "what's new" feature and create a group for electronics channels, it will hide the old (but still useful) videos quite bellow of the more active channels. Could you create a new view (or whatever android calls this thing) to show a list of channels in every group?. Maybe a button at the left of the three points button at the top of the app which allows to change between the view of group "what's new" and the list of channels in the group. With it, you would have a feature for people who wants the "what's new" and people like me who usually prefers the list of channels. The best of both worlds. In any case, that's just an idea, I will be happy with whatever you decide. Also, I like ThatIsAPseudo's idea for the watched videos but that probably is better for a separate issue. |
What about an option, chosen on group creation, that specifies whether to show only the first video from the channels or to show all of them (thus putting old ones down in the list)? |
The problem is that I don't know how many non-watched videos I've on every channel. Even if you add an option to choose the number of new videos per channel, I would miss some videos. |
@juanfra684 I think your problem with non-watched videos can be fixed with #2288 |
every time i try to go back from some custom feed, the ui crashes, not sure if this is my custom os's fault (unoffical resurrection remix) edit: i had system animations disabled, if they'r enabled everything works normal Exception
Crash log
|
@mauriciocolli Works great! I don't have time to dig into the code now, but let me try to understand your question quickly:
I think a lower rate ist okay, espacially when we take a look at upcomming services like Peertube etc. which are mostly selfhosted. Maybe, it is possible to have a higher rate on "commercial" / "professionally hosted" servers like YouTube/SoundCloud and a lower on selfhosted. But that's not necessary, I'd say, we can keep the request rate low and when people complain, we can still change it. |
I got this crash using your latest apk after I turned the screen off: Exception
Crash log
|
This might be unrelated but is there any way posts by the YouTuber could be intermingled with the videos? That'd be feature parity with subscriptions in the actual app. |
I just noticed you introduced We definitely should address this problem before the next Weblate sync because people shouldn't translate twice seconds plural strings. The logical solution would be delete |
I realized the layout |
Massive thanks @mauriciocolli for your work on this, can't wait to see it released now. I have had a bounty on this for some time now and would be very pleased if you claimed it. |
@tmbgreaves Thanks! About the bounty: it seems like #739 was sort of replaced by #1448 and all the backers posted their bounties to the first issue, however, one (@earboxer) left his comment on the former, while two (you and @bendem) left their comments on the latter. It seems like you're fine with the results of this one, and by the message that @bendem left, he only refers to the first issue (and @earboxer only commented on that one). Did I misunderstood something, or the bounty claim would be valid in this case? |
This looks good, and I think I will be happy once the update gets on F-Droid. |
@mauriciocolli I think I moved my bounty from one issue to the other at some point, perhaps? In either case I think you can just 'claim bounty' on that issue which I would be very happy to authorise. I was already a regular NewPIpe user but the apks you have been posting up have been a massive improvement in usability, exactly what was needed to complete this app for me. Just waiting on it to arrive in FDroid now! |
I've a question But when I use fast mode, I still have duration. Then how do you gather it? |
If you have already opened the stream, its basic information was saved in the database. So when an item in the feed is missing a field, it tries to obtain it from db |
Sorry for not accepting the bounty release, I was waiting for the PR to hit FDroid to be able to test it. |
I just found it yeah. I was enable to import my subscriptions from the old version, but I could import it from youtube to test at least. This is great work really! |
@bendem: How did you try to export/import it? In Settings or in the Subscriptions tab at Home? Those are entirely different things. If the latter, that's strange as it should just work. If the first, I remember there being some issues with database imports and exports. Either way, what exactly doesn't work? Do you get the crash reporter? |
No worries, I found my way around, I just came up on the subscription screen and there was a button to import from youtube and a button to import from previous export, so I guessed the export option from the previous version was it. I used the import thing in the settings instead, worked fine. |
This is awesome thanks a lot. |
i finally finished taking some hours to read this. i love you all 😻 there is one suggestion which i think should probably be for another pr but idk what to do tbh. thank you a lot for this ❤️ |
Groupie
library for easier development of listsDemonstration
Future improvements (follow ups)
Use RSS feed for YouTube
Edit: Added in the latest updates.
One disadvantage that I found is that it doesn't return current live streams, but maybe that's not a huge problem?
The advantages though are:
I'll think about it a little more the next few days. Any suggestion/idea is welcome.
Loading Strategy Discussion
There's an issue if we just load everything concurrently: overload on the servers of the services. This can results in errors when doing requests and can put some stress on some services, which we may not want to do it.
I haven't decided what strategy to take here, maybe limit how many channel per second/time period, custom rates for each service, etc.
In the current state, a lower concurrent request rate is used. But in the end, we have to balance two things: services servers load and time to load everything.
Waiting for your opinions on this.
Related extractor PR TeamNewPipe/NewPipeExtractor#158
Closes #822, #739, #565, #1752, #1725, #1437, #1946, #1919
Related #1448