YouTube is still one of the major points of centralization on the internet, so I’ve been brainstorming ways around the problem.

From the readme:


Torrent-Tube is a set of tools to help decentralize YouTube videos, by moving them to torrents, which can be shared by many people. It includes:

  • A Torrent-Tube search site which searches the Torrents-csv search engine to see if the given YouTube video already exists, and is being seeded.
    • It does this by extracting the YouTube [VIDEO_ID] from a link, which you can also do manually if you like (IE, the text after watch?v=...).
  • A script to download, and create torrent files from YouTube videos, with a uniform naming style and format, taken from TheFrenchGhosty’s YouTube-DL-Scripts.
  • You will need to upload these torrent files yourself to a service (details below), and seed them.

Torrent-Tube Search

In the future, it may be possible to create a browser plugin that checks a video link that you’re currently watching for existing torrents.

Create torrent script

Requirements

Instructions

Copy a YouTube video URL.

# Clone this repo
git clone https://github.com/dessalines/torrent-tube

# Run the script
./create_torrent.sh [YOUTUBE_URL]

The video will download, and is saved in the videos folder. The torrent file is saved in the torrents folder.

Add the torrent to your torrent app, such as qbittorrent.

  • turdas@suppo.fi
    link
    fedilink
    arrow-up
    14
    ·
    4 days ago

    I have no real feedback on your project specifically, but I’ve had this same concern of YouTube eventually probably going away or being totally enshittified and the videos on it becoming effectively lost, so I’ve been archiving a few of my favourite channels using ytdl-sub. It’s a script wrapper for yt-dlp that downloads the videos along with a bunch of metadata.

    Personally I’ve been adding them to my Jellyfin server for now under a separate category (ytdl-sub creates Jellyfin-friendly metadata). Some kind of community archive would of course be best, but there’s many difficulties with that. Most prominently the fact that YouTube isn’t dead or completely enshittified yet, so there’s no driving motivation for the effort. Copyright issues would be the second major problem.

    Creating an individual torrent for every video doesn’t seem like a great solution, because the typical channel has lots of videos, up to thousands. Just between the four channels I’ve archived I have about 2000 video files, which is getting in the realm of torrent clients starting to choke on that many torrents.

    Also these four channels add up to about 500 GB of data, which is why I pretty quickly started having second thoughts about archiving every channel I’m subscribed to. I mostly went with 1080p quality; settling for 720p would probably help a lot in the disk space department.

    • Dessalines@lemmy.mlOP
      link
      fedilink
      arrow-up
      11
      ·
      edit-2
      4 days ago

      https://github.com/jmbannon/ytdl-sub

      Nice, seems very similar to TheFrenchGhosty’s scripts that are being used here.

      Creating an individual torrent for every video doesn’t seem like a great solution, because the typical channel has lots of videos, up to thousands.

      It’s def a tradeoff, and you’re correct that we could potentially seed entire channels.

      But seeding single videos is IMO better for a few reasons:

      • Torrent clients won’t have to select a subset of files.
      • Its more future proof (ie you don’t have to make a new torrent after the channel releases a new video)
      • Searching for individual videos is easier, since the torrent name can contain the youtube video_id
      • Seeders won’t have to dedicate massive hd space to entire channels, especially since high quality videos nowadays can already be over 1GB. They just seed the specific videos they think are worth keeping.

      The main problem I foresee, is streamlining the process of creating and uploading torrents, so that people actually do it.

      And a browser plugin could potentially help.

      • turdas@suppo.fi
        link
        fedilink
        arrow-up
        3
        ·
        4 days ago

        Perhaps grouping by year would be a good compromise. The problem, of course, is what to do if you’re wanting to track channels that still actively upload. I’m not sure there’d really be an audience for that though – if the channel is still active, people can just go watch the videos on YouTube directly, no?

        Most torrent clients start having trouble at around 10k torrents, forcing use of multiple instances, and that will be fairly easy to hit by seeding entire channels worth of videos as individual torrents.

        I feel like most people think of YouTube in terms of creators they like rather than individual videos, and the way the site is structured makes it difficult to cleanly subdivide a creator you like into smaller parts than “all their videos”. Therefore if one archives something, more often than not they’ll probably archive an entire channel, so it’d be easy to end up seeding a ton of videos.

        The other option is that they archive random individual videos that mean a lot to them, but I feel like that approach is rather incompatible with a private tracker-style community archive to begin with. It’d be a bit like a music tracker where people just upload individual songs they like.

        For stuff like this I wish there was a better option than torrents. If only IPFS was actually practically useful…

        • Dessalines@lemmy.mlOP
          link
          fedilink
          arrow-up
          2
          ·
          3 days ago

          if the channel is still active, people can just go watch the videos on YouTube directly, no?

          That’s one of the points of a decentralizing project; to move people off of youtube, and get many people to help share content that youtube/google currently controls. Creating torrents of their current youtube videos is an intermediary step… the end goal is if things like this get enough traction, content creators would move entirely off youtube, and to things like mastodon or lemmy communities, and post magnet links of their videos.

          Therefore if one archives something, more often than not they’ll probably archive an entire channel, so it’d be easy to end up seeding a ton of videos.

          As stated above sometimes this could be 500GB for some channels, and most users don’t have the HD space for that. It’d be better for videos to be more granular, and try to get the watchers of videos to participate in the torrenting, not just archivers with a ton of extra HD space.

    • comrademiao@piefed.social
      link
      fedilink
      English
      arrow-up
      2
      ·
      4 days ago

      I’ve gone down to 360p for some of mine for better storage. If they weren’t visually important to begin with then that’s enough I think.