I've been experimenting a bit with this, and I have a few ideas, a couple of which I've implemented. (Shh! Don't let people know!
)
Your first port of call is "DisablePlayerControls" and then "DisableMouse" (OBSE function) that way the player can't fiddle with the camera during your scene. Then you can set the player's ActorAlpha to 0 (transparent) and move them around with setpos. (to have an invisible camera) To get them to look where you want (I think) you can use "SetAngle" on the Z and X axes, or you can use "SetMouseSpeed" on the X and Y axes (OBSE functions - I've tested this before and it does work). If you want the player in the scene, I would say the best way is to create a full actor copy, which you'd have much more control over than the player character. Do your stuff with the NPC's ai and there you have it.
It would be a relatively complicated thing to script (1st hand experience saying that by the way) so if this is one of your first goes scripting, I suggest trying some simpler things first. Get the hang of timers and ai scripting before adding in the visual things too much. Good luck