動画の基礎知識

一般的な映像のサイズ (解像度)
SD640x480
HD1280x720
Full HD1920x1080
4K UHD3840x2160
8K UHD7680x4320

地上波デジタル放送の場合は、1440x1080 (4:3) の映像を、1920x1080 (16:9) として、横に引き伸ばして表示しています。
BS デジタル放送の場合は、1920x1080 です。

映像の解像度を表す時に、1080i や 720p などと表示されている場合がありますが、この数字は、映像の高さのサイズです。
後ろの i や p はそれぞれ、「インターレース」と「プログレッシブ」の意味になっています。
フレームレート
フレームレートは、1秒間に何枚のフレーム (コマ) があるかを表します。
単位は fps (frames per second) です。

日本の映像であれば、主に以下の値が使われます。

23.976 fps (24000/1001)映画やアニメなど
29.97 fps (30000/1001)日本のアナログ/デジタル放送 (インターレース時) など
59.94 fps (60000/1001)日本のデジタル放送 (プログレッシブ時) など

上記のように、実際の数値は小数点付きの中途半端な値になるので、フレームレートを指定する時は、"24000/1001" などのように、"分子/分母" の形で指定する場合があります。
アスペクト比
映像の横と縦のサイズの比率を表すものです。

FAR (Frame Aspect Ratio)映像自体の比率
PAR (Pixel Aspect Ratio)
SAR (Sample Aspect Ratio)
1つのピクセルの表示比率
DAR (Display Aspect Ratio)表示時の比率

例えば、PC 用の 640x480 px の動画なら、FAR = 4:3、PAR = 1:1、DAR = 4:3 となります。
動画自体の比率は、640x480 の幅と高さから、2つの数値の最大公約数を割ると、4 x 3 になるので、これが比率になります。
PAR は、1px をそのまま 1px として表示するので、1:1 です。
DAR は、640x480 をそのまま 640x480 として表示するので、FAR と同じになります。
地上波デジタルの場合
地上波デジタルは、1440x1080 の映像を 1920x1080 に引き伸ばして表示するため、以下のようになります。

FAR: 1440x1080 (4:3)
PAR: 4:3
DAR: 1920x1080 (16:9)

横に引き伸ばすため、映像のデータにおける 1px は、表示する時に 4:3 の比率になります。
DVD の場合
DVD 720x480 (FAR=3:2) の映像を DAR=16:9 にする場合、PAR=32:27 となります。
DVD 720x480 (FAR=3:2) の映像を DAR=4:3 にする場合、PAR=8:9 となります。
PAR の計算方法
FAR と DAR の比率 (またはサイズ) がわかっていれば、PAR は計算で求めることができます。

「DAR(X) * FAR(Y) : DAR(Y) * FAR(X)」を求めた後、2つの数値の最大公約数で割ると、PAR になります。

FAR 4:3, DAR 16:9 => 16 x 3 : 9 x 4 => 48:36 => 48/12:36/12 => 4:3
FAR 3:2, DAR 16:9 => 16 x 2 : 9 x 3 => 32:27
FAR 3:2, DAR 4:3 => 4 x 2 : 3 x 3 = 8:9
色のフォーマット
映像で使用される画像のフォーマットは、主に YUV です。
Y は輝度 (明るさ)、U は青の色差 (Cb)、V は赤の色差 (Cr) であり、この3つの要素を使って、1つの色を表現します。

通常は 1px ごとにそれぞれ YUV の3つの値がありますが、U と V の値を横または縦方向に間引くことで、データを減らすことができます。
色差の値は、ある程度間引いたとしても、見た目には違いがわかりにくいので、映像で使われるイメージデータをなるべく減らすために、UV が間引かれている場合が多いです。

YUV444ピクセルごとに YUV がある
YUV422水平方向に UV の数を1/2に間引く。
業務用ビデオで使われている。
YUV411水平方向に UV の数を1/4に間引く。
DV フォーマットで使われている。
YUV420水平と垂直方向に UV の数を1/2に間引く。
デジタル放送、VHS、BD など、映像では主にこれが使われる。

エンコード時は、基本的に YUV420 で出力することになります。
注意点
YUV420 の場合、1つの UV 値は 2x2 px 分の色として使われるので、幅・高さは2で割り切れる必要があります。

また、上下左右の黒い部分を切り取るような処理を行いたい場合、YUV420 フォーマットのままだと、奇数座標の位置から切り取ったり、幅・高さが奇数サイズになる形で切り取ることができないので、注意してください。

このような処理をしたい場合は、先に YUV444 に変換してから行うと良いでしょう。
YUV444 では各ピクセルごとに YUV の値があるので、奇数サイズでも問題ありませんし、奇数位置で切り取ることもできます。
ただし、最後にフレームを出力する時は、YUV420 に変換してください。
エンコード後の動画サイズについて
動画でよく使われる解像度は、360p, 480p, 720p, 1080p などですが、自分用に保存する動画であれば、容量との兼ね合いも含めて、好きなサイズにして構いません。

ただし、サイズはアスペクト比の倍数であることと、YUV420 で出力する場合は、幅と高さが両方2で割り切れる必要があります。

また、H.264 などの MPEG では、16x16 px を1つのブロックとして処理するので、幅と高さが共に 16 で割り切れると、一番効率よくエンコードが出来ます。
16 で割り切れない場合は、8または4で割り切れる値を使うと良いでしょう。
Python スクリプト
指定したアスペクト比の倍数で、かつ幅と高さが2で割り切れて、16・8・4 のそれぞれで割り切れるサイズを表示する Python3 スクリプトを作ったので、サイズを計算したい場合は使ってください。

#!/usr/bin/python3

aspect = "16:9"
#aspect = "4:3"
height_min = 320
height_max = 1080

#-----

class Calc:
    def __init__(self,hmin,hmax,aspect):
        s = aspect.partition(":")
        self.ax = int(s[0])
        self.ay = int(s[2])
        self.hmin = hmin
        self.hmax = hmax
        self.done = []

    def put(self,div):
        print("--- {0:d} ---".format(div))
        for h in range(self.hmin, self.hmax+1):
            if (h & 1) or h % self.ay or h % div: continue
            
            w = h // self.ay * self.ax
            if (w & 1) or w % self.ax or w % div: continue

            flag = True
            for iw,ih in self.done:
                if iw == w and ih == h:
                    flag = False
                    break

            if flag:
                self.done.append([w,h])
                print("{0:d}x{1:d}".format(w,h))

    def run(self):
        print("{0:d}:{1:d}".format(self.ax, self.ay))
        self.put(16)
        self.put(8)
        self.put(4)

o = Calc(height_min, height_max, aspect)
o.run()
480p で 16:9 の場合の注意点
16:9 で高さが 480 の動画の場合、幅は 480/9*16 = 853.33... となるため、キリの良い数字になりません。
また、853 は奇数であるため、+1 して 854 が使われることになりますが、この場合アスペクト比は正確に 16:9 とならないので、注意が必要です。

場合によっては、幅を 16 の倍数に合わせるために、幅を少し減らして 848x480 としている動画もあります。
この場合もアスペクト比が崩れるので、注意が必要です (視聴する分にはさほど気になりませんが)。

また、左右に黒い部分を付けたりして幅を調整している場合もあるので、16:9 で 480p の動画をエンコードしたり読み込んだりする場合は、幅のサイズに気を付けてください。