ball rotating while moving
I'm not sure but I don't think the ball is actually rotating physics-wise. Sure, it has a rotating marble texture, but I don't think rotational motion is being considered at all in the physics simulation (for good reason - it's very difficult to control a "real" ball with spin, if you've ever played table tennis for instance you'll know that)
the ball will be always moving straight depending on where the camera is looking it
Velocity is already independent of camera position, it's your game engine's job to ensure the camera doesn't somehow influence the ball's velocity - Bullet doesn't even know what a camera is.