1 .TH FDKAAC 1 "November, 2013"
4 fdkaac - command line frontend for libfdk-aac encoder \
7 \f[B]fdkaac\f[] [OPTIONS] [FILE]
10 \f[B]fdkaac\f[] reads linear PCM audio in either WAV, raw PCM, or CAF
11 format, and encodes it into either M4A / AAC file.
13 If the input file is "-", data is read from stdin.
14 Likewise, if the output file is "-", data is written to stdout if one of
15 streamable AAC transport formats is selected by \f[B]-f\f[].
17 When CAF input and M4A output is used, tags in CAF file are copied into
33 Target profile (MPEG4 audio object type, AOT)
37 MPEG-4 AAC LC (default)
47 MPEG-4 HE-AAC v2 (SBR+PS)
72 MPEG-2 HE-AAC v2 (SBR+PS)
78 Target bitrate (for CBR)
82 .B -m, --bitrate-mode <n>
83 Bitrate configuration mode.
84 Available VBR quality value depends on other parameters such as profile,
85 sample rate, or number of channels.
94 VBR (higher value -> higher bitrate)
100 Frequency bandwith (lowpass cut-off frequency) in Hz.
101 Available on AAC LC only.
105 .B -a, --afterburner <n>
106 Configure afterburner mode.
107 When enabled, quality is increased at the expense of additional
108 computational workload.
122 .B -L, --lowdelay-sbr <n>
123 Configure SBR activity on AAC ELD.
127 Use ELD SBR auto configuration
132 Disable SBR on ELD (default)
142 .B -s, --sbr-ratio <n>
143 Controls activation of downsampled SBR.
147 Use lib default (default)
152 Use downsampled SBR (default for ELD+SBR)
157 Use dual-rate SBR (default for HE-AAC)
161 Dual-rate SBR is what is normally used for HE-AAC, where AAC is encoded
162 at half the sample rate of SBR, hence "dual rate".
163 On the other hand, downsampled SBR uses same sample rate for both of AAC
164 and SBR (single rate), therefore downsampled SBR typically consumes more
167 Downsampled SBR is newly introduced feature in FDK encoder library
169 When libfdk-aac in the system doesn\[aq]t support this, dual-rate SBR
171 When available, dual-rate SBR is the default for HE-AAC and downsampled
172 SBR is the default for ELD+SBR.
174 Note that downsampled HE-AAC is not so common as dual-rate one.
175 When downsampled HE-AAC is selected, \f[B]fdkaac\f[] is forced to choose
176 explicit hierarchical SBR signaling, which (at least) iTunes doesn\[aq]t
180 .B -f, --transport-format <n>
182 Tagging and gapless playback is only available on M4A.
183 Streaming to stdout is only available on others.
212 LOAS/LATM (LATM within LOAS)
217 .B -C, --adts-crc-check
218 Add CRC protection on ADTS header.
222 .B -h, --header-period <n>
223 StreamMuxConfig/PCE repetition period in transport layer.
227 .B -G, --gapless-mode <n>
228 Method to declare amount of encoder delay (and padding) in M4A
230 These values are mandatory for proper gapless playback on player side.
239 ISO standard (edts and sgpd)
249 .B --include-sbr-delay
250 When specified, count SBR decoder delay in encoder delay.
253 This is not iTunes compatible and will lead to gapless playback issue on
254 LC only decoder, but this is the default behavior of FDK library.
256 Whether counting SBR decoder delay in encoder delay or not result in
257 incompatibility in gapless playback.
258 You should pick which one will work for your favorite player.
260 However, it\[aq]s better not to choose SBR at all if you want gapless
262 LC doesn\[aq]t have such issues.
265 .B -I, --ignorelength
266 Ignore length field of data chunk in input WAV file.
271 Don\[aq]t print progress messages.
275 .B --moov-before-mdat
276 Place moov box before mdat box in M4A container.
277 This option might be important for some hardware players, that are known
278 to refuse moov box placed after mdat box.
283 Regard input as raw PCM.
287 .B --raw-channels <n>
288 Specify number of channels of raw input (default: 2)
293 Specify sample rate of raw input (default: 44100)
297 .B --raw-format <spec>
298 Specify sample format of raw input (default: "S16L").
299 \f[B]Spec\f[] is as the following (case insensitive):
302 .B 1st char -- type of sample
303 \f[B]S\f[] (igned) | \f[B]U\f[] (nsigned) | \f[B]F\f[] (loat)
307 .B 2nd part (in digits)
312 .B Last char -- endianness (can be ommited)
313 \f[B]L\f[] (ittle, default) | \f[B]B\f[] (ig)
343 .B --composer <string>
348 .B --grouping <string>
353 .B --comment <string>
358 .B --album-artist <string>
359 Set album artist tag.
363 .B --track <number[/total]>
364 Set track tag, with or without number of total tracks.
368 .B --disk <number[/total]>
369 Set disk tag, with or without number of total discs.
378 .B --tag <fcc>:<value>
379 Set iTunes predefined tag with explicit fourcc key and value.
381 https://code.google.com/p/mp4v2/wiki/iTunesMetadata (https://code.google.com/p/mp4v2/wiki/iTunesMetadata)
382 for known predefined keys.
383 You can omit first char of \f[B]fcc\f[] when it is the copyright sign.
387 .B --tag-from-file <fcc>:<filename>
388 Same as --tag, but set content of file as tag value.
392 .B --long-tag <name>:<value>
393 Set arbitrary tag as iTunes custom metadata.
394 Stored in com.apple.iTunes field.
398 .B --tag-from-json <filename[?dot_notation]>
400 By default, tags are assumed to be direct children of the root object in
402 Optionary you can speficy arbitrary dot notation to locate the object
410 Encode WAV file into a M4A file.
411 MPEG4 AAC LC, VBR quality 3:
419 Encode WAV file into a M4A file.
420 MPEG4 HE-AAC, bitrate 64kbps:
424 fdkaac\ -p5\ -b64\ foo.wav
428 Piping from \f[B]ffmpeg\f[] (you need version supporting CAF output):
432 ffmpeg\ -i\ foo.flac\ -f\ caf\ -\ |\ fdkaac\ -b128\ -\ -o\ foo.m4a
436 Import tags via json:
440 ffprobe\ -v\ 0\ -of\ json\ -show_format\ foo.flac\ >foo.json
442 flac\ -dc\ foo.flac\ |\ \\
443 fdkaac\ -\ -ox.m4a\ -m2\ --import-tag-from-json=foo.json?format.tags
448 Upto 32bit integer or 64bit floating point format is supported as input.
449 However, FDK library is implemented based on fixed point math and only
450 supports 16bit integer PCM.
451 Therefore, be careful of clipping.
452 You might want to dither/noise shape beforehand when your input has
455 Following channel layouts are supported by the encoder.
488 C Lc Rc L R Ls Rs LFE
493 C L R Ls Rs Rls Rrs LFE
497 nu774 <honeycomb77@gmail.com>.