123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160 |
- \input texinfo @c -*- texinfo -*-
- @documentencoding UTF-8
- @settitle NUT
- @titlepage
- @center @titlefont{NUT}
- @end titlepage
- @top
- @contents
- @chapter 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.
- @chapter Modes
- NUT has some variants signaled by using the flags field in its main header.
- @multitable @columnfractions .4 .4
- @item BROADCAST @tab Extend the syncpoint to report the sender wallclock
- @item PIPE @tab Omit completely the syncpoint
- @end multitable
- @section BROADCAST
- The BROADCAST variant provides a secondary time reference to facilitate
- detecting endpoint latency and network delays.
- It assumes all the endpoint clocks are synchronized.
- To be used in real-time scenarios.
- @section 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.
- @chapter Container-specific codec tags
- @section 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.
- @section Raw Audio
- @multitable @columnfractions .4 .4
- @item ALAW @tab A-LAW
- @item ULAW @tab MU-LAW
- @item P<type><interleaving><bits> @tab little-endian PCM
- @item <bits><interleaving><type>P @tab big-endian PCM
- @end multitable
- <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
- @example
- PFD[32] would for example be signed 32 bit little-endian IEEE float
- @end example
- @section Subtitles
- @multitable @columnfractions .4 .4
- @item UTF8 @tab Raw UTF-8
- @item SSA[0] @tab SubStation Alpha
- @item DVDS @tab DVD subtitles
- @item DVBS @tab DVB subtitles
- @end multitable
- @section Raw Data
- @multitable @columnfractions .4 .4
- @item UTF8 @tab Raw UTF-8
- @end multitable
- @section Codecs
- @multitable @columnfractions .4 .4
- @item 3IV1 @tab non-compliant MPEG-4 generated by old 3ivx
- @item ASV1 @tab Asus Video
- @item ASV2 @tab Asus Video 2
- @item CVID @tab Cinepak
- @item CYUV @tab Creative YUV
- @item DIVX @tab non-compliant MPEG-4 generated by old DivX
- @item DUCK @tab Truemotion 1
- @item FFV1 @tab FFmpeg video 1
- @item FFVH @tab FFmpeg Huffyuv
- @item H261 @tab ITU H.261
- @item H262 @tab ITU H.262
- @item H263 @tab ITU H.263
- @item H264 @tab ITU H.264
- @item HFYU @tab Huffyuv
- @item I263 @tab Intel H.263
- @item IV31 @tab Indeo 3.1
- @item IV32 @tab Indeo 3.2
- @item IV50 @tab Indeo 5.0
- @item LJPG @tab ITU JPEG (lossless)
- @item MJLS @tab ITU JPEG-LS
- @item MJPG @tab ITU JPEG
- @item MPG4 @tab MS MPEG-4v1 (not ISO MPEG-4)
- @item MP42 @tab MS MPEG-4v2
- @item MP43 @tab MS MPEG-4v3
- @item MP4V @tab ISO MPEG-4 Part 2 Video (from old encoders)
- @item mpg1 @tab ISO MPEG-1 Video
- @item mpg2 @tab ISO MPEG-2 Video
- @item MRLE @tab MS RLE
- @item MSVC @tab MS Video 1
- @item RT21 @tab Indeo 2.1
- @item RV10 @tab RealVideo 1.0
- @item RV20 @tab RealVideo 2.0
- @item RV30 @tab RealVideo 3.0
- @item RV40 @tab RealVideo 4.0
- @item SNOW @tab FFmpeg Snow
- @item SVQ1 @tab Sorenson Video 1
- @item SVQ3 @tab Sorenson Video 3
- @item theo @tab Xiph Theora
- @item TM20 @tab Truemotion 2.0
- @item UMP4 @tab non-compliant MPEG-4 generated by UB Video MPEG-4
- @item VCR1 @tab ATI VCR1
- @item VP30 @tab VP 3.0
- @item VP31 @tab VP 3.1
- @item VP50 @tab VP 5.0
- @item VP60 @tab VP 6.0
- @item VP61 @tab VP 6.1
- @item VP62 @tab VP 6.2
- @item VP70 @tab VP 7.0
- @item WMV1 @tab MS WMV7
- @item WMV2 @tab MS WMV8
- @item WMV3 @tab MS WMV9
- @item WV1F @tab non-compliant MPEG-4 generated by ?
- @item WVC1 @tab VC-1
- @item XVID @tab non-compliant MPEG-4 generated by old Xvid
- @item XVIX @tab non-compliant MPEG-4 generated by old Xvid with interlacing bug
- @end multitable
|