popcorn-api icon indicating copy to clipboard operation
popcorn-api copied to clipboard

Look within whole season torrents for individual episodes

Open NickStrupat opened this issue 9 years ago • 4 comments

There are a lot of shows which don't have healthy torrents for each episode, but have at least one healthy torrent for each whole season. The show providers could be modified to search for common "whole season" torrent naming schemes. This should greatly increase the number of available shows, mostly those older than a year or two.

Examples

  • Some Show - Seasons 1 Complete
  • Show X - season one [complete]

The show providers would need to retrieve the torrent metadata (torrent file is more direct, but obviously possible with magnet links), then try to match the episodes with the files in the torrent. Episode file names almost always match [Ss]\d\d[Ee]\d\d or \d\dx\d\d or similar scheme.

NickStrupat avatar May 04 '16 02:05 NickStrupat

It looks like the episode objects just have a torrent property containing a magnet link, with the engine assuming the largest file in the metadata as the episode of the show. My proposed change would require adding an optional filename property to the episode objects, throught the stack, to track the individual episode files within a torrent which contains a whole season/series.

The popcorn-desktop project and other front-ends would need to be changed as well to understand the new feature.

NickStrupat avatar May 04 '16 05:05 NickStrupat

It is an interesting idea which could be incorporated into the api. But I am not qualified to say if it is possible on the client side (popcorn-desktop), and if it is possible how big the impact would be.

ChrisAlderson avatar May 04 '16 12:05 ChrisAlderson

Thanks for your reply.

Having the new filename property be optional would require minimal change on the client side. The client would just have an extra conditional block to check if filename property exists on the episode object, then stream that file instead of the current logic (again, only if the filename property exists.

I'll check out the client code (popcorn-desktop) a bit closer to be sure. What kind of coordination do you folks usually need to make changes across two projects?

NickStrupat avatar May 04 '16 20:05 NickStrupat

Hey Nick,

Did you manage to do it?

hayzamjs avatar Jul 17 '17 13:07 hayzamjs