Permalink
Cannot retrieve contributors at this time
| % 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 are 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 | |
| -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, --bandwidth \<n\> | |
| : Frequency bandwidth (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 the 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 omitted) | |
| : **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. Optionally you can specify | |
| 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 wary 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 | |