Codec es un acrónimo de codificador-decodificador y es un dispositivo o programa informático que codifica o decodifica un flujo de datos digitales, normalmente un archivo de audio, imagen o vídeo.
Hardware versus software
Los códecs de hardware sólo se utilizan con fines de audio. Un códec de audio de hardware generalmente incluye un DAC (convertidor de digital a analógico) y un ADC (convertidor de analógico a digital) en un solo dispositivo. Luego, este dispositivo puede convertir sonidos en un archivo de audio digital y luego reproducir ese archivo de audio nuevamente como sonido.
Un códec de software es una pieza de software de computadora que puede procesar la fuente original de datos y convertirla a un formato estándar específico para que pueda ser leída fácilmente por otro software que esté configurado para comprender el códec relevante.
Con pérdida vs sin pérdida
Los códecs incluyen compresión en su procesamiento, esto es necesario ya que los formatos de archivos RAW pueden ser excesivamente grandes para el almacenamiento o la transmisión a largo plazo a través de Internet. La inclusión de la compresión en los códecs tiene como objetivo reducir el tamaño de los archivos a un nivel más manejable.
La mayoría de los códecs utilizan compresión con pérdida, lo que significa que parte de la calidad del archivo resultante se pierde para minimizar el tamaño del archivo. Al utilizar una velocidad de bits alta, que incluye más datos por segundo, un archivo con pérdida puede mantener un nivel de calidad razonablemente alto sin ser excesivamente grande. Este tipo de códecs son ideales para archivos de audio o vídeo que se transmiten por Internet o se almacenan en una computadora doméstica. El tamaño de archivo minimizado significa que la Internet de su hogar puede transmitir los datos en tiempo real y que los archivos individuales no llenan discos duros completos.
Algunos códecs utilizan compresión sin pérdidas, lo que permite replicar el archivo original sin pérdida de datos ni calidad. Esto es ideal para archivos que aún se procesarán, como archivos de video y audio que aún deben editarse. Si se utilizaran códecs con pérdida en cada etapa, la pérdida de calidad se agravaría con cada nivel de procesamiento.