If your user has to watch a minimum length of video before they have the option to pause or stop the video, I can say that you are not going to be popular and will find that people will terminate the window and that leads to a high bounce rate.
If you want to know how many people watch at least a minute or more of the video, thats fine, all you need to have is video.currentTime which is in seconds, then you have the video.duration that is also in seconds.
If you are not displaying controls for the video and offering your own player controls instead then you don't need to worry about anything else like buffering issues, it sounds like you are making allot of work for something simple, I was assuming that you were data gathering and not forcing people in to watching a minimum length of video.
Theres a simple rule of the web, when you take away the will of the people, someone finds away to break your code, that was done with youtube and other video streaming sites, people wrote extensions and web pages that would strip the video streams out of those sites because they could.
So for all the work you are doing, you're better off giving people the control and choice to do what they want with the video playback and not force people in to something that is more than likely going to drive people away.
If you just gather data on how much video has been watched, you can use that data to help you improve the video content, if its broing content then people will rather switch off if you have given them no choice in the matter than sit through something. I am going to assume that this is going to be some sort of checking feature for an infomercial or advertorial or some marketing BS which will bore the asses off people, so really, do your self a favour and instead of forcing people into something they will most likely bail on, give people control and gather data.