フレームレートを指定する

setTimeout を使って、1フレームごとに requestAnimationFrame を実行してみる。
フレームレート: 現在の値 fps (約 ms/フレーム)
1フレーム毎に実行するdrawImage()の回数: 現在の値
次のフレームが開始されるまでに実際に掛かった時間: ms

JavaScriptコードのポイントとなる部分

var fps = 30;
function loop() {
  setTimeout(function() {
    requestAnimationFrame(loop);

    // ここで Canvasに描画する処理を実行する

  }, 1000 / fps); // フレーム毎に実行させる
}
loop();

メモ