Greetings !
My experience on a similar project
We as a team made a full stack website for a dance studio to conduct online classes which had all the features you have mentioned stating you need them in your website. We made a site where students, instructors can register and login, students can attend pre-recorded classes or live classes hosted by the instructors, it will have a course list similar to Udemy where students can filter based on categories and buy courses online. Furthermore, we also created an admin panel where the admin will have complete access over everything on the website such as creating, updating or deleting courses, remove or add instructors and students, change the banners of the site, place ads about new courses etc... students also had the feature to know their progress of their course and their course basket. We made a Vimeo dedicated video player which was used to stream live or pre-recorded videos on the site. Apart from this there were lot of animations on the site and few more features.
Based on my experiences working with a very similar site recently, I believe I will be the best choice for your project.
I would love to discuss more about the project.
Looking forward to work with you !