Hay muchos codificadores disponibles para almacenar datos digitales. Si bien existen codificadores de propósito general que implementan diferentes algoritmos de compresión, el mejor codificador es uno diseñado específicamente para comprimir ciertos tipos de datos. Esto se debe a que algunos algoritmos son más adecuados para usos particulares y el codificador utilizado se puede optimizar para que funcione más rápido, de manera más eficiente y proporcione funciones específicas en lugar de solo comprimir datos anónimos. Los codificadores que se especializan en el archivo general de archivos arbitrarios se utilizan con regularidad, aunque algunos de estos archivos ya emplean esquemas de codificación complejos, por lo que la compresión adicional puede aumentar el tamaño del archivo en lugar de reducirlo.
Un codificador es una pieza de software de computadora que combina otras dos piezas de software, o bibliotecas de computadora, para formar un programa completo. El primero es el algoritmo de compresión, que es la fórmula real utilizada para tomar datos digitales y convertirlos en un archivo más pequeño que el original. El algoritmo está envuelto en un programa que puede integrarse en un sistema operativo llamado compresor-descompresor, o códec, que es la implementación del esquema de compresión. Un codificador de software proporciona una interfaz utilizable que puede llamar al códec para convertir los datos al formato especificado por el algoritmo, de modo que se puedan descomprimir en un momento posterior o almacenar en una pequeña cantidad de espacio.
Algunos de los codificadores más utilizados se ocupan principalmente de imágenes. Dependiendo de la profundidad de las funciones requeridas, el mejor codificador de imágenes para algunas personas tendrá una interfaz simple y admitirá múltiples formatos de archivo para que las imágenes se puedan convertir al tipo que se necesite para otro programa. Algunos codificadores de imágenes también incluyen implementaciones alternativas de algoritmos estándar, lo que proporciona una mejor calidad para un tamaño de archivo ligeramente mayor o una compresión máxima con cierta pérdida de resolución de la imagen.
Para el archivo general, existen varios tipos de software de codificación con distintas características. En el caso de que sea necesario comprimir una gran cantidad de archivos, existen codificadores optimizados con un solo algoritmo potente que puede obtener tasas de compresión increíblemente altas, a costa de la velocidad y la falta de portabilidad para algún otro software de codificación. Alternativamente, existen programas de codificación que comprimirán varios archivos y crearán un archivo autoextraíble de fácil uso que da como resultado un tamaño de archivo más grande, pero agrega portabilidad y una manera fácil de reproducir un árbol de archivos o una estructura de directorio sin esfuerzo.
Hay varios otros codificadores especializados, incluidos aquellos para comprimir rápidamente la transmisión de video, pistas de audio o datos tridimensionales (3D). Cada uno de estos requiere un códec especial y, en algunos casos, hardware de soporte externo. Estos tipos de codificadores pueden incluir versiones gratuitas y sus contrapartes profesionales que se han convertido en estándares de la industria, por lo que elegir el mejor será una cuestión de evaluar el costo del software frente a las características que se proporcionan con él.