Storing large videos on the Server

In my application the client is uploading relatively large videos, average is 500 MB. I have to encode the video in the backend to reduce the size, and I'm trying to use ffmpeg for that. However, ffmpeg needs around 10 minutes for each video, and I should be able to serve the video to the client instantly, or, at least in a few seconds after the upload is finished.

What would be the best practice in this context?