thomas

joined 1 year ago
[–] thomas@lemmy.douwes.co.uk 6 points 1 year ago

If my fingers prune I'm going to die or something

[–] thomas@lemmy.douwes.co.uk 3 points 1 year ago (1 children)

? This post is a month old now

[–] thomas@lemmy.douwes.co.uk 1 points 1 year ago* (last edited 1 year ago)

I have done some testing and I found a few reasons I'm having issues with webtorrent:

  • The only reason they where working at all is because they were downloading from the HTTP URL in the torrent file, P2P was not working at all.

  • To download the webtorrent from the blender instance I need to have the video watched in my browser to peer with the webtorrent client, the instance peers don't work on non-peertube webtorrent clients.

  • The reason instant.io was broken is my adblocker was blocking the tracker.

  • ~~The tracker in my peertube instance is broken.~~

EDIT:
I was a bit wrong here, there are two different formats in peertube: webtorrent and HLS. I was getting confused why the video on my instance (HLS) and the one on the blender one (webtorrent) was behaving differently with webtorrent clients. They are completely different formats so that makes sense now.

[–] thomas@lemmy.douwes.co.uk 1 points 1 year ago (2 children)

Webtorrent seems to have some issues with peer discovery. I've tried the instant.io site they have linked on webtorrent.io and I can't get it to download or share anything, the desktop client managed to download a torrent from my peertube instance over normal BitTorrent but I can't share it over webtorrent. I downloaded a video from my peertube instance using btorrent.xyz over webtorrent but I can't seed new files because the peers don't find each other. when I use a webtorrent with a tracker (like peertube) it works fine but how were sites like instant.io supposed to discover peers without trackers? I don't think DHT exists for webtorrent yet.

You can manually seed videos on instances using redundancy but I was thinking automatic redundancy for watched videos might be a good idea, I guess you can do automatic redundancy for entire instances but that would take up a lot of storage space.

One of the nice thing with BitTorrent is the high reliability so I assumed that was what peertube was trying to do, I guess the idea is not to provide data redundancy but to split load instead?

[–] thomas@lemmy.douwes.co.uk 1 points 1 year ago (4 children)

why? if 5 instances are seeding the video, clients should be able to download from all 5 instances and spread the bandwidth usage right?

[–] thomas@lemmy.douwes.co.uk 1 points 1 year ago (6 children)

Why not also use the instance to re-seed? it could keep seeding after the visitor closed the video.

[–] thomas@lemmy.douwes.co.uk 3 points 1 year ago (8 children)

Would it not make more sense if your instance downloaded and redistributed the torrent? then you could keep seeding after the tab closed. it also wouldn't leak your IP then.
What about peer discovery? I opened that webtorrent website in two browsers and they didn't peer, is that demo real?

89
submitted 1 year ago* (last edited 1 year ago) by thomas@lemmy.douwes.co.uk to c/fediverse@lemmy.ml
 

Can someone help me with how peertube P2P works? I can understand how ActivityPub is used for all the "social" parts but I'm a bit confused about the actual video player.

Redundancy:
I have my own instance and I made a redundancy of a video from the blender instance. if I watch the video on my instance I see 2 peers, my instance and the blender one. I can seen both in Firefox dev tools.
If I watch the same video on the blender instance I see 7 peers, the blender instance, mine, and others. why are these extra peers not showing on my instance? do I need to do something? If I watch the video on one of these other instances mine does show up in the their peers list.

I also made a video from framatube redundant but my instance doesn't appear as a peer on framatube.

Client P2P:
If I watch a video does my browser share It over P2P? if so what is the point of this? it seems to lose the video as soon as I leave the page so this functionality seems a bit useless to me.

EDIT: Answered in comments.

BitTorrent:
If I download a video I get the option of a BitTorrent torrent. If I seed this torrent can it be leeched by web clients? I tried and It doesn't show up in the peer list. What's the point of running a full BitTorrent tracker if it doesn't work with the main P2P system?

EDIT: BitTorrent is incompatible with webtorrent that peertube uses. Peertube also uses HLS instead of webtorrent and behaves a bit different (you can't seed it with a webtorrent client).

Peer discovery:
As I said in 1 and 2 how does the player actually find peers? Is there something like DHT or a tracker built in to peertube? if it's an internal tracker how does the tracker find peers?

EDIT: It uses a tracker build in to peertube.

Thanks for any help.

[–] thomas@lemmy.douwes.co.uk 1 points 1 year ago

Why does The Register get paid? /s

[–] thomas@lemmy.douwes.co.uk 1 points 1 year ago* (last edited 1 year ago)

oh wow that's strange. I cannot imagine what they must have done in the nginx config to do that. I guess there isn't anything you can do until lemmy.ml fixes their IPv6 then. I just checked my logs and lemmy.ml isn't federating with my instance anymore. Thats very bad! Also explains the lack of content i've been seeing.
EDIT: Ok nevermind, lemmy.ml is federating with me. I just connect to it over IPv6

[–] thomas@lemmy.douwes.co.uk 0 points 1 year ago (2 children)

ahh, I think this is because lemmy.ml is down all the time from the load right now. if you unsubscribe and resubscribe when lemmy.ml is back it might fix it.

[–] thomas@lemmy.douwes.co.uk 0 points 1 year ago* (last edited 1 year ago) (5 children)

If you know how to use greasemonkey there is a script to make lemmy look more like old.reddit here Personally, it fixed a lot of the UI issues for me.
What do you mean by 3? you shouldn't need authorisation to join a federated community.

[–] thomas@lemmy.douwes.co.uk 3 points 1 year ago

The file you downloaded is a compressed JSON file, it's not something you can really just look at. But it contains all the data needed to build a nice UI around.
I don't know what OS you are on but on linux you can run zstd -d -c file.zst | jq . and it will print everything in the file. It's not really readable though. Also it doesn't have any of the media content, only the text

view more: next ›