NUT is a low overhead generic container format. It stores audio, video, subtitle and user-defined streams in a simple, yet efficient, way.
It was created by a group of FFmpeg and MPlayer developers in 2003 and was finalized in 2008.
The official nut specification is at svn://svn.mplayerhq.hu/nut In case of any differences between this text and the official specification, the official specification shall prevail.
Since many exotic planar YUVA pixel formats are not considered by the AVI/QuickTime FourCC lists, the following scheme is adopted for representing them.
The first two bytes can contain the values: Y1 = only Y Y2 = Y+A Y3 = YUV Y4 = YUVA
The third byte represents the width and height chroma subsampling values for the UV planes, that is the amount to shift the luma width/height right to find the chroma width/height.
The fourth byte is the number of bits used (8, 16, ...).
If the order of bytes is inverted, that means that each component has to be read big-endian.
ALAW | A-LAW |
ULAW | MU-LAW |
P<type><interleaving><bits> | little-endian PCM |
<bits><interleaving><type>P | big-endian PCM |
<type> is S for signed integer, U for unsigned integer, F for IEEE float <interleaving> is D for default, P is for planar. <bits> is 8/16/24/32
PFD[32] would for example be signed 32 bit little-endian IEEE float |
UTF8 | Raw UTF-8 |
SSA[0] | SubStation Alpha |
DVDS | DVD subtitles |
DVBS | DVB subtitles |
UTF8 | Raw UTF-8 |
3IV1 | non-compliant MPEG-4 generated by old 3ivx |
ASV1 | Asus Video |
ASV2 | Asus Video 2 |
CVID | Cinepak |
CYUV | Creative YUV |
DIVX | non-compliant MPEG-4 generated by old DivX |
DUCK | Truemotion 1 |
FFV1 | FFmpeg video 1 |
FFVH | FFmpeg Huffyuv |
H261 | ITU H.261 |
H262 | ITU H.262 |
H263 | ITU H.263 |
H264 | ITU H.264 |
HFYU | Huffyuv |
I263 | Intel H.263 |
IV31 | Indeo 3.1 |
IV32 | Indeo 3.2 |
IV50 | Indeo 5.0 |
LJPG | ITU JPEG (lossless) |
MJLS | ITU JPEG-LS |
MJPG | ITU JPEG |
MPG4 | MS MPEG-4v1 (not ISO MPEG-4) |
MP42 | MS MPEG-4v2 |
MP43 | MS MPEG-4v3 |
MP4V | ISO MPEG-4 Part 2 Video (from old encoders) |
mpg1 | ISO MPEG-1 Video |
mpg2 | ISO MPEG-2 Video |
MRLE | MS RLE |
MSVC | MS Video 1 |
RT21 | Indeo 2.1 |
RV10 | RealVideo 1.0 |
RV20 | RealVideo 2.0 |
RV30 | RealVideo 3.0 |
RV40 | RealVideo 4.0 |
SNOW | FFmpeg Snow |
SVQ1 | Sorenson Video 1 |
SVQ3 | Sorenson Video 3 |
theo | Xiph Theora |
TM20 | Truemotion 2.0 |
UMP4 | non-compliant MPEG-4 generated by UB Video MPEG-4 |
VCR1 | ATI VCR1 |
VP30 | VP 3.0 |
VP31 | VP 3.1 |
VP50 | VP 5.0 |
VP60 | VP 6.0 |
VP61 | VP 6.1 |
VP62 | VP 6.2 |
VP70 | VP 7.0 |
WMV1 | MS WMV7 |
WMV2 | MS WMV8 |
WMV3 | MS WMV9 |
WV1F | non-compliant MPEG-4 generated by ? |
WVC1 | VC-1 |
XVID | non-compliant MPEG-4 generated by old Xvid |
XVIX | non-compliant MPEG-4 generated by old Xvid with interlacing bug |