'Video streaming with php. Why is the response slow?

I have a big problem. I have a video streamer site. The site has public and private videos, private videos can be seen after purchase.

Here you can see the directory structure:

    /public_html
    |__/vendor
    |__/src
    |__/public
    |__/product
       |__/sample-video
          |__/video.mp4

Well, as you can see the videos are located outside the public folder. The goal is to make them inaccessible directly.

Here is the twig:

<video id="myVideo">
   <source src="/products/12?video=10&cache={{ random(50, 10000) }}" type="video/webm" />
   <source src="/products/12?video=10&cache={{ random(50, 10000) }}" type="video/mp4" />
</video>

The video controller: https://pastebin.com/sne1mSHH

And the video stream logic: https://pastebin.com/2Sxd7Nqq

Here's the problem:

I'm going to the site. You switch between pages. Perfectly good. I go to a page with a video still good and after I start the video, the page is not good.. The page just loads and does nothing. I can't switch between pages anymore. I have to close the incognito mode and start a new session.

Until now I thought that the session lock was the problem, but I close the write session.

I tried opening the video in a new tab. Also the error is until the video stream is finished, the page does not handle the request.

So while the video is playing, while I can't send a new request. What else can I attach to make the error more transparent? Help pls!



Sources

This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.

Source: Stack Overflow

Solution Source