That's very much not what transcoding is for. You don't want transcoding so a client can render the video in a comfortable resolution. You need transcoding to save bandwidth. If you want the client to do transcoding, you must send them the full raw video file. Either end of the connection may not have enough free bandwidth for that. The client may not be able to teanscode depending on size and format.
You of course, can do this anyway. PeerTube allows you to completely disable transcoding. But again that means you're streaming the full resolution. Your client may not like this.
If realtime performance is your concern I think PeerTube allows you to pre-transcode to disk. If there is a transcoded copy matching the client request, the server streams that direct with no extra transcode.
To answer your question: shifting transcode onto the client won't improve performance and will greatly increase bandwidth requirements in exchange for less compute on the server. You almost certainly do not want this.
Yep. As OP said: I meant the user could transcode the various versions on their machine and then upload each to the server. Sorry about the wording; I can see that it's vague.
You of course, can do this anyway. PeerTube allows you to completely disable transcoding. But again that means you're streaming the full resolution. Your client may not like this.
If realtime performance is your concern I think PeerTube allows you to pre-transcode to disk. If there is a transcoded copy matching the client request, the server streams that direct with no extra transcode.
To answer your question: shifting transcode onto the client won't improve performance and will greatly increase bandwidth requirements in exchange for less compute on the server. You almost certainly do not want this.