A simple method to achieve smooth camera movement.
Start by nesting several Nulls, each at it's parents center 0,0,0.
The camera goes at the bottom of the hierarchy.

Block out the general movement by creating the over all path from distinct
maneuvers,
working from the top down in the hierarchy.

Once you have the movement roughly blocked out, simply overlap the sequences, and set a simple "S" curve for each time curve.


Smooth....
This top view clearly shows when each track ends.
HTH
JeremyW