There is nothing wrong with your code, you are just passing the ball to Qt for the decoding and playback of the movie.
You are either using a build of Qt that doesn't have hardware acceleration enabled, or your system doesn't have the proper hardware for Qt to accelerate decoding and playback.