polymorphicshade / NewPipe

A fork of NewPipe with SponsorBlock functionality.
GNU General Public License v3.0
3.22k stars 106 forks source link

Built-in Player Issues #30

Open polymorphicshade opened 3 years ago

polymorphicshade commented 3 years ago

As of release 0.20.9 w/ SponsorBlock, this app now comes with the addition of a built-in local playback feature with SponsorBlock support.

To use this feature, go to: Settings -> Extras -> Enable Local Player (alpha)

Please report any issues you have with the player here, as I'm sure there will be plenty.

If you would like to enable SponsorBlock segments for your already existing downloads, you must re-download them. This is because of the database updates I made to support a new column with SponsorBlock segment data.

Some planned additions for the built-in player:

barolo commented 3 years ago

It works! I need speed and silence skip controls though.
Is it going to be possible to use it for files not downloaded via New Pipe? [as in I don't care about SponsorBlock just want to have skip silence feature]
I'd like to have captions too.

polymorphicshade commented 3 years ago

@barolo it currently only plays files downloaded through NewPipe because the files shown in that view are based on their respective entries in the database. It's not really a file-browser more like a list of files NewPipe already knows about.

barolo commented 3 years ago

I know :) I was just asking if there's a plan to change, extend that. There's no need really because as I said previously AntennaPod gives me that functionality

B0pol commented 3 years ago

It would be amazing if the local player would have the same look and behaviour as "online" player, with brightness and volume swipe gestures…

polymorphicshade commented 3 years ago

@B0pol yup! The goal is to make the built-in local player match the normal player, but unfortunately it isn't an easy thing to do. For now I'm essentially re-building the player from scratch to figure out how "tightly-bound" the normal player is to the online functionality. Eventually I (or maybe someone smarter than me) will figure out how to isolate the normal player and it's features from the rest of NewPipe's infrastructure.

SameenAhnaf commented 3 years ago

@B0pol yup! The goal is to make the built-in local player match the normal player, but unfortunately it isn't an easy thing to do. For now I'm essentially re-building the player from scratch to figure out how "tightly-bound" the normal player is to the online functionality. Eventually I (or maybe someone smarter than me) will figure out how to isolate the normal player and it's features from the rest of NewPipe's infrastructure.

I don't know if it is possible to see timestamps and chapters within the downloaded videos. If not, there should be sn option to download all video information within app and make Newpipe a media player for other media files in the device as well.

Please remember that all timestamps aren't counted as chapters as all of them don't start from 0:00. Add ability to access all timestamps from chapters button.

And, yes, following related features should be included. I thought these changes should be brought at the same time. So, I included them in the same issue.

  1. Add notes for videos
  2. An option to Download videos with comments, captions, chapters and timestamps. A checkbox for all these options might appear right under the resolution checker
  3. A reload button to regularly update all video info. Video info includes comments, chapters & timestamps. A reload button for each downloaded playlist and all videos will be nice too.
  4. Just like feed update threshold, include a video info update threshold.
  5. Option to export and import each among settings, history, playlists, comments, notes, chapters & timestamps individually.
  6. Watch history should be shown within three tabs a. All, b. Online,.c. Offline
  7. Search captions from online sites like opensubtitles.org , yifysubtitles.com etc.
  8. Use as both audio and video player. Also, add seperate settings for them.
  9. Add popup and background button
  10. Noise reduction button: Some necessary videos come with huge noise. Add an option to solve it.
  11. Audio equaliser button
  12. Add an option to always use video orientation and full screen. (Both for online and offline videos)
  13. Add MX Player gestures for "Playback Speed" and "Zoom and Pan"
  14. Browse all local files
  15. Move, cut, copy files from one folder to another
  16. Add folder
  17. Use same layout for online and offline player
  18. Solve "Fit/Fill/Zoom" bug. SkipPipe can't remember this video info.
  19. Add a separate tab for "Downloaded playlists" in drawer.
  20. Add option to include local and downloaded media files into playlist. These playlists should match the same online playlist management.
multichoyce commented 3 years ago

Jesus

polymorphicshade commented 3 years ago

@SameenAhnaf thanks for the suggestions, though I can tell you for sure I do not plan on implementing items 1, 2, 4, 5, 6, 7, 10, 11, 14, 15, nor 16. If someone else wants to do those by all means go for it - submit a pull request and I will see how easy they can be to merge in.

For now, I'm just focusing on having the built-in local player match the abilities of the normal player (for clarity, I'm talking about the player itself, not things like comments, video info, etc).

JusticeBublitz commented 3 years ago

@polymorphicshade love the fact that you have implemented a built-in player to this fork and would like to suggest a couple of features that I think would be great.

  1. Enable background playing for downloaded videos. (Personally I download mainly podcasts and the ability to listen to them in my pocket with the screen off/ with sponsorblock would be awesome.)
  2. The ability to resume where you left off if you pause and exit the player, once again useful for podcasts and longer videos.
  3. Allow for headset controls to play/pause downloaded videos. (Useful for background play if listening to a video from your pocket.)

I didn't know if I should put this here or open a new request/issue but anyway, thanks for your amazing work Polymorphicshade!

polymorphicshade commented 3 years ago

@JustyB76 yep this is the right spot to post feedback about the built-in local player. Good suggestions there. Once I figure out how to use NewPipe's notification service with this particular player, implementing those suggestions should be easy to do.

ghost commented 1 year ago

https://github.com/polymorphicshade/NewPipe/issues/247

R0M4N0F5K7 commented 1 year ago

Love the built-in player and the fact that it continues playing with the screen off. This feature should definitely be promoted/mentioned in the readme.

Personally I miss two things: 1) Most videos I download are fairly long and I plan to listen to them when I am outside. It would be great if NewPipe would remember the position when you close it so you can just jump back in when you open it the next time. (Especially because it doesn't continue playing but closes when I hit the back button - in videos longer than 1h it's painfull to find the exact position again). 2) This is related to the player but maybe worth it's own feature request as it is not really a player feature: I'd love to add "Downloads" to my main page tabs. This feature has been requested for years upstream, but I can imagine that it is not considered that usefull there as it only opens the video files via external players anyway. https://github.com/TeamNewPipe/NewPipe/issues/2565 Your build-in player makes this feature even more desirable for people like me who use NewPipe actually mainly to watch downloaded content (I would set downloads as my start page right away).

lepras commented 1 year ago

Can i just export the video without segments? I suppose you can just add ffmpeg binary and run the cut command with the relevent segments.

If adding ffmpeg seems like an overkill can you just output ffmpeg command in a textbox?

I will just run it in termux.

heartlog commented 1 year ago

@polymorphicshade thanks 👍 for this great apk... I have been using this apk for long time... It never disappoint at all !!

The additionally important features i think local player should have

Well there are some important features i want to point out... 1) Add Pop-up and background in case... 2) Resume where you left off if you pause and exit the player, just like MX PLAYER starting interface after selecting(open) a video...

Well I think these are only features the player should really really have...