[Top] [Contents] [Index] [ ? ]

NUT


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1. Description

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.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

2. Modes

NUT has some variants signaled by using the flags field in its main header.

BROADCASTExtend the syncpoint to report the sender wallclock
PIPEOmit completely the syncpoint

[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

2.1 BROADCAST

The BROADCAST variant provides a secondary time reference to facilitate detecting endpoint latency and network delays. It assumes all the endpoint clocks are syncronized. To be used in real-time scenarios.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

2.2 PIPE

The PIPE variant assumes NUT is used as non-seekable intermediate container, by not using syncpoint removes unneeded overhead and reduces the overall memory usage.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

3. Container-specific codec tags


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

3.1 Generic raw YUVA formats

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.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

3.2 Raw Audio

ALAWA-LAW
ULAWMU-LAW
P<type><interleaving><bits>little-endian PCM
<bits><interleaving><type>Pbig-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

[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

3.3 Subtitles

UTF8Raw UTF-8
SSA[0]SubStation Alpha
DVDSDVD subtitles
DVBSDVB subtitles

[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

3.4 Raw Data

UTF8Raw UTF-8

[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

3.5 Codecs

3IV1non-compliant MPEG-4 generated by old 3ivx
ASV1Asus Video
ASV2Asus Video 2
CVIDCinepak
CYUVCreative YUV
DIVXnon-compliant MPEG-4 generated by old DivX
DUCKTruemotion 1
FFV1FFmpeg video 1
FFVHFFmpeg Huffyuv
H261ITU H.261
H262ITU H.262
H263ITU H.263
H264ITU H.264
HFYUHuffyuv
I263Intel H.263
IV31Indeo 3.1
IV32Indeo 3.2
IV50Indeo 5.0
LJPGITU JPEG (lossless)
MJLSITU JPEG-LS
MJPGITU JPEG
MPG4MS MPEG-4v1 (not ISO MPEG-4)
MP42MS MPEG-4v2
MP43MS MPEG-4v3
MP4VISO MPEG-4 Part 2 Video (from old encoders)
mpg1ISO MPEG-1 Video
mpg2ISO MPEG-2 Video
MRLEMS RLE
MSVCMS Video 1
RT21Indeo 2.1
RV10RealVideo 1.0
RV20RealVideo 2.0
RV30RealVideo 3.0
RV40RealVideo 4.0
SNOWFFmpeg Snow
SVQ1Sorenson Video 1
SVQ3Sorenson Video 3
theoXiph Theora
TM20Truemotion 2.0
UMP4non-compliant MPEG-4 generated by UB Video MPEG-4
VCR1ATI VCR1
VP30VP 3.0
VP31VP 3.1
VP50VP 5.0
VP60VP 6.0
VP61VP 6.1
VP62VP 6.2
VP70VP 7.0
WMV1MS WMV7
WMV2MS WMV8
WMV3MS WMV9
WV1Fnon-compliant MPEG-4 generated by ?
WVC1VC-1
XVIDnon-compliant MPEG-4 generated by old Xvid
XVIXnon-compliant MPEG-4 generated by old Xvid with interlacing bug

[Top] [Contents] [Index] [ ? ]

Table of Contents


[Top] [Contents] [Index] [ ? ]

About This Document

This document was generated by Autobuild on November 16, 2015 using texi2html 1.82.

The buttons in the navigation panels have the following meaning:

Button Name Go to From 1.2.3 go to
[ < ] Back Previous section in reading order 1.2.2
[ > ] Forward Next section in reading order 1.2.4
[ << ] FastBack Beginning of this chapter or previous chapter 1
[ Up ] Up Up section 1.2
[ >> ] FastForward Next chapter 2
[Top] Top Cover (top) of document  
[Contents] Contents Table of contents  
[Index] Index Index  
[ ? ] About About (help)  

where the Example assumes that the current position is at Subsubsection One-Two-Three of a document of the following structure:


This document was generated by Autobuild on November 16, 2015 using texi2html 1.82.