This blog is written as per the codekarle system design series.
FR:
Upload Videos
User's Homepage search
Play Videos
Support all devices
NFR:
No Buffering
Users session time(Low Latency, High availability, Adjust quality as per the bandwidth, Good recommendation engine)