Author Topic: Is there a way to use FDK-AAC in the conversion tool?  (Read 8657 times)

HardKoreG

  • Guest
Like the title says, I would like to use FDK instead of Nero. I have the exe from another program that uses it, but don't know how to setup the encoding parameters in the options menu. Is it even possible?

Zak

  • Global Moderator
  • Sr. Member
  • *****
  • Posts: 2459
You can use any command line encoder in MusicBee as long you can work out the parameters and it accepts input from the standard input stream.
Try running it from a command prompt with a parameter like "-h" or "/?" to see if it gives a list of command line options.
Bee excellent to each other...

HardKoreG

  • Guest
This is what shows up. What exactly do I enter into the encoding parameters in MusicBee?

C:\Program Files (x86)\MusicBee\Codec>fdkaac.exe
fdkaac 0.5.3
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
                               129: MPEG-2 AAC LC
                               132: MPEG-2 HE-AAC (SBR)
                               156: MPEG-2 HE-AAC v2 (SBR+PS)
 -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

C:\Program Files (x86)\MusicBee\Codec>

Steven

  • Administrator
  • Sr. Member
  • *****
  • Posts: 34362
<any options you want> -o [outputfile] -

the "-" at the end allows musicbee to feed data to the encoder


Zak

  • Global Moderator
  • Sr. Member
  • *****
  • Posts: 2459
I have the exe from another program that uses it...
Out of curiosity, which other program did you get it from?
The compiled executable isn't meant to be distributed because of licensing restrictions.
Bee excellent to each other...

HardKoreG

  • Guest

Mr. Trev

  • Sr. Member
  • ****
  • Posts: 459
Could you post exactly the commands you used. I also got the fdk codec (from dbpoweramp though) and would like to give it a try, except I'm clueless when it comes to command line stuff.

HardKoreG

  • Guest

Zak

  • Global Moderator
  • Sr. Member
  • *****
  • Posts: 2459
I haven't tried, so if it's working "as is" don't worry too much.

However, just to be safe I'd include the "-I" option, which is a pretty standard option in any encoder where you're not actually specifying a WAV file as input.
Bee excellent to each other...

Mr. Trev

  • Sr. Member
  • ****
  • Posts: 459
The guys at dbpoweramp had a great tip about using the cdripper to set fdk (or anything else) as default coder and then looking it up in the registry.
I ended up using: -b 320000 -w 22050 -p 2 --ignorelength -S -o [outputfile] -.
The only prob is that after I convert and transfer the file to my sony mp3 player all the tracks show with a time of 0:00 and other tag issues. But from what I remember neroaac did the same, and since they still work perfectly on the sony, I won't complain.
Cheers.

Zak

  • Global Moderator
  • Sr. Member
  • *****
  • Posts: 2459
The guys at dbpoweramp had a great tip about using the cdripper to set fdk (or anything else) as default coder and then looking it up in the registry.
I ended up using: -b 320000 -w 22050 -p 2 --ignorelength -S -o [outputfile] -.
If VBR is not officially supported I can see why you might want 320kbps CBR, but why a sample rate of 22kHz instead of 44.1kHz?  ???
Bee excellent to each other...

Mr. Trev

  • Sr. Member
  • ****
  • Posts: 459
I think the 22050 is supposed to specify the upper frequency limit as opposed to sample rate. I will check the converted files to be sure.

Just checked....the files do have a sample rate of 44.1khz. I imagine if I used -w 44100 then I'd probably get files with a sample rate of 88.2khz
Last Edit: May 20, 2014, 10:36:15 PM by Mr. Trev