Hi Roy,
1, For long time exposure, I suggest you use snap mode.
2, For exposure duration, in you example, for 15s, delay 5s, then call getVideoData,
You's better wait 15s, the wait time should be longer than the exposure time to ensure the data can be received.
Usually, for 15s exposure, it needs 15.2 to 17s, exposure time need 15s, and transfer time need 0.2 to 2s.
3, GetVideoData's iWaitms.
It is a timeout time. We will wait iWaitms, during this time, if we receive the data, we will return, if not, we will return a timeour error.
4, ASIGetVideoDataEx.
It is a great idea, however, it is too hard to program. 1st, As we know, sometimes, the camera has a frame rate of hundreds of frames, it is hard to return every frame's parameters. 2nd, different camera have different control types, it is hard to return all of the types and the value in one funciton.
Thanks
Chad