EE can control access based on member groups, most directly by setting permissions on specific templates. These are set in the control panel under Design / Template Manager and then the Access link per template.
So, you could have templates for video1, video2, etc., and then set the Access per template set to specific groups.
If you have members who need access to multiple pages--e.g., as if they were in multiple groups, this is not possible with EE member groups. A user can be assigned to only one EE member group.
In that case--or, if you have a large number of members such that you'd need too large a number of groups, then you'd maybe use groups simply to have a "Members" group to distinguish between the public/guests and members. All of your members would be in that Members group.
But then you'd need to write custom code on your video page(s) to restrict access based on some data in each member's profile. You'd essentially be writing a custom member access manager, albeit it could pretty simple depending on how many different groups you have and how people are assigned to them.
There are many ways to do this--and lots of people do do this. I think using add-ons like either Solspace User or Profile:Edit would be helpful. There are other add-ons like this, too.
(I'm doing something like this now on a site, using Profile:Edit, which gives each user a regular channel entry. I then assign categories to those user entries that are used to restrict what content they see. I've used Solspace User in the past for something similar.)