Cuatrocc

FourCC (literalmente, código de cuatro caracteres; código de cuatro caracteres en inglés ) es una secuencia  de cuatro bytes que se utiliza para identificar formatos de datos de manera única . Ampliamente utilizado para identificar códecs de video en contenedores de medios.

El concepto se originó en el esquema OSType , utilizado en el software del sistema Macintosh , y ha sido adoptado para el formato de intercambio de archivos de Amiga / Electronic Arts y sus derivados. Esta idea se reutilizó más tarde para identificar tipos de datos comprimidos en QuickTime y DirectShow .

Detalles técnicos

La secuencia de bytes generalmente se limita a caracteres ASCII imprimibles, con espacios reservados para completar secuencias más cortas. Se conserva la distinción entre mayúsculas y minúsculas, a diferencia de .

Los identificadores de cuatro bytes son útiles porque pueden estar formados por cuatro caracteres legibles por humanos con cualidades mnemotécnicas sin dejar de encajar en el espacio de memoria de cuatro bytes normalmente reservado para números enteros en sistemas de 32 bits (aunque los problemas de endianidad pueden hacerlos menos legibles) . De esta manera, los códigos se pueden usar de manera efectiva en el código del programa como números enteros y también dan pistas en flujos de datos binarios cuando se marcan.

Sin embargo, algunos FourCC contienen caracteres no imprimibles y no son legibles por humanos sin un formato de visualización especial; por ejemplo, un video Y'CbCr 4:2:2 de 10 bits podría tener FourCC ('Y', '3', 10, 10) [1] , que ffmpeg representa como rawvideo (Y3[10][10] / 0x0A0A3359), yuv422p10le.

Historia

En 1985, Electronic Arts introdujo el metaformato Interchange File Format (IFF) (familia de formatos de archivo ), desarrollado originalmente para su uso en Amiga . Estos archivos consistían en una secuencia de "fragmentos" que podían contener datos arbitrarios, cada uno de los cuales comenzaba con un identificador de cuatro bytes. La especificación IFF menciona explícitamente que los orígenes de la idea de FourCC se encuentran en Apple [2] .

Este IFF ha sido adoptado por una serie de desarrolladores, incluidos Apple para archivos AIFF y Microsoft para archivos RIFF (que se utilizaron como base para el formato de archivo AVI y WAV ). Apple llama a muchos de estos códigos OSTypes . Los desarrolladores de Microsoft y Windows se refieren a sus identificadores de cuatro bytes como FourCC o códigos de cuatro caracteres. Microsoft también adoptó los códigos FourCC para identificar los formatos de datos utilizados en DirectX , especialmente DirectShow y DirectX Graphics.

Uso general

Uno de los usos más conocidos de FourCC es identificar el códec de video o el formato de codificación de video en archivos AVI. Los identificadores comunes incluyen DIVX , XVID y H264 . Para los formatos de codificación de audio, los archivos AVI y WAV utilizan un identificador de dos bytes, generalmente escrito en hexadecimal (por ejemplo, 0055 para MP3 ). En los archivos de QuickTime, estos identificadores de dos bytes tienen el prefijo "ms" para formar un código de cuatro caracteres. Los archivos RealMedia también utilizan códigos de cuatro caracteres, sin embargo, los códigos reales utilizados difieren de los que se encuentran en los archivos AVI o QuickTime.

Otros formatos de archivo en los que es importante utilizar el concepto de identificador de cuatro bytes son el formato de archivo MIDI estándar (SMF) , el formato de archivo de imagen PNG , el formato de archivo de malla 3DS ( 3D Studio Max ) y el formato de perfil ICC .

Véase también

Notas

  1. FFmpeg: libavcodec/raw.c Archivo fuente . ffmpeg.org. Consultado el 9 de junio de 2019. Archivado desde el original el 19 de enero de 2019.
  2. Morrison, Jerry "EA IFF 85" Estándar para archivos de formato de intercambio . Electronic Arts (14 de enero de 1985). Consultado el 17 de enero de 2019. Archivado desde el original el 21 de febrero de 2015.

Enlaces