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

Sponsorblocks applied to downloads #117

Open
6 tasks done
augmentedagent opened this issue Jul 14, 2024 · 10 comments
Open
6 tasks done

Sponsorblocks applied to downloads #117

augmentedagent opened this issue Jul 14, 2024 · 10 comments
Labels
✨ feature request Something new 👍 planned Officially planned for a future release

Comments

@augmentedagent
Copy link

Checklist

  • I made sure that there are no existing issues - open or closed - which I could contribute my information to.
  • I have read the FAQ and my problem isn't listed.
  • I'm aware that this is a request for Tubular itself and that requests for adding a new service need to be made in vanilla NewPipeExtractor.
  • I have taken the time to fill in all the required details. I understand that the feature request will be dismissed otherwise.
  • This issue contains only one feature request.
  • I have read and understood the vanilla NewPipe contribution guidelines.

Feature description

Apply sponsorblocks to downloaded content.

Why do you want this feature?

Currently, when downloading content (specifically audio only), the content is downloaded and saved without applying sponsorblocks.

Why ist the feature relevant to this fork?

This fork implements the sponsorblock functionality.

Additional information

No response

@HairyMilkshakes
Copy link

Is that even possible? Unless you're talking about playing downloaded videos through Tubular?

@augmentedagent
Copy link
Author

No not proposing playing downloaded content through Tubular. I don't know how sponsorblock is implemented in Tubular, but it is able to be done through yt-dlp - the content is downloaded, then sponsorblock timecodes are applied and the resulting file is saved sans the blocked bits. Knowing yt-dlp, this is probably done by running through ffmpeg with the cuts from sponsorblock, but orchestrated by yt-dlp.

I was suggesting that Tubular might be able to do the same thing at the end of the download action.

@HairyMilkshakes
Copy link

Interesting, never knew that. That would be really good.

@qgustavor
Copy link

I should add one crucial information: that's really useful to download music without non-music segments. There were times I preferred downloading music over yt-dlp over Tubular only because it supports Sponsorblock.

@polymorphicshade polymorphicshade added 👍 planned Officially planned for a future release ✨ feature request Something new labels Jul 15, 2024
@polymorphicshade
Copy link
Owner

polymorphicshade commented Jul 15, 2024

In a version of NPxSB, I had an experimental feature of having an offline video player that worked with SponsorBlock.

It was a hack and didn't work very well... I have yet to implement something like this in Tubular because It think the core implementation should be in NewPipe (see: TeamNewPipe/NewPipe#10542).

Nonetheless, I really like the idea of incorporating yt-dlp in Tubular. There are several offline video players on android already, so just adding yt-dlp in Tubular would bridge the gap nicely I think.

@augmentedagent
Copy link
Author

There are several offline video players on android already, so just adding yt-dlp in Tubular would bridge the gap nicely I think.

Yes, and in my use case it's mainly for audio files for which there are also numerous players. Typically I just use the audio player within my file browser since it supports m4a nicely.

@canadiannomad
Copy link

I listen to podcasts that are downloaded.. This would be nice for that as well.

@nucspl
Copy link

nucspl commented Jul 16, 2024

If it's of any help, yt-dlp does have an in-built function that omits including SponsorBlock segments from the downloaded file itself. However, I don't think it's customisable or is able to read user-made segments. I think what could be done instead is download the pieces that aren't SponsorBlock segments — with respect to user-made segments via Tubular — using yt-dlp, then stitch them together via Ffmpeg. I don't know if Ffmpeg works on Android, though.

Seeing this issue is a little funny to me, actually. A few days ago, I was thinking of issuing a feature request to replace the NewPipe downloader with yt-dlp outright, and this issue was one of the things I cited in a draft — the others pertained to the ability to choose specific stream codecs.

@joelpeapen
Copy link

There's a good YouTube downloader app called YTDLnis using yt-dlp that incorporates sponsor block

@rambalachandran
Copy link

I also recommend having a look at seal for inspiration on integrating yt-dlp for Android

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
✨ feature request Something new 👍 planned Officially planned for a future release
Projects
None yet
Development

No branches or pull requests

8 participants