Estoy intentando emular la modulación y demodulación de un cuadro de video PAL en el software, pero tengo problemas para entender cómo se separan los componentes AM (luma) y QAM (UV) de la señal durante el proceso de demodulación.
Background:
El software que estoy escribiendo toma un mapa de bits RGB, lo traduce a Y'UV utilizando el estándar BT.601, genera (modula) una señal como una serie de muestras y luego guarda esas muestras en un archivo wave. Esas muestras se pueden volver a cargar y demodular en un mapa de bits, con los impulsos de sincronización H honrados contra el generador de rampa H-pos como lo haría un viejo televisor CRT, y finalmente volver a traducir a un mapa de bits RGB.
Hay dos motivaciones detrás de este proyecto: primero, para crear un poco de fuzz analógico de aspecto atractivo en el software; y segundo, para comprender mejor los estándares de TV y las técnicas básicas de modulación / demodulación en un dominio (software) donde me siento más cómodo.
Lo que tengo hasta ahora:
El código realiza la modulación correctamente, y cuando el resultado se ve en Audacity (con una frecuencia de muestreo falsificada a 1/1000 de la frecuencia real), muestra una señal que reconozco como una serie de líneas de imagen PAL. El proceso completo funciona si lo pongo en modo blanco y negro, omitiendo así la señal QAM del paso de modulación y dejando solo el canal de luma modulado en amplitud. También he probado la modulación QAM y el código de demodulación con un simple archivo de audio, y funciona muy bien. Lo único que no he conseguido es la demodulación de la imagen con los componentes de color AM luma y QAM incluidos.
La confusión:
Dada una señal QAM sin tocar pura, parece relativamente trivial demodular la señal de nuevo a sus señales compuestas originales, al multiplicarse con el seno portador y su coseno individualmente:
$$ I_t = s_t \ cos (2 \ pi f_c t) $$ $$ Q_t = s_t \ sin (2 \ pi f_c t) $$
Los dos componentes se pasan a baja frecuencia en la frecuencia de la portadora para eliminar términos de alta frecuencia. Esto parece funcionar muy bien, y como señalé anteriormente, mi implementación de demodulación QAM funciona bien.
De manera similar, puedo implementar una simple demodulación de AM, incluso cuando la señal está acompañada por otras señales en partes separadas del dominio de la frecuencia; es solo un caso de paso alto y / o paso bajo hasta que tenga el bit tu quieres.
Sin embargo, por lo que puedo ver, el componente UV modulado QAM se agrega a la señal de luz AM de la base, con ambas partes superpuestas en el dominio de la frecuencia, como se muestra en el siguiente diagrama de Wikipedia:
En este punto estoy un poco perplejo. No parece que pueda hacer un paso bajo para obtener la señal de luz AM debido a la superposición, y no puedo ver cómo restaría la señal QAM de la AM subyacente.
¿Qué me estoy perdiendo? ¿Cuáles son los pasos lógicos que deben tomarse para separar los componentes luma y UV?