データ圧縮
動画圧縮では、各フレームの静止画の圧縮と時系列の圧縮技法(動きベクトル、フレーム間予測、動き補償など)を組み合わせて行う。通常動画データには同期した音声も付属しているため、動画圧縮のコーデックは音声圧縮用コーデックを統合してパッケージ化されていることが多い。
動画圧縮アルゴリズムのほとんどが非可逆圧縮である。圧縮前の動画はあまりにも多大なデータとなり、ストリーミングに際しても巨大な帯域幅を必要とする。可逆な動画用コーデックの圧縮性能は平均で3倍程度だが、非可逆なMPEG-4の圧縮性能は20倍から200倍である。非可逆圧縮では、画質、圧縮・伸長のコスト、要求されるシステム性能といったトレードオフが考慮される。圧縮率が高すぎるとブロックノイズなどの圧縮アーティファクトが生じることがある。
動画圧縮では一般に四角い範囲の隣接するピクセル群をグループとして扱い、これをマクロブロックと呼ぶ。このブロックを次のフレームの同じ位置のブロックと比較し、差分のみをデータとして送る。そのため、動きが激しい動画では差分が大きくなり、より多くのデータを符号化しなければならなくなる。したがって固定ビットレートでは、爆発シーン、炎のシーン、動物の群れ、視点(カメラ)の平行移動などで画質が低下することがあり、可変ビットレートではデータ転送量が増加する。