Update README -> README.md, generate groff manpage from README.md
authornu774 <honeycomb77@gmail.com>
Mon, 4 Nov 2013 06:33:01 +0000 (15:33 +0900)
committernu774 <honeycomb77@gmail.com>
Mon, 4 Nov 2013 06:33:01 +0000 (15:33 +0900)
README [deleted file]
README.md [new file with mode: 0644]
man/fdkaac.1

diff --git a/README b/README
deleted file mode 100644 (file)
index 5941539..0000000
--- a/README
+++ /dev/null
@@ -1,122 +0,0 @@
-==========================================================================
-fdkaac - command line frontend encoder for libfdk-aac
-==========================================================================
-
-Prerequisites
--------------
-You need libfdk-aac.
-On Posix environment, you will also need GNU gettext (for iconv.m4) and
-GNU autoconf/automake.
-
-How to build on Posix environment
----------------------------------
-First, you need to build libfdk-aac and install on your system.
-Once you have done it, the following will do the task.
-(MinGW build can be done the same way, and doesn't require gettext/iconv)
-
-$ autoreconf -i
-$ ./configure && make && make install
-
-How to build on MSVC
---------------------
-First you have to extract libfdk-aac source here, so that directory tree will
-look like the following:
-+- fdk-aac ---+-documentation
-|             +-libAACdec
-|             +-libAACenc
-|             :
-+- m4
-+- missings
-+- MSVC
-+- src
-
-MSVC solution for Visual Studio 2010 is under MSVC directory.
-
-Available input format
-----------------------
-WAV, RF64, CAF, RAW, upto 32bit int / 64bit float format is supported.
-Metadata in CAF info chunk can be read and copied to the resulting m4a.
-This is especially useful and works well when you pipe from ffmpeg via CAF.
-For example, you can copy tag from original "foo.flac" to "foo.m4a"
-through the following pipeline:
-
-$ ffmpeg -i foo.flac -f caf - | fdkaac -m3 - -o foo.m4a
-
-Since FDK AAC encoder is implemented based on fixed point integer,
-encoder itself handles 16bit input only.
-Therefore, when feeding non-integer input, be careful so that input doesn't
-exceed 0dBFS to avoid hard clips.
-You might also want to apply dither/noise shape beforehand when your input
-has higher resolution.
-
-Note that fdkaac doesn't automatically resample for you
-when input samplerate is not supported by AAC spec.
-
-Tagging Options
----------------
-Generic tagging options like --tag, --tag-from-file, --long-tag allows you
-to set arbitrary tags.
-Available tags and their fcc (four char code) for --tag and --tag-from-file
-can be found at http://code.google.com/p/mp4v2/wiki/iTunesMetadata
-
-For tags such as Artist where first char of fcc is copyright sign,
-you can skip first char and just say like --tag="ART:Foo Bar" or
---tag-from-file=lyr:/path/to/your/lyrics.txt
-
-Currently, --tag-from-file just stores file contents into m4a without any
-character encoding / line terminater conversion.
-Therefore, only use UTF-8 (without BOM) when setting text tags by this option.
-
-On the other hand, --tag / --long-tag (and other command line arguments) are
-converted from locale character encoding to UTF-8 on Posix environment.
-On Windows, command line arguments are always treated as Unicode.
-
-Tagging using JSON
-------------------
-With --tag-from-json, fdkaac can read JSON file and set tags from it.
-By default, tags are assumed to be in the root object(dictionary) like this:
-
-{
-  "title": "No Expectations",
-  "artist": "The Rolling Stones",
-  "album": "Beggars Banquet",
-  "track": 2
-}
-
-In this case, you can simply specify the filename like:
---tag-from-json=/path/to/json
-
-If the object containing tags is placed somewhere else, you can optionally
-specify the path of the object with dotted notation.
-
-{
-  "format" : {
-    "filename" : "Middle Curse.flac",
-    "nb_streams" : 1,
-    "format_name" : "flac",
-    "format_long_name" : "raw FLAC",
-    "start_time" : "N/A",
-    "duration" : "216.146667",
-    "size" : "11851007.000000",
-    "bit_rate" : "438628.000000",
-    "tags" : {
-      "ALBUM" : "Scary World Theory",
-      "ARTIST" : "Lali Puna",
-      "DATE" : "2001",
-      "DISCID" : "9208CC0A",
-      "TITLE" : "Middle Curse",
-      "TRACKTOTAL" : "10",
-      "track" : "2"
-    }
-  }
-}
-
-In this example, tags are placed under the object "format.tags".
-("format" is a child of the root, and "tags" is a child of the "format").
-In this case, you can say:
---tag-from-json=/path/to/json?format.tags
-
-For your information, ffprobe of ffmpeg project (or avprobe of libav) can
-output media information/metadata in json format like this.
-
-Note that not all tags can be read/written this way.
diff --git a/README.md b/README.md
new file mode 100644 (file)
index 0000000..e584375
--- /dev/null
+++ b/README.md
@@ -0,0 +1,332 @@
+% FDKAAC(1)
+% nu774 <honeycomb77@gmail.com>
+% November, 2013
+
+NAME
+====
+
+fdkaac - command line frontend for libfdk-aac encoder  
+
+SYNOPSIS
+========
+
+**fdkaac** [OPTIONS] [FILE]
+
+DESCRIPTION
+===========
+
+**fdkaac** reads linear PCM audio in either WAV, raw PCM, or CAF format,
+and encodes it into either M4A / AAC file.
+
+If the input file is "-", data is read from stdin. Likewise, if the
+output file is "-", data is written to stdout if one of streamable AAC
+transport formats is selected by **-f**.
+
+When CAF input and M4A output is used, tags in CAF file are copied into
+the resulting M4A.  
+
+OPTIONS
+=======
+
+-h, --help
+:   Show command help
+
+-o \<FILE\>
+:   Output filename.
+
+-p, --profile \<n\>
+:   Target profile (MPEG4 audio object type, AOT)
+
+    2
+    :   MPEG-4 AAC LC (default)
+
+    5
+    :   MPEG-4 HE-AAC (SBR)
+
+    29
+    :   MPEG-4 HE-AAC v2 (SBR+PS)
+
+    23
+    :   MPEG-4 AAC LD
+
+    39
+    :   MPEG-4 AAC ELD
+
+    129
+    :   MPEG-2 AAC LC
+
+    132
+    :   MPEG-2 HE-AAC (SBR)
+
+    156
+    :   MPEG-2 HE-AAC v2 (SBR+PS)
+
+-b, --bitrate \<n\>
+:   Target bitrate (for CBR)
+
+-m, --bitrate-mode \<n\>
+:   Bitrate configuration mode. Available VBR quality value depends on
+    other parameters such as profile, sample rate, or number of
+    channels.
+
+    0
+    :   CBR (default)
+
+    1-5
+    :   VBR (higher value -\> higher bitrate)
+
+-w, --bandwith \<n\>
+:   Frequency bandwith (lowpass cut-off frequency) in Hz. Available on
+    AAC LC only.
+
+-a, --afterburner \<n\>
+:   Configure afterburner mode. When enabled, quality is increased at
+    the expense of additional computational workload.
+
+    0
+    :   Off
+
+    1
+    :   On (default)
+
+-L, --lowdelay-sbr \<n\>
+:   Configure SBR activity on AAC ELD.
+
+    -1
+    :   Use ELD SBR auto configuration
+
+    0
+    :   Disable SBR on ELD (default)
+
+    1
+    :   Enable SBR on ELD
+
+-s, --sbr-ratio \<n\>
+:   Controls activation of downsampled SBR.
+
+    0
+    :   Use lib default (default)
+
+    1
+    :   Use downsampled SBR (default for ELD+SBR)
+
+    2
+    :   Use dual-rate SBR (default for HE-AAC)
+
+    Dual-rate SBR is what is normally used for HE-AAC, where AAC is
+    encoded at half the sample rate of SBR, hence "dual rate". On the
+    other hand, downsampled SBR uses same sample rate for both of AAC
+    and SBR (single rate), therefore downsampled SBR typically consumes
+    more bitrate.
+
+    Downsampled SBR is newly introduced feature in FDK encoder library
+    version 3.4.12. When libfdk-aac in the system doesn't support this,
+    dual-rate SBR will be used. When available, dual-rate SBR is the
+    default for HE-AAC and downsampled SBR is the default for ELD+SBR.
+
+    Note that downsampled HE-AAC is not so common as dual-rate one. When
+    downsampled HE-AAC is selected, **fdkaac** is forced to choose
+    explicit hierarchical SBR signaling, which (at least) iTunes doesn't
+    accept.
+
+-f, --transport-format \<n\>
+:   Transport format. Tagging and gapless playback is only available on
+    M4A. Streaming to stdout is only available on others.
+
+    0
+    :   M4A (default)
+
+    1
+    :   ADIF
+
+    2
+    :   ADTS
+
+    6
+    :   LATM MCP=1
+
+    7
+    :   LATM MCP=0
+
+    10
+    :   LOAS/LATM (LATM within LOAS)
+
+-C, --adts-crc-check
+:   Add CRC protection on ADTS header.
+
+-h, --header-period \<n\>
+:   StreamMuxConfig/PCE repetition period in transport layer.
+
+-G, --gapless-mode \<n\>
+:   Method to declare amount of encoder delay (and padding) in M4A
+    container. These values are mandatory for proper gapless playback on
+    player side.
+
+    0
+    :   iTunSMPB (default)
+
+    1
+    :   ISO standard (edts and sgpd)
+
+    2
+    :   Both
+
+--include-sbr-delay
+:   When specified, count SBR decoder delay in encoder delay.
+
+    This is not iTunes compatible and will lead to gapless playback
+    issue on LC only decoder, but this is the default behavior of FDK
+    library.
+
+    Whether counting SBR decoder delay in encoder delay or not result in
+    incompatibility in gapless playback. You should pick which one will
+    work for your favorite player.
+
+    However, it's better not to choose SBR at all if you want gapless
+    playback. LC doesn't have such issues.
+
+-I, --ignorelength
+:   Ignore length field of data chunk in input WAV file.
+
+-S, --silent
+:   Don't print progress messages.
+
+--moov-before-mdat
+:   Place moov box before mdat box in M4A container. This option might
+    be important for some hardware players, that are known to refuse
+    moov box placed after mdat box.
+
+-R, --raw
+:   Regard input as raw PCM.
+
+--raw-channels \<n\>
+:   Specify number of channels of raw input (default: 2)
+
+--raw-rate \<n\>
+:   Specify sample rate of raw input (default: 44100)
+
+--raw-format \<spec\>
+:   Specify sample format of raw input (default: "S16L"). **Spec** is as
+    the following (case insensitive):
+
+    1st char -- type of sample
+    :   **S** (igned) | **U** (nsigned) | **F** (loat)
+
+    2nd part (in digits)
+    :   bits per channel
+
+    Last char -- endianness (can be ommited)
+    :   **L** (ittle, default) | **B** (ig)
+
+--title \<string\>
+:   Set title tag.
+
+--artist \<string\>
+:   Set artist tag.
+
+--album \<string\>
+:   Set album tag.
+
+--genre \<string\>
+:   Set genre tag.
+
+--date \<string\>
+:   Set date tag.
+
+--composer \<string\>
+:   Set composer tag.
+
+--grouping \<string\>
+:   Set grouping tag.
+
+--comment \<string\>
+:   Set comment tag.
+
+--album-artist \<string\>
+:   Set album artist tag.
+
+--track \<number[/total]\>
+:   Set track tag, with or without number of total tracks.
+
+--disk \<number[/total]\>
+:   Set disk tag, with or without number of total discs.
+
+--tempo \<n\>
+:   Set tempo (BPM) tag.
+
+--tag \<fcc\>:\<value\>
+:   Set iTunes predefined tag with explicit fourcc key and value. See
+    [https://code.google.com/p/mp4v2/wiki/iTunesMetadata](https://code.google.com/p/mp4v2/wiki/iTunesMetadata)
+    for known predefined keys. You can omit first char of **fcc** when
+    it is the copyright sign.
+
+--tag-from-file \<fcc\>:\<filename\>
+:   Same as --tag, but set content of file as tag value.
+
+--long-tag \<name\>:\<value\>
+:   Set arbitrary tag as iTunes custom metadata. Stored in
+    com.apple.iTunes field.
+
+--tag-from-json \<filename[?dot\_notation]\>
+:   Read tags from JSON. By default, tags are assumed to be direct
+    children of the root object in JSON. Optionary you can speficy
+    arbitrary dot notation to locate the object containing tags.
+
+EXAMPLES
+========
+
+Encode WAV file into a M4A file. MPEG4 AAC LC, VBR quality 3:
+
+    fdkaac -m3 foo.wav
+
+Encode WAV file into a M4A file. MPEG4 HE-AAC, bitrate 64kbps:
+
+    fdkaac -p5 -b64 foo.wav
+
+Piping from **ffmpeg** (you need version supporting CAF output):
+
+    ffmpeg -i foo.flac -f caf - | fdkaac -b128 - -o foo.m4a
+
+Import tags via json:
+
+    ffprobe -v 0 -of json -show_format foo.flac >foo.json
+
+    flac -dc foo.flac | \
+    fdkaac - -ox.m4a -m2 --import-tag-from-json=foo.json?format.tags
+
+NOTES
+=====
+
+Upto 32bit integer or 64bit floating point format is supported as input.
+However, FDK library is implemented based on fixed point math and only
+supports 16bit integer PCM. Therefore, be careful of clipping. You might
+want to dither/noise shape beforehand when your input has higher
+resolution.
+
+Following channel layouts are supported by the encoder.
+
+1ch
+:   C
+
+2ch
+:   L R
+
+3ch
+:   C L R
+
+4ch
+:   C L R Cs
+
+5ch
+:   C L R Ls Rs
+
+5.1ch
+:   C L R Ls Rs LFE
+
+7.1ch (front)
+:   C Lc Rc L R Ls Rs LFE
+
+7.1ch (rear)
+:   C L R Ls Rs Rls Rrs LFE
+
index 87499b76a313b2401f104b6164bd71c955067297..58864f15ebc9c45ad569df9e659ff2eacbbcd9ee 100644 (file)
-.TH fdkaac 1 "November 2013"
-.\"
-.\"
+.TH FDKAAC 1 "November, 2013" 
 .SH NAME
 .SH NAME
-fdkaac \- command line frontend for libfdk-aac encoder
-.\"
-.\"
+.PP
+fdkaac - command line frontend for libfdk-aac encoder \ 
 .SH SYNOPSIS
 .SH SYNOPSIS
-.B fdkaac
-[-h|--help] [-p|--profile <n>] [-b|--bitrate <n>] [-m|--bitrate-mode <n>]
-[-w|--bandwith <n>] [-a|afterburner <n>] [-L|--lowdelay-sbr <n> ]
-[-s|--sbr-ratio <n>] [-f|--transport-format <n>] [-C|--adts-crc-check]
-[-h|--header-period <n>] [-G|--gapless-mode <n>] [--include-sbr-delay]
-[-I|--ignore-length] [-S|--silent] [--mov-before-mdat]
-[-R|--raw] [--raw-channels <n>] [--raw-rate <n>] [--raw-format <spec>]
-[--title <str>] [--artist <str>] [--album <str>] [--genre <str>] [--date <str>]
-[--composer <str>] [--grouping <str>] [--comment <str>] [--album-artist <str>]
-[--track <num[/total]>] [--disk <num[/total]>] [--tempo <n>]
-[--tag <fcc>:<value>] [--tag-from-file <fcc>:<value>]
-[--long-tag <name>:<value>] [--tag-from-json <filename[?dot_notation]>]
-[-o FILE] [FILE]
-.\"
-.\"
+.PP
+\f[B]fdkaac\f[] [OPTIONS] [FILE]
 .SH DESCRIPTION
 .SH DESCRIPTION
-.B fdkaac
-reads linear PCM audio in either WAV, raw PCM, or CAF format,
-and encodes it into either M4A / AAC file.
-.br
+.PP
+\f[B]fdkaac\f[] reads linear PCM audio in either WAV, raw PCM, or CAF
+format, and encodes it into either M4A / AAC file.
+.PP
 If the input file is "-", data is read from stdin.
 Likewise, if the output file is "-", data is written to stdout if one of
 If the input file is "-", data is read from stdin.
 Likewise, if the output file is "-", data is written to stdout if one of
-streamable AAC transport formats is selected by
-.B -f.
-.br
+streamable AAC transport formats is selected by \f[B]-f\f[].
+.PP
 When CAF input and M4A output is used, tags in CAF file are copied into
 the resulting M4A.
 When CAF input and M4A output is used, tags in CAF file are copied into
 the resulting M4A.
-.\"
-.\"
+\ 
 .SH OPTIONS
 .SH OPTIONS
-.\"
-.IP "-h, --help"
+.TP
+.B -h, --help
 Show command help
 Show command help
-.\"
-.IP "-o <FILE>"
+.RS
+.RE
+.TP
+.B -o <FILE>
 Output filename.
 Output filename.
-.\"
-.IP "-p, --profile <n>"
+.RS
+.RE
+.TP
+.B -p, --profile <n>
 Target profile (MPEG4 audio object type, AOT)
 .RS
 Target profile (MPEG4 audio object type, AOT)
 .RS
-.IP 2
+.TP
+.B 2
 MPEG-4 AAC LC (default)
 MPEG-4 AAC LC (default)
-.IP 5
+.RS
+.RE
+.TP
+.B 5
 MPEG-4 HE-AAC (SBR)
 MPEG-4 HE-AAC (SBR)
-.IP 29
+.RS
+.RE
+.TP
+.B 29
 MPEG-4 HE-AAC v2 (SBR+PS)
 MPEG-4 HE-AAC v2 (SBR+PS)
-.IP 23
+.RS
+.RE
+.TP
+.B 23
 MPEG-4 AAC LD
 MPEG-4 AAC LD
-.IP 39
+.RS
+.RE
+.TP
+.B 39
 MPEG-4 AAC ELD
 MPEG-4 AAC ELD
-.IP 129
+.RS
+.RE
+.TP
+.B 129
 MPEG-2 AAC LC
 MPEG-2 AAC LC
-.IP 132
+.RS
+.RE
+.TP
+.B 132
 MPEG-2 HE-AAC (SBR)
 MPEG-2 HE-AAC (SBR)
-.IP 156
+.RS
+.RE
+.TP
+.B 156
 MPEG-2 HE-AAC v2 (SBR+PS)
 MPEG-2 HE-AAC v2 (SBR+PS)
+.RS
 .RE
 .RE
-.\"
-.IP "-b, --bitrate <n>"
+.RE
+.TP
+.B -b, --bitrate <n>
 Target bitrate (for CBR)
 Target bitrate (for CBR)
-.\"
-.IP "-m, --bitrate-mode <n>"
-Bitrate configuration mode. 
-Available VBR quality value depends on other parameters such as
-profile, sample rate, or number of channels.
 .RS
 .RS
-.IP 0
+.RE
+.TP
+.B -m, --bitrate-mode <n>
+Bitrate configuration mode.
+Available VBR quality value depends on other parameters such as profile,
+sample rate, or number of channels.
+.RS
+.TP
+.B 0
 CBR (default)
 CBR (default)
-.IP 1-5
+.RS
+.RE
+.TP
+.B 1-5
 VBR (higher value -> higher bitrate)
 VBR (higher value -> higher bitrate)
+.RS
+.RE
 .RE
 .RE
-.\"
-.IP "-w, --bandwith <n>"
-Frequency bandwith (lowpass cut-off frequency) in Hz. Available on AAC LC only.
-.\"
-.IP "-a, --afterburner <n>"
-Configure afterburner mode. When enabled, quality is increased at the expense
-of additional computational workload.
+.TP
+.B -w, --bandwith <n>
+Frequency bandwith (lowpass cut-off frequency) in Hz.
+Available on AAC LC only.
 .RS
 .RS
-.IP 0
+.RE
+.TP
+.B -a, --afterburner <n>
+Configure afterburner mode.
+When enabled, quality is increased at the expense of additional
+computational workload.
+.RS
+.TP
+.B 0
 Off
 Off
-.IP 1
+.RS
+.RE
+.TP
+.B 1
 On (default)
 On (default)
+.RS
 .RE
 .RE
-.\"
-.IP "-L, --lowdelay-sbr <n>"
+.RE
+.TP
+.B -L, --lowdelay-sbr <n>
 Configure SBR activity on AAC ELD.
 .RS
 Configure SBR activity on AAC ELD.
 .RS
-.IP -1
+.TP
+.B -1
 Use ELD SBR auto configuration
 Use ELD SBR auto configuration
-.IP 0
+.RS
+.RE
+.TP
+.B 0
 Disable SBR on ELD (default)
 Disable SBR on ELD (default)
-.IP 1
+.RS
+.RE
+.TP
+.B 1
 Enable SBR on ELD
 Enable SBR on ELD
+.RS
+.RE
 .RE
 .RE
-.\"
-.IP "-s, --sbr-ratio <n>"
-Controls activation of downsampled SBR. 
+.TP
+.B -s, --sbr-ratio <n>
+Controls activation of downsampled SBR.
 .RS
 .RS
-.IP 0
+.TP
+.B 0
 Use lib default (default)
 Use lib default (default)
-.IP 1
+.RS
+.RE
+.TP
+.B 1
 Use downsampled SBR (default for ELD+SBR)
 Use downsampled SBR (default for ELD+SBR)
-.IP 2
-Use dual-rate SBR (default for HE-AAC)
+.RS
 .RE
 .RE
+.TP
+.B 2
+Use dual-rate SBR (default for HE-AAC)
 .RS
 .RS
+.RE
 .PP
 .PP
-Dual-rate SBR is what is normally used for HE-AAC, where AAC is encoded at half the sample rate of SBR, hence "dual rate".
-On the other hand, downsampled SBR uses same sample rate for both of AAC and SBR (single rate), therefore downsampled SBR typically consumes more bitrate.
+Dual-rate SBR is what is normally used for HE-AAC, where AAC is encoded
+at half the sample rate of SBR, hence "dual rate".
+On the other hand, downsampled SBR uses same sample rate for both of AAC
+and SBR (single rate), therefore downsampled SBR typically consumes more
+bitrate.
 .PP
 .PP
-Downsampled SBR is newly introduced feature in FDK encoder library version 3.4.12.
-When libfdk-aac in the system doesn't support this, dual-rate SBR will be used.
-When available, dual-rate SBR is the default for HE-AAC and downsampled SBR is the default for ELD+SBR.
+Downsampled SBR is newly introduced feature in FDK encoder library
+version 3.4.12.
+When libfdk-aac in the system doesn\[aq]t support this, dual-rate SBR
+will be used.
+When available, dual-rate SBR is the default for HE-AAC and downsampled
+SBR is the default for ELD+SBR.
 .PP
 Note that downsampled HE-AAC is not so common as dual-rate one.
 .PP
 Note that downsampled HE-AAC is not so common as dual-rate one.
-When downsampled HE-AAC is selected,
-.B fdkaac
-is forced to choose explicit hierarchical SBR signaling, which (at least) iTunes doesn't accept.
+When downsampled HE-AAC is selected, \f[B]fdkaac\f[] is forced to choose
+explicit hierarchical SBR signaling, which (at least) iTunes doesn\[aq]t
+accept.
 .RE
 .RE
-.\"
-.IP "-f, --transport-format <n>"
+.TP
+.B -f, --transport-format <n>
 Transport format.
 Transport format.
-Tagging and gapless playback is only available on M4A. Streaming to stdout is
-only available on others.
+Tagging and gapless playback is only available on M4A.
+Streaming to stdout is only available on others.
 .RS
 .RS
-.IP 0
+.TP
+.B 0
 M4A (default)
 M4A (default)
-.IP 1
+.RS
+.RE
+.TP
+.B 1
 ADIF
 ADIF
-.IP 2
+.RS
+.RE
+.TP
+.B 2
 ADTS
 ADTS
-.IP 6
+.RS
+.RE
+.TP
+.B 6
 LATM MCP=1
 LATM MCP=1
-.IP 7
+.RS
+.RE
+.TP
+.B 7
 LATM MCP=0
 LATM MCP=0
-.IP 10
+.RS
+.RE
+.TP
+.B 10
 LOAS/LATM (LATM within LOAS)
 LOAS/LATM (LATM within LOAS)
+.RS
 .RE
 .RE
-.\"
-.IP "-C, --adts-crc-check"
+.RE
+.TP
+.B -C, --adts-crc-check
 Add CRC protection on ADTS header.
 Add CRC protection on ADTS header.
-.\"
-.IP "-h, --header-period <n>"
+.RS
+.RE
+.TP
+.B -h, --header-period <n>
 StreamMuxConfig/PCE repetition period in transport layer.
 StreamMuxConfig/PCE repetition period in transport layer.
-.\"
-.IP "-G, --gapless-mode <n>"
-Method to declare amount of encoder delay (and padding) in M4A container.
+.RS
+.RE
+.TP
+.B -G, --gapless-mode <n>
+Method to declare amount of encoder delay (and padding) in M4A
+container.
 These values are mandatory for proper gapless playback on player side.
 .RS
 These values are mandatory for proper gapless playback on player side.
 .RS
-.IP 0
+.TP
+.B 0
 iTunSMPB (default)
 iTunSMPB (default)
-.IP 1
+.RS
+.RE
+.TP
+.B 1
 ISO standard (edts and sgpd)
 ISO standard (edts and sgpd)
-.IP 2
+.RS
+.RE
+.TP
+.B 2
 Both
 Both
+.RS
+.RE
 .RE
 .RE
-.\"
-.IP "--include-sbr-delay"
+.TP
+.B --include-sbr-delay
 When specified, count SBR decoder delay in encoder delay.
 When specified, count SBR decoder delay in encoder delay.
-.br
+.RS
+.PP
 This is not iTunes compatible and will lead to gapless playback issue on
 LC only decoder, but this is the default behavior of FDK library.
 This is not iTunes compatible and will lead to gapless playback issue on
 LC only decoder, but this is the default behavior of FDK library.
-.br
+.PP
 Whether counting SBR decoder delay in encoder delay or not result in
 Whether counting SBR decoder delay in encoder delay or not result in
-incompatibility in gapless playback. You should pick which one will work for
-your favorite player.
-.br
-However, it's better not to choose SBR at all if you want
-gapless playback. LC doesn't have such issues.
-.\"
-.IP "-I, --ignorelength"
+incompatibility in gapless playback.
+You should pick which one will work for your favorite player.
+.PP
+However, it\[aq]s better not to choose SBR at all if you want gapless
+playback.
+LC doesn\[aq]t have such issues.
+.RE
+.TP
+.B -I, --ignorelength
 Ignore length field of data chunk in input WAV file.
 Ignore length field of data chunk in input WAV file.
-.\"
-.IP "-S, --silent"
-Don't print progress messages.
-.\"
-.IP "--moov-before-mdat"
+.RS
+.RE
+.TP
+.B -S, --silent
+Don\[aq]t print progress messages.
+.RS
+.RE
+.TP
+.B --moov-before-mdat
 Place moov box before mdat box in M4A container.
 Place moov box before mdat box in M4A container.
-.br
-This option might be important for some hardware players, that are known to
-refuse moov box placed after mdat box.
-.\"
-.IP "-R, --raw"
+This option might be important for some hardware players, that are known
+to refuse moov box placed after mdat box.
+.RS
+.RE
+.TP
+.B -R, --raw
 Regard input as raw PCM.
 Regard input as raw PCM.
-.\"
-.IP "--raw-channels <n>"
+.RS
+.RE
+.TP
+.B --raw-channels <n>
 Specify number of channels of raw input (default: 2)
 Specify number of channels of raw input (default: 2)
-.\"
-.IP "--raw-rate <n>"
+.RS
+.RE
+.TP
+.B --raw-rate <n>
 Specify sample rate of raw input (default: 44100)
 Specify sample rate of raw input (default: 44100)
-.\"
-.IP "--raw-format <spec>"
+.RS
+.RE
+.TP
+.B --raw-format <spec>
 Specify sample format of raw input (default: "S16L").
 Specify sample format of raw input (default: "S16L").
-.B Spec
-is as the following (case insensitive):
-.RS
-.IP "1st char -- type of sample"
-.B S
-(igned) |
-.B U
-(nsigned) |
-.B F
-(loat)
-.IP "2nd part (in digits)"
+\f[B]Spec\f[] is as the following (case insensitive):
+.RS
+.TP
+.B 1st char -- type of sample
+\f[B]S\f[] (igned) | \f[B]U\f[] (nsigned) | \f[B]F\f[] (loat)
+.RS
+.RE
+.TP
+.B 2nd part (in digits)
 bits per channel
 bits per channel
-.IP "Last char -- endianness (can be ommited)
-.B L
-(ittle, default) |
-.B B
-(ig)
-.RE
-.\"
-.IP "--title <string>"
+.RS
+.RE
+.TP
+.B Last char -- endianness (can be ommited)
+\f[B]L\f[] (ittle, default) | \f[B]B\f[] (ig)
+.RS
+.RE
+.RE
+.TP
+.B --title <string>
 Set title tag.
 Set title tag.
-.\"
-.IP "--artist <string>"
+.RS
+.RE
+.TP
+.B --artist <string>
 Set artist tag.
 Set artist tag.
-.\"
-.IP "--album <string>"
+.RS
+.RE
+.TP
+.B --album <string>
 Set album tag.
 Set album tag.
-.\"
-.IP "--genre <string>"
+.RS
+.RE
+.TP
+.B --genre <string>
 Set genre tag.
 Set genre tag.
-.\"
-.IP "--date <string>"
+.RS
+.RE
+.TP
+.B --date <string>
 Set date tag.
 Set date tag.
-.\"
-.IP "--composer <string>"
+.RS
+.RE
+.TP
+.B --composer <string>
 Set composer tag.
 Set composer tag.
-.\"
-.IP "--grouping <string>"
+.RS
+.RE
+.TP
+.B --grouping <string>
 Set grouping tag.
 Set grouping tag.
-.\"
-.IP "--comment <string>"
+.RS
+.RE
+.TP
+.B --comment <string>
 Set comment tag.
 Set comment tag.
-.\"
-.IP "--album-artist <string>"
+.RS
+.RE
+.TP
+.B --album-artist <string>
 Set album artist tag.
 Set album artist tag.
-.\"
-.IP "--track <number[/total]>"
+.RS
+.RE
+.TP
+.B --track <number[/total]>
 Set track tag, with or without number of total tracks.
 Set track tag, with or without number of total tracks.
-.\"
-.IP "--disk <number[/total]>"
+.RS
+.RE
+.TP
+.B --disk <number[/total]>
 Set disk tag, with or without number of total discs.
 Set disk tag, with or without number of total discs.
-.\"
-.IP "--tempo <n>"
+.RS
+.RE
+.TP
+.B --tempo <n>
 Set tempo (BPM) tag.
 Set tempo (BPM) tag.
-.\"
-.IP "--tag <fcc>:<value>"
+.RS
+.RE
+.TP
+.B --tag <fcc>:<value>
 Set iTunes predefined tag with explicit fourcc key and value.
 Set iTunes predefined tag with explicit fourcc key and value.
-.br
 See
 See
-.B
-https://code.google.com/p/mp4v2/wiki/iTunesMetadata
+https://code.google.com/p/mp4v2/wiki/iTunesMetadata (https://code.google.com/p/mp4v2/wiki/iTunesMetadata)
 for known predefined keys.
 for known predefined keys.
-.br
-You can omit first char of
-.B fcc
-when it is the copyright sign.
-.\"
-.IP "--tag-from-file <fcc>:<filename>"
-Same as --tag, but set content of file as tag value.
-.\"
-.IP "--long-tag <name>:<value>"
-Set arbitrary tag as iTunes custom metadata. Stored in com.apple.iTunes field.
-.\"
-.IP "--tag-from-json <filename[?dot_notation]>"
-Read tags from JSON. By default, tags are assumed to be direct children of the
-root object in JSON. Optionary you can speficy arbitrary dot notation to locate
-the object containing tags.
-.\"
-.\"
-.SH EXAMPLES
-.\"
-.PP
-Encode WAV file into a M4A file. MPEG4 AAC LC, VBR quality 3.
+You can omit first char of \f[B]fcc\f[] when it is the copyright sign.
 .RS
 .RS
-fdkaac -m3 foo.wav
 .RE
 .RE
-.\"
-.PP
-Encode WAV file into a M4A file. MPEG4 HE-AAC, bitrate 64kbps.
+.TP
+.B --tag-from-file <fcc>:<filename>
+Same as --tag, but set content of file as tag value.
 .RS
 .RS
-fdkaac -p5 -b64 foo.wav
 .RE
 .RE
-.\"
-.PP
-Piping from
-.B ffmpeg
-(you need version supporting CAF output)
+.TP
+.B --long-tag <name>:<value>
+Set arbitrary tag as iTunes custom metadata.
+Stored in com.apple.iTunes field.
 .RS
 .RS
-ffmpeg -i foo.flac -f caf - | fdkaac -b128 - -o foo.m4a
 .RE
 .RE
-.\"
-.PP
-Import tag using json generated by
-.B (ff|av)probe
+.TP
+.B --tag-from-json <filename[?dot_notation]>
+Read tags from JSON.
+By default, tags are assumed to be direct children of the root object in
+JSON.
+Optionary you can speficy arbitrary dot notation to locate the object
+containing tags.
 .RS
 .RS
-ffprobe -v 0 -of json -show_format foo.flac >foo.json
-.br
-flac -dc foo.flac | fdkaac - -o foo.m4a -b128 --import-tag-from-json foo.json?format.tags
 .RE
 .RE
-.\"
-.\"
+.PP
+\ 
+.SH EXAMPLES
+.PP
+Encode WAV file into a M4A file.
+MPEG4 AAC LC, VBR quality 3:
+.IP
+.nf
+\f[C]
+fdkaac\ -m3\ foo.wav
+\f[]
+.fi
+.PP
+Encode WAV file into a M4A file.
+MPEG4 HE-AAC, bitrate 64kbps:
+.IP
+.nf
+\f[C]
+fdkaac\ -p5\ -b64\ foo.wav
+\f[]
+.fi
+.PP
+Piping from \f[B]ffmpeg\f[] (you need version supporting CAF output):
+.IP
+.nf
+\f[C]
+ffmpeg\ -i\ foo.flac\ -f\ caf\ -\ |\ fdkaac\ -b128\ -\ -o\ foo.m4a
+\f[]
+.fi
+.PP
+Import tags via json:
+.IP
+.nf
+\f[C]
+ffprobe\ -v\ 0\ -of\ json\ -show_format\ foo.flac\ >foo.json
+
+flac\ -dc\ foo.flac\ |\ \\
+fdkaac\ -\ -ox.m4a\ -m2\ --import-tag-from-json=foo.json?format.tags
+\f[]
+.fi
 .SH NOTES
 .SH NOTES
-.\"
 .PP
 Upto 32bit integer or 64bit floating point format is supported as input.
 .PP
 Upto 32bit integer or 64bit floating point format is supported as input.
-However, FDK library is implemented based on fixed point math and only supports 16bit integer PCM. Therefore, be careful of clipping. You might want to
-dither/noise shape beforehand when your input has higher resolution.
-.\"
+However, FDK library is implemented based on fixed point math and only
+supports 16bit integer PCM.
+Therefore, be careful of clipping.
+You might want to dither/noise shape beforehand when your input has
+higher resolution.
 .PP
 Following channel layouts are supported by the encoder.
 .PP
 Following channel layouts are supported by the encoder.
-.RS
-.IP 1ch
+.TP
+.B 1ch
 C
 C
-.IP 2ch
+.RS
+.RE
+.TP
+.B 2ch
 L R
 L R
-.IP 3ch
+.RS
+.RE
+.TP
+.B 3ch
 C L R
 C L R
-.IP 4ch
+.RS
+.RE
+.TP
+.B 4ch
 C L R Cs
 C L R Cs
-.IP 5ch
+.RS
+.RE
+.TP
+.B 5ch
 C L R Ls Rs
 C L R Ls Rs
-.IP 5.1ch
+.RS
+.RE
+.TP
+.B 5.1ch
 C L R Ls Rs LFE
 C L R Ls Rs LFE
-.IP 7.1ch
-C Lc Rc L R Ls Rs LFE (7.1ch front)
-.br
-C L R Ls Rs Rls Rrs LFE (7.1ch rear)
+.RS
+.RE
+.TP
+.B 7.1ch (front)
+C Lc Rc L R Ls Rs LFE
+.RS
+.RE
+.TP
+.B 7.1ch (rear)
+C L R Ls Rs Rls Rrs LFE
+.RS
 .RE
 .RE
-.\"
 .SH AUTHORS
 .SH AUTHORS
-nu774 <honeycomb77@gmail.com>
+nu774 <honeycomb77@gmail.com>.
This page took 0.02845 seconds and 4 git commands to generate.