Multimedia Computing by Geoff Elliott & Daniel Cunliffe