La resolución de frecuencia depende de la relación entre la longitud de la FFT y la tasa de muestreo de la señal de entrada.
Si recolectamos 8192 muestras para la FFT, entonces tendremos:
$$\frac{8192\ \text{muestras}}{2} = 4096\ \,\text{bins de FFT}$$
Si nuestra tasa de muestreo es de 10 kHz, entonces el teorema de muestreo de Nyquist-Shannon dice que nuestra señal puede contener contenido de frecuencia de hasta 5 kHz. Entonces, nuestra resolución de bin de frecuencia es:
$$\frac{5\ \text{kHz}}{4096\ \,\text{bins de FFT}} \simeq \frac{1.22\ \text{Hz}}{\text{bin}}$$
Esta puede ser la forma más sencilla de explicarlo conceptualmente pero simplificado: tu resolución de bin es simplemente \$\frac{f_{samp}}{N}\$, donde \$f_{samp}\$ es la tasa de muestreo de la señal de entrada y \$N\$ es el número de puntos de FFT utilizados (longitud de muestra).
Podemos ver que para obtener bins de FFT más pequeños podemos correr una FFT más larga (es decir, tomar más muestras a la misma tasa antes de ejecutar la FFT) o disminuir nuestra tasa de muestreo.
La Trampa:
Siempre hay un compromiso entre la resolución temporal y la resolución de frecuencia.
En el ejemplo anterior, necesitamos recolectar 8192 muestras antes de poder ejecutar la FFT, lo cual toma 0.82 segundos al muestrear a 10 kHz.
Si intentáramos obtener bins de FFT más pequeños ejecutando una FFT más larga, tomaría aún más tiempo recolectar las muestras necesarias.
Eso puede estar bien, o puede no estarlo. El punto importante es que, a una tasa de muestreo fija, aumentar la resolución de frecuencia disminuye la resolución temporal. Es decir, cuanto más precisa sea la medición en el dominio de la frecuencia, menos precisa puede ser en el dominio del tiempo. Básicamente, pierdes toda la información temporal dentro de la longitud de la FFT.
En este ejemplo, si una señal de 1999 Hz comienza y termina en la primera mitad de la FFT de 8192 muestras y una señal de 2002 Hz suena en la segunda mitad de la ventana, veríamos ambas, pero parecería que ocurrieron al mismo tiempo.
También debes considerar el tiempo de procesamiento. Una FFT de 8192 puntos requiere cierta potencia de procesamiento decente. Una forma de reducir esta necesidad es reducir la tasa de muestreo, que es la segunda forma de aumentar la resolución de frecuencia.
En tu ejemplo, si reduces tu tasa de muestreo a algo como 4096 Hz, entonces solo necesitas una FFT de 4096 puntos para lograr bins de 1 Hz y aún puedes resolver una señal de 2 kHz. Esto reduce el tamaño del bin de FFT, pero también reduce el ancho de banda de la señal.
En última instancia, con una FFT siempre habrá un compromiso entre la resolución de frecuencia y la resolución temporal. Debes realizar un acto de equilibrio para alcanzar todos los objetivos.