+
+////////////////////////////////////////////////////////////
+// AAC ENCODERS
+////////////////////////////////////////////////////////////
+
+typedef struct
+{
+ char *const toolName;
+ const char *const fileNames[8];
+ const quint32 toolMinVersion;
+ const quint32 verDigits;
+ const quint32 verShift;
+ const char *const verStr;
+ const char *const regExpVer;
+ const char *const regExpSig;
+}
+aac_encoder_t;
+
+static const aac_encoder_t g_lamexp_aacenc[] =
+{
+ { "NeroAAC", { "neroAacEnc.exe", "neroAacDec.exe", "neroAacTag.exe", NULL }, lamexp_toolver_neroaac(), 4, 10, "v?.?.?.?", "Package\\s+version:\\s+(\\d)\\.(\\d)\\.(\\d)\\.(\\d)", "Nero\\s+AAC\\s+Encoder" },
+ { "FhgAacEnc", { "fhgaacenc.exe", "enc_fhgaac.dll", "nsutil.dll", "libmp4v2.dll", "libsndfile-1.dll", NULL }, lamexp_toolver_fhgaacenc(), 1, 100000000, "????-??-??", "fhgaacenc version (\\d+) by tmkk", NULL },
+ { "FdkAacEnc", { "fdkaac.exe", NULL }, lamexp_toolver_fdkaacenc(), 3, 10, "v?.?.?", "fdkaac\\s+(\\d)\\.(\\d)\\.(\\d)", NULL },
+ { "QAAC", { "qaac.exe", "libsoxr.dll", "libsoxconvolver.dll", NULL }, lamexp_toolver_qaacenc(), 2, 100, "v?.??", "qaac (\\d)\\.(\\d+)", NULL },
+ { "QAACx64", { "qaac64.exe", "libsoxr64.dll", "libsoxconvolver64.dll", NULL }, lamexp_toolver_qaacenc(), 2, 100, "v?.??", "qaac (\\d)\\.(\\d+)", NULL },
+ { NULL, { NULL }, 0, 0, 0, NULL, NULL, NULL }
+};