fdkaac(1)


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

          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, --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>  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

AUTHORS

   nu774 <honeycomb77@gmail.com>.

                            November, 2013                       FDKAAC(1)





Opportunity


Personal Opportunity - Free software gives you access to billions of dollars of software at no cost. Use this software for your business, personal use or to develop a profitable skill. Access to source code provides access to a level of capabilities/information that companies protect though copyrights. Open source is a core component of the Internet and it is available to you. Leverage the billions of dollars in resources and capabilities to build a career, establish a business or change the world. The potential is endless for those who understand the opportunity.

Business Opportunity - Goldman Sachs, IBM and countless large corporations are leveraging open source to reduce costs, develop products and increase their bottom lines. Learn what these companies know about open source and how open source can give you the advantage.





Free Software


Free Software provides computer programs and capabilities at no cost but more importantly, it provides the freedom to run, edit, contribute to, and share the software. The importance of free software is a matter of access, not price. Software at no cost is a benefit but ownership rights to the software and source code is far more significant.


Free Office Software - The Libre Office suite provides top desktop productivity tools for free. This includes, a word processor, spreadsheet, presentation engine, drawing and flowcharting, database and math applications. Libre Office is available for Linux or Windows.





Free Books


The Free Books Library is a collection of thousands of the most popular public domain books in an online readable format. The collection includes great classical literature and more recent works where the U.S. copyright has expired. These books are yours to read and use without restrictions.


Source Code - Want to change a program or know how it works? Open Source provides the source code for its programs so that anyone can use, modify or learn how to write those programs themselves. Visit the GNU source code repositories to download the source.





Education


Study at Harvard, Stanford or MIT - Open edX provides free online courses from Harvard, MIT, Columbia, UC Berkeley and other top Universities. Hundreds of courses for almost all major subjects and course levels. Open edx also offers some paid courses and selected certifications.


Linux Manual Pages - A man or manual page is a form of software documentation found on Linux/Unix operating systems. Topics covered include computer programs (including library and system calls), formal standards and conventions, and even abstract concepts.