Skip to main content

Notice

Please note that most of the software linked on this forum is likely to be safe to use. If you are unsure, feel free to ask in the relevant topics, or send a private message to an administrator or moderator. To help curb the problems of false positives, or in the event that you do find actual malware, you can contribute through the article linked here.
Topic: qtaacenc: a command-line QuickTime AAC encoder for Windows (Read 398659 times) previous topic - next topic
0 Members and 1 Guest are viewing this topic.

qtaacenc: a command-line QuickTime AAC encoder for Windows

Reply #275
I had an older version of qtaacenc. That's why there wasn't information about version of encoders.

Now it says like
Using QuickTime 7.6.8 (LC-AAC encoder 1.7.2, HE-AAC encoder 1.2.1)

CoreAudioToolbox.dll is 7.9.3.0

 

qtaacenc: a command-line QuickTime AAC encoder for Windows

Reply #276
Then going for the latest encoders version via CoreAudioToolbox.dll v7.9.3.0 we get the higher bitrates for TVBR but are stuck with the lowpass bug for 96 Kbps encodes?

EDIT: Installing QT v7.7 and placing CoreAudioToolbox.dll v7.9.3.0 in qtaacenc's directory my system reports the latest QuickTime CoreFoundation library (QTCF.dll) v7.70.80.34 is being used and qtaacenc outputs "Using QuickTime 7.7.0 (LC-AAC encoder 1.7.2, HE-AAC encoder 1.2.1)", is that the ideal setup or is it just the CoreAudioToolbox library the one that matters?

EDIT2:
Code: [Select]
D:\TEST\qtaacenc-20110816>qtaacenc.exe --tvbr 46 --highest --samplerate keep TEST.wav TEST96QT768.m4a
Using QuickTime 7.7.0 (LC-AAC encoder 1.7.2, HE-AAC encoder 1.2.1)
Configurations: True VBR quality 46, Highest quality profile, keep Hz
Progress: 100%

D:\TEST\qtaacenc-20110816>mediainfo TEST96QT768.m4a
General
Complete name                    : TEST96QT768.m4a
Format                           : MPEG-4
Format profile                   : Base Media / Version 2
Codec ID                         : mp42
File size                        : 2.11 MiB
Duration                         : 2mn 47s
Overall bit rate                 : 106 Kbps
Encoded date                     : UTC 2011-08-29 13:11:39
Tagged date                      : UTC 2011-08-29 13:11:39
Writing application              : qtaacenc 20110816, QuickTime 7.7.0, True VBR Quality 46
Encoding Params                  : (Binary)

Audio
ID                               : 1
Format                           : AAC
Format/Info                      : Advanced Audio Codec
Format profile                   : LC
Codec ID                         : 40
Duration                         : 2mn 47s
Bit rate mode                    : Variable
Bit rate                         : 104 Kbps
Maximum bit rate                 : 130 Kbps
Channel(s)                       : 2 channels
Channel positions                : Front: L R
Sampling rate                    : 44.1 KHz
Compression mode                 : Lossy
Stream size                      : 2.07 MiB (98%)
Language                         : English
Encoded date                     : UTC 2011-08-29 13:11:29
Tagged date                      : UTC 2011-08-29 13:11:39

D:\TEST\qtaacenc-20110816>qtaacenc.exe --tvbr 46 --highest --samplerate keep TEST.wav TEST96QT770.m4a
Using QuickTime 7.7.0 (LC-AAC encoder 1.7.1, HE-AAC encoder 1.2.0)
Configurations: True VBR quality 46, Highest quality profile, keep Hz
Progress: 100%

D:\TEST\qtaacenc-20110816>mediainfo TEST96QT770.m4a
General
Complete name                    : TEST96QT770.m4a
Format                           : MPEG-4
Format profile                   : Base Media / Version 2
Codec ID                         : mp42
File size                        : 1.98 MiB
Duration                         : 2mn 47s
Overall bit rate                 : 99.0 Kbps
Encoded date                     : UTC 2011-08-29 13:12:23
Tagged date                      : UTC 2011-08-29 13:12:23
Writing application              : qtaacenc 20110816, QuickTime 7.7.0, True VBR Quality 46
Encoding Params                  : (Binary)

Audio
ID                               : 1
Format                           : AAC
Format/Info                      : Advanced Audio Codec
Format profile                   : LC
Codec ID                         : 40
Duration                         : 2mn 47s
Bit rate mode                    : Variable
Bit rate                         : 96.0 Kbps
Maximum bit rate                 : 125 Kbps
Channel(s)                       : 2 channels
Channel positions                : Front: L R
Sampling rate                    : 44.1 KHz
Compression mode                 : Lossy
Stream size                      : 1.93 MiB (98%)
Language                         : English
Encoded date                     : UTC 2011-08-29 13:12:14
Tagged date                      : UTC 2011-08-29 13:12:23

Bit rates differ but sampling rates don't, does it mean the lowpass was not performed?

EDIT3:
Code: [Select]
D:\TEST\qtaacenc-20110816>qtaacenc.exe --tvbr 40 --highest TEST.wav TEST_Q40_QT768_NoKeep.m4a
Using QuickTime 7.7.0 (LC-AAC encoder 1.7.2, HE-AAC encoder 1.2.1)
Configurations: True VBR quality 40, Highest quality profile, auto Hz
Progress: 100%

D:\TEST\qtaacenc-20110816>mediainfo TEST_Q40_QT768_NoKeep.m4a
General
Complete name                    : TEST_Q40_QT768_NoKeep.m4a
Format                           : MPEG-4
Format profile                   : Base Media / Version 2
Codec ID                         : mp42
File size                        : 1.70 MiB
Duration                         : 2mn 47s
Overall bit rate                 : 85.0 Kbps
Encoded date                     : UTC 2011-08-29 14:05:03
Tagged date                      : UTC 2011-08-29 14:05:03
Writing application              : qtaacenc 20110816, QuickTime 7.7.0, True VBR Quality 40
Encoding Params                  : (Binary)

Audio
ID                               : 1
Format                           : AAC
Format/Info                      : Advanced Audio Codec
Format profile                   : LC
Codec ID                         : 40
Duration                         : 2mn 47s
Bit rate mode                    : Variable
Bit rate                         : 83.4 Kbps
Maximum bit rate                 : 121 Kbps
Channel(s)                       : 2 channels
Channel positions                : Front: L R
Sampling rate                    : 32.0 KHz
Compression mode                 : Lossy
Stream size                      : 1.66 MiB (98%)
Language                         : English
Encoded date                     : UTC 2011-08-29 14:04:54
Tagged date                      : UTC 2011-08-29 14:05:03

D:\TEST\qtaacenc-20110816>qtaacenc.exe --tvbr 40 --highest TEST.wav TEST_Q40_QT770_NoKeep.m4a
Using QuickTime 7.7.0 (LC-AAC encoder 1.7.1, HE-AAC encoder 1.2.0)
Configurations: True VBR quality 40, Highest quality profile, auto Hz
Progress: 100%

D:\TEST\qtaacenc-20110816>mediainfo TEST_Q40_QT770_NoKeep.m4a
General
Complete name                    : TEST_Q40_QT770_NoKeep.m4a
Format                           : MPEG-4
Format profile                   : Base Media / Version 2
Codec ID                         : mp42
File size                        : 1.50 MiB
Duration                         : 2mn 47s
Overall bit rate                 : 75.1 Kbps
Encoded date                     : UTC 2011-08-29 14:00:42
Tagged date                      : UTC 2011-08-29 14:00:42
Writing application              : qtaacenc 20110816, QuickTime 7.7.0, True VBR Quality 40
Encoding Params                  : (Binary)

Audio
ID                               : 1
Format                           : AAC
Format/Info                      : Advanced Audio Codec
Format profile                   : LC
Codec ID                         : 40
Duration                         : 2mn 47s
Bit rate mode                    : Variable
Bit rate                         : 73.5 Kbps
Maximum bit rate                 : 105 Kbps
Channel(s)                       : 2 channels
Channel positions                : Front: L R
Sampling rate                    : 32.0 KHz
Compression mode                 : Lossy
Stream size                      : 1.47 MiB (98%)
Language                         : English
Encoded date                     : UTC 2011-08-29 14:00:32
Tagged date                      : UTC 2011-08-29 14:00:42

@ IgorC: both CoreAudioToolbox.dll v7.9.3.0 and CoreAudioToolbox.dll v7.9.7.3 behave identically towards Steve Forte Rio's founding of Steve Forte Rio's post #145, is that the lowpass bug you're referring to please?

Also, sorry if I'm maybe spamming a bit, just trying to understand what's the best/proper setup.
WavPack 5.6.0 -b384hx6cmv / qaac64 2.80 -V 100

qtaacenc: a command-line QuickTime AAC encoder for Windows

Reply #277
Only CoreAudioToolbox matters.

CVBR with QuickTime 7.7  is another option. Constrained VBR does its work well actually. It has slightly larger files but it doesn't go that low (nor high) as TVBR.
TVBR and CVBR are more like slightly different bitrates settings (for practical purpose). --tvbr 46 produces  95-96 kbps and --cvbr 96  does 100 kbps. That's all.

qtaacenc: a command-line QuickTime AAC encoder for Windows

Reply #278
@ IgorC: I see, thanks, can you please check out my last two edits to the same post?
WavPack 5.6.0 -b384hx6cmv / qaac64 2.80 -V 100

qtaacenc: a command-line QuickTime AAC encoder for Windows

Reply #279
both CoreAudioToolbox.dll v7.9.3.0 and CoreAudioToolbox.dll v7.9.7.3 behave identically towards Steve Forte Rio's founding of Steve Forte Rio's post #145, is that the lowpass bug you're referring to please?

Yes, it's the same bug.
This bug was fixed in  QuickTime 7.6.9.

CoreAudioToolbox.dll from older versions of QuickTime (7.6.8 and older) have this bug at 80-96-112 kbps.

You can check it for yourself. Open the file in any wav editor and appropriate lowpass should be there at 15.7 kHz (for 96 kbps settings).

qtaacenc: a command-line QuickTime AAC encoder for Windows

Reply #280
You've lost me there: the CoreAudioToolbox.dll v7.9.7.3 encodes I've done with an untouched QuickTime 7.7 install so they shouldn't be affected by the lowpass bug for TVBR at low bit rates since it was fixed in QuickTime v7.6.9, no?
EDIT: Lowpass is there at around 15,7 KHz for the CoreAudioToolbox.dll v7.9.7.3 encodes and is absent for CoreAudioToolbox.dll v7.9.3.0 ones, checked with Nero Wave Editor (the only tool available at work):

One more clarification please: the lowpass bug is not related to the downsampling from 44.1 KHz to 32.0 KHz not being performed in conjunction with the --samplerate keep switch, is it?
WavPack 5.6.0 -b384hx6cmv / qaac64 2.80 -V 100

qtaacenc: a command-line QuickTime AAC encoder for Windows

Reply #281
You've lost me there: the CoreAudioToolbox.dll v7.9.7.3 encodes I've done with an untouched QuickTime 7.7 install so they shouldn't be affected by the lowpass bug for TVBR at low bit rates since it was fixed in QuickTime v7.6.9, no?

Right.

EDIT: Lowpass is there at around 15,7 KHz for the CoreAudioToolbox.dll v7.9.7.3 encodes and is absent for CoreAudioToolbox.dll v7.9.3.0 ones, checked with Nero Wave Editor (the only tool available at work)

Right too.

One more clarification please: the lowpass bug is not related to the downsampling from 44.1 KHz to 32.0 KHz not being performed in conjunction with the --samplerate keep switch, is it?

Correct.
The lowpass at 15.7 kHz and downsampling from 44.1 to 32 kHz are two different things .

Both  files ( QT 7.6.9 and 7.6.8) have the same samplerate 44.1 kHz  if  "--samplerate keep"  is here.  But only 7.6.9 applies the lowpass correctly. 


with "--samplerate keep" for 80-96-112 kbps (both CVBR/TVBR):
QT 7.6.8 ( samplerate 44.1 kHz, lowpass is disabled because of bug)
QT 7.6.9 ( samplerate 44.1 kHz, lowpass is correct at 15.7 kHz).

qtaacenc: a command-line QuickTime AAC encoder for Windows

Reply #282
IIRC "--samplerate keep" is not necessary for QT 7.6.9 and 7.7.

qtaacenc: a command-line QuickTime AAC encoder for Windows

Reply #283
IIRC "--samplerate keep" is not necessary for QT 7.6.9 and 7.7.

ok.

BTW I've downloaded QuickTime 7.6.5 and it has no CoreAudioToolbox.dll . Probably there should be another .dll.

qtaacenc: a command-line QuickTime AAC encoder for Windows

Reply #284
CoreAudioToolbox.dll has been updated to 7.9.7.7 with the release of iTunes 10.5 beta 7.

qtaacenc: a command-line QuickTime AAC encoder for Windows

Reply #285
^^  does it fix the channels bug?

qtaacenc: a command-line QuickTime AAC encoder for Windows

Reply #286


Encoders version same as QT 7.7 much like bit rates.

Code: [Select]
D:\TEST\qtaacenc-20110816>qtaacenc.exe --tvbr 40 --highest --samplerate keep TEST.wav TEST_Q40_IT105B7.m4a
Using QuickTime 7.7.0 (LC-AAC encoder 1.7.1, HE-AAC encoder 1.2.0)
Configurations: True VBR quality 40, Highest quality profile, keep Hz
Progress: 100%

D:\TEST\qtaacenc-20110816>mediainfo TEST_Q40_IT105B7.m4a
General
Complete name                    : TEST_Q40_IT105B7.m4a
Format                           : MPEG-4
Format profile                   : Base Media / Version 2
Codec ID                         : mp42
File size                        : 1.51 MiB
Duration                         : 2mn 47s
Overall bit rate                 : 75.7 Kbps
Encoded date                     : UTC 2011-09-01 08:37:37
Tagged date                      : UTC 2011-09-01 08:37:37
Writing application              : qtaacenc 20110816, QuickTime 7.7.0, True VBR Quality 40
Encoding Params                  : (Binary)

Audio
ID                               : 1
Format                           : AAC
Format/Info                      : Advanced Audio Codec
Format profile                   : LC
Codec ID                         : 40
Duration                         : 2mn 47s
Bit rate mode                    : Variable
Bit rate                         : 73.6 Kbps
Maximum bit rate                 : 105 Kbps
Channel(s)                       : 2 channels
Channel positions                : Front: L R
Sampling rate                    : 44.1 KHz
Compression mode                 : Lossy
Stream size                      : 1.47 MiB (97%)
Language                         : English
Encoded date                     : UTC 2011-09-01 08:37:27
Tagged date                      : UTC 2011-09-01 08:37:37

Lowpass is there.



EDIT: Bit rates part.
WavPack 5.6.0 -b384hx6cmv / qaac64 2.80 -V 100

qtaacenc: a command-line QuickTime AAC encoder for Windows

Reply #287
can anybody upload the new CoreAudioToolbox.dll v7.9.7.7? (use m u l t i u p l o a d . c o m )
_


qtaacenc: a command-line QuickTime AAC encoder for Windows

Reply #289
Can anyone verify that the channel mapping issue is fixed with this new version?

qtaacenc: a command-line QuickTime AAC encoder for Windows

Reply #290
Sorry, but I am confused:
Which dll respectively which encoder versions do we want:

Using QuickTime 7.7.0 (LC-AAC encoder 1.7.2, HE-AAC encoder 1.2.1)  == dll 7.9.3.0
or
Using QuickTime 7.7.0 (LC-AAC encoder 1.7.1, HE-AAC encoder 1.2.0) == dll 7.9.3.3

qtaacenc: a command-line QuickTime AAC encoder for Windows

Reply #291
Sorry, but I am confused:
Which dll respectively which encoder versions do we want:

Using QuickTime 7.7.0 (LC-AAC encoder 1.7.2, HE-AAC encoder 1.2.1)  == dll 7.9.3.0
or
Using QuickTime 7.7.0 (LC-AAC encoder 1.7.1, HE-AAC encoder 1.2.0) == dll 7.9.3.3
Depends on the quality level you want to use, if you go for a bit rate unaffected by the lowpass bug like I'm doing you may prefer the earlier version of the DLL with the higher version of the encoders which produce higher bit rates, see IgorC's clarifications.
WavPack 5.6.0 -b384hx6cmv / qaac64 2.80 -V 100


qtaacenc: a command-line QuickTime AAC encoder for Windows

Reply #293
Can anyone verify that the channel mapping issue is fixed with this new version?

It's not fixed.


i am willing to bet that there will be no fix for this in the future...if you don't want to mess with .dll's you could pipe a remuxed channel version of your .wav:

Code: [Select]
eac3to 012345_6channel.wav stdout.wav -2,0,1,4,5,3 | qtaacenc [options] --ignorelength - proper_6channel.m4a

or

sox ??no?dither ??ignore-length 012345_6channel.wav ??type wav - remix 3 1 2 5 6 4 | qtaacenc [options] --ignorelength - proper_6channel.m4a

_

qtaacenc: a command-line QuickTime AAC encoder for Windows

Reply #294
I wonder is it possible to add --remix option (similar to 'remix' effect in SoX) to qtaacenc / qaac itself?

qtaacenc: a command-line QuickTime AAC encoder for Windows

Reply #295
Can anyone verify that the channel mapping issue is fixed with this new version?

It's not fixed.


i am willing to bet that there will be no fix for this in the future...if you don't want to mess with .dll's you could pipe a remuxed channel version of your .wav:

Code: [Select]
eac3to 012345_6channel.wav stdout.wav -2,0,1,4,5,3 | qtaacenc [options] --ignorelength - proper_6channel.m4a

or

sox ??no?dither ??ignore-length 012345_6channel.wav ??type wav - remix 3 1 2 5 6 4 | qtaacenc [options] --ignorelength - proper_6channel.m4a

_



Very cool, I will give that a shot.

qtaacenc: a command-line QuickTime AAC encoder for Windows

Reply #296
About portability: according to procmon.exe, qtaacenc loads the following DLLs:

Code: [Select]
C:\Program Files (x86)\QuickTime\QTSystem\QuickTime.qts
C:\Program Files (x86)\QuickTime\QTSystem\QTCF.dll
C:\Program Files (x86)\Common Files\Apple\Apple Application Support\CoreFoundation.dll
C:\Program Files (x86)\Common Files\Apple\Apple Application Support\pthreadVC2.dll
C:\Program Files (x86)\Common Files\Apple\Apple Application Support\objc.dll
C:\Program Files (x86)\Common Files\Apple\Apple Application Support\libdispatch.dll
C:\Program Files (x86)\Common Files\Apple\Apple Application Support\libicuin.dll
C:\Program Files (x86)\Common Files\Apple\Apple Application Support\libicuuc.dll
C:\Program Files (x86)\Common Files\Apple\Apple Application Support\icudt46.dll
C:\Program Files (x86)\Common Files\Apple\Apple Application Support\ASL.dll
C:\Program Files (x86)\Common Files\Apple\Apple Application Support\CFNetwork.dll
C:\Program Files (x86)\Common Files\Apple\Apple Application Support\SQLite3.dll
C:\Program Files (x86)\Common Files\Apple\Apple Application Support\zlib1.dll
C:\Program Files (x86)\Common Files\Apple\Apple Application Support\libxml2.dll
C:\Program Files (x86)\QuickTime\QTSystem\CoreVideo.qtx
C:\Program Files (x86)\Common Files\Apple\Apple Application Support\CoreVideo.dll
C:\Program Files (x86)\Common Files\Apple\Apple Application Support\CoreGraphics.dll
C:\Program Files (x86)\QuickTime\QTSystem\QuickTime3GPP.qtx
C:\Program Files (x86)\QuickTime\QTSystem\QuickTime3GPPAuthoring.qtx
C:\Program Files (x86)\QuickTime\QTSystem\QuickTimeAudioSupport.qtx
C:\Program Files (x86)\Common Files\Apple\Apple Application Support\CoreAudioToolbox.dll
C:\Program Files (x86)\QuickTime\QTSystem\QuickTimeAuthoring.qtx
C:\Program Files (x86)\QuickTime\QTSystem\QuickTimeCapture.qtx
C:\Program Files (x86)\QuickTime\QTSystem\QuickTimeEffects.qtx
C:\Program Files (x86)\QuickTime\QTSystem\QuickTimeEssentials.qtx
C:\Program Files (x86)\QuickTime\QTSystem\QuickTimeH264.qtx
C:\Program Files (x86)\QuickTime\QTSystem\QuickTimeImage.qtx
C:\Program Files (x86)\QuickTime\QTSystem\QuickTimeInternetExtras.qtx
C:\Program Files (x86)\QuickTime\QTSystem\QuickTimeMPEG.qtx
C:\Program Files (x86)\QuickTime\QTSystem\QuickTimeMPEG4.qtx
C:\Program Files (x86)\QuickTime\QTSystem\QuickTimeMPEG4Authoring.qtx
C:\Program Files (x86)\QuickTime\QTSystem\QuickTimeMusic.qtx
C:\Program Files (x86)\QuickTime\QTSystem\QuickTimeStreaming.qtx
C:\Program Files (x86)\QuickTime\QTSystem\QuickTimeStreamingAuthoring.qtx
C:\Program Files (x86)\QuickTime\QTSystem\QuickTimeStreamingExtras.qtx
C:\Program Files (x86)\QuickTime\QTSystem\QuickTimeVR.qtx

but only 4 of them (CoreAudioToolbox.dll, CoreGraphics.dll, CoreVideo.dll, QTCF.dll) can be loaded from qtaacenc.exe folder.

qtaacenc: a command-line QuickTime AAC encoder for Windows

Reply #297
So which version of the coreaudiotoolbox.dll should I use to avoid any fatal problems? I'm usually encoding stereo material at TVBR Q60-80 (not that it matters much since there's only three steps in bitrate level, it seems).

qtaacenc: a command-line QuickTime AAC encoder for Windows

Reply #298
So which version of the coreaudiotoolbox.dll should I use to avoid any fatal problems? I'm usually encoding stereo material at TVBR Q60-80 (not that it matters much since there's only three steps in bitrate level, it seems).
Probs can't be considered fatal, anyway with that target quality you are well above the bit rates (namely 80-96-112 Kbps) at which the QuickTime CoreAudioToolbox.dll library previous to version 7.6.9 have the lowpass bug, therefore if you prefer like IgorC and me higher bit rates at the same quality level you can safely use CoreAudioToolbox.dll v7.9.3.0.

About portability: according to procmon.exe, qtaacenc loads the following DLLs:
[...]
but only 4 of them (CoreAudioToolbox.dll, CoreGraphics.dll, CoreVideo.dll, QTCF.dll) can be loaded from qtaacenc.exe folder.
Anything can be done qtaacenc side please?
WavPack 5.6.0 -b384hx6cmv / qaac64 2.80 -V 100

qtaacenc: a command-line QuickTime AAC encoder for Windows

Reply #299
QuickTime DLLs require MSVC 2005 redist installed. Adding msvcp80.dll and msvcr80.dll to qtaacenc folder doesn't work. Any way to override it?