VideoHelp Forum




+ Reply to Thread
Results 1 to 11 of 11
  1. Thanks for reading my topic.
    I not see in Linux an easy way to convert to HE-AAC. ffmpeg and nvencc not has HE-AAC.
    Have any software or dependencie to allow convert to HE-AAC ?

    Have an nice week.
    Quote Quote  
  2. Member
    Join Date
    Feb 2006
    Location
    United States
    Search Comp PM
    Originally Posted by Aug View Post
    Thanks for reading my topic.
    I not see in Linux an easy way to convert to HE-AAC. ffmpeg and nvencc not has HE-AAC.
    Have any software or dependencie to allow convert to HE-AAC ?

    Have an nice week.
    try this -
    Prerequisites:

    Install FFmpeg:
    If you don't have FFmpeg installed, you can typically install it using your distribution's package manager. For example:
    Debian/Ubuntu: sudo apt install ffmpeg
    Fedora: sudo dnf install ffmpeg
    Arch Linux: sudo pacman -S ffmpeg
    Ensure libfdk_aac support:
    The libfdk_aac encoder provides HE-AAC support. In some distributions, this might require a separate installation or compiling FFmpeg with libfdk_aac enabled due to licensing restrictions. Check your distribution's documentation or search for "install libfdk_aac ffmpeg [your_distribution]" if you encounter issues.

    Conversion Command:
    Once FFmpeg is set up with libfdk_aac, you can use the following command structure to convert an audio file to HE-AAC:
    Code

    ffmpeg -i input.mp3 -c:a libfdk_aac -profile:a aac_he -b:a 64k output.m4a

    Explanation of parameters:

    -i input.mp3: Specifies the input audio file (replace input.mp3 with your file).
    -c:a libfdk_aac: Selects the libfdk_aac codec for audio encoding.
    -profile:a aac_he: Specifies the HE-AAC profile. You can also use aac_he_v2 for HE-AAC v2, which offers better performance at very low bitrates and supports 2+ channels.
    -b:a 64k: Sets the audio bitrate to 64 kbps. Adjust this value as needed; HE-AAC is designed for efficient encoding at lower bitrates.
    output.m4a: Specifies the output file name and format (typically .m4a for AAC).

    Example for HE-AAC v2:
    Code

    ffmpeg -i input.wav -c:a libfdk_aac -profile:a aac_he_v2 -b:a 32k output_hev2.m4a

    Note: While libfdk_aac is generally considered a high-quality AAC encoder, always verify the compatibility of HE-AAC with your target playback devices, as some older hardware might not fully support it.
    Quote Quote  
  3. You can enable HE-AAC in ffmpeg by installing libfdk_aac, compile ffmpeg with --enable-libfdk_aac, then use -c:a libfdk_aac -profile:a aac_he for proper HE-AAC conversion.
    Quote Quote  
  4. Thanks for all replies.
    In moment not is possible for me test how compile ffmpeg. I only use ffmpeg4 and the current version in Ubuntu repository not does HE-AAC.
    HE-AAC has better quality than AAC and Opus ?
    HE-AAC file size save is irrevelant if compared with AAC ?
    Quote Quote  
  5. Member Kakujitsu's Avatar
    Join Date
    Jun 2011
    Location
    United States
    Search Comp PM
    Audacity with the
    FFmpeg Library.

    Code:
    sudo apt-get install audacity
    Also Opus has better quality at the same bitrates.
    Last edited by Kakujitsu; 2nd Nov 2025 at 09:35. Reason: Adding to.
    Quote Quote  
  6. Mr. Computer Geek dannyboy48888's Avatar
    Join Date
    May 2007
    Location
    Texas, USA
    Search Comp PM
    Fdkaac has a standalone enocder. If you can't compile you can use ffmpeg to make a wav and feed it to fdkaac
    if all else fails read the manual
    Quote Quote  
  7. Thanks for all replies.

    @dannyboy48888
    Thanks for saying about fdkacc, but the software is only windows. Here is Linux.

    I see have better and more simple alternatives than HE-AAC.
    Opus is better than HE-AAC ?
    How is the compatibility of Opus with current TVs ? Have issues or is compatible with any TV in market ?
    I only want convert videos with audio stream if possible using the less size with good quality and see AAC not is exactly the correct choice.
    Quote Quote  
  8. Mr. Computer Geek dannyboy48888's Avatar
    Join Date
    May 2007
    Location
    Texas, USA
    Search Comp PM
    I'm in Debian. https://packages.debian.org/trixie/fdkaac far as comparability android tvs that can install VLC will have no issues with opus. He-aac worse case will only decode the base layer on base devices (think early Blu-ray players with USB) For most compatibly use lc-aac or mp3
    Last edited by dannyboy48888; 6th Nov 2025 at 20:46.
    if all else fails read the manual
    Quote Quote  
  9. Member
    Join Date
    Mar 2003
    Location
    somewhere in time
    Search Comp PM
    its so easy to compile ffmpeg in ubuntu, if you want i can send you a link to do it.
    Quote Quote  
  10. DECEASED
    Join Date
    Jun 2009
    Location
    Heaven
    Search Comp PM
    It should be even easier to compile the standalone executable fdkaac.

    Code:
    fdkaac 1.0.0
    Usage: fdkaac [options] input_file
    Options:
     -h, --help                    Print this help message
     -p, --profile <n>             Profile (audio object type)
                                     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>             Bitrate in bits per seconds (for CBR)
     -m, --bitrate-mode <n>        Bitrate configuration
                                     0: CBR (default)
                                     1-5: VBR
                                   (VBR mode is not officially supported, and
                                    works only on a certain combination of
                                    parameter settings, sample rate, and
                                    channel configuration)
     -w, --bandwidth <n>           Frequency bandwidth in Hz (AAC LC only)
     -a, --afterburner <n>         Afterburner
                                     0: Off
                                     1: On(default)
     -L, --lowdelay-sbr <-1|0|1>   Configure SBR activity on AAC ELD
                                    -1: Use ELD SBR auto configurator
                                     0: Disable SBR on ELD (default)
                                     1: Enable SBR on ELD
     -s, --sbr-ratio <0|1|2>       Controls activation of downsampled SBR
                                     0: Use lib default (default)
                                     1: downsampled SBR (default for ELD+SBR)
                                     2: dual-rate SBR (default for HE-AAC)
     -f, --transport-format <n>    Transport format
                                     0: RAW (default, muxed into M4A)
                                     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
    
     -o <filename>                 Output filename
     -G, --gapless-mode <n>        Encoder delay signaling for gapless playback
                                     0: iTunSMPB (default)
                                     1: ISO standard (edts + sgpd)
                                     2: Both
     --include-sbr-delay           Count SBR decoder delay in encoder delay
                                   This is not iTunes compatible, but is default
                                   behavior of FDK library.
     -I, --ignorelength            Ignore length of WAV header
     -S, --silent                  Don't print progress messages
     --moov-before-mdat            Place moov box before mdat box on m4a output
    
    Options for raw (headerless) input:
     -R, --raw                     Treat input as raw (by default WAV is
                                   assumed)
     --raw-channels <n>            Number of channels (default: 2)
     --raw-rate     <n>            Sample rate (default: 44100)
     --raw-format   <spec>         Sample format, default is "S16L".
                                   Spec is as follows:
                                    1st char: S(igned)|U(nsigned)|F(loat)
                                    2nd part: bits per channel
                                    Last char: L(ittle)|B(ig)
                                   Last char can be omitted, in which case L is
                                   assumed. Spec is case insensitive, therefore
                                   "u16b" is same as "U16B".
    
    Tagging options:
     --title <string>
     --artist <string>
     --album <string>
     --genre <string>
     --date <string>
     --composer <string>
     --grouping <string>
     --comment <string>
     --album-artist <string>
     --track <number[/total]>
     --disk <number[/total]>
     --tempo <n>
     --tag <fcc>:<value>          Set iTunes predefined tag with four char code.
     --tag-from-file <fcc>:<filename>
                                  Same as above, but value is read from file.
     --long-tag <name>:<value>    Set arbitrary tag as iTunes custom metadata.
     --tag-from-json <filename[?dot_notation]>
                                  Read tags from JSON. By default, tags are
                                  assumed to be direct children of the root
                                  object(dictionary).
                                  Optionally, position of the dictionary
                                  that contains tags can be specified with
                                  dotted notation.
                                  Example:
                                    --tag-from-json /path/to/json?format.tags
    "Programmers are human-shaped machines that transform alcohol into bugs."
    Quote Quote  
  11. Might be a silly question, but is fdkaac available in your repository? I'm running MX Linux and it's available in the Debian repository.

    You could always install Wine and run any Windows encoder that way.
    Either install it yourself (you should also install WineTricks to make working with Wine a little easier), or another method might be to install PlayOnLinux. You could use it's File/Install menu and type foobar2000 into the search box in the window that opens. PlayOnLinux should step you through the process of creating a Wine prefix, downloading the foobar2000 installer and installing it in Wine. Foobar2000's converter can be used with any command line encoder, and it includes a GUI for creating conversion presets for roughly a dozen different audio encoders, including FDK AAC (see the screenshot below). It doesn't come with fdkaac.exe, but you can download it yourself and tell foobar2000 where to find it. I'm running foobar2000 in Wine, along with several other Windows programs.

    Image
    [Attachment 89661 - Click to enlarge]
    Quote Quote  



Similar Threads

Visit our sponsor! Try DVDFab and backup Blu-rays!