Log in

View Full Version : qtaacenc HE/LC-AAC CLI with highest quality settings for Apple encoder


IgorC
23rd January 2010, 22:29
qtaacenc CLI with highest quality settings for Apple AAC encoder
Home page: http://tmkk.pv.land.to/qtaacenc/

It gives an access to:
TVBR: true VBR
High quality: --high or --highest
Pipe Encoding for Foobar player

Discussion on HA (http://www.hydrogenaudio.org/forums/index.php?showtopic=78072&pid=682531&st=0&#entry682531)

b66pak
24th January 2010, 20:25
thanks...
_

L.E. now a CLI .mp4 muxer based on iTunes QT libraries will be nice...
_

b66pak
11th February 2010, 19:41
2010/2/12

* Supported multichannel audio files
* Changed the default encoding parameter into TVBR q65

2010/2/11

* Fixed a potential memory corruption bug

2010/2/10

* Added --ignorelength option
* This option lets qtaacenc ignore the size of data chunk of the input wave stream when encoding from pipe. This will be useful when you want to pass a huge (>4GB) wave stream using pipe. Note that if the data chunk size is set to zero, qtaacenc reads the stream until EOF without this option. Write max bitrate info and encoding parameter metadata (iTunes compatible)


multichannel support...
_

shon3i
11th February 2010, 20:20
multichannel support...
_
Wow, great :) But without HE-AAC support, realy usless IMHO.

Blue_MiSfit
12th February 2010, 03:06
Naaah... Perfectly useful for me :) I don't like HE-AAC, and currently use Nero AAC at the default q=.5 which usually produces ~400-500kbps for 5.1ch movie sources.

I'll have to do a listening test between Apple and Nero at the same size. Still, AAC is totally transparent to almost any source at these bitrates so yeah..

~MiSfit

IgorC
17th February 2010, 16:51
Now qtaacenc supports HE-AAC.
Personally I prefer LC-AAC already at 80 kbps in my last test (http://www.hydrogenaudio.org/forums/index.php?showtopic=74781)

b66pak
19th February 2010, 18:12
from the author:

Maximum supported samplerate is 48kHz. Supported multichannel formats are:

* LC-AAC
o Quadraphonic (L R Ls Rs)
o 4.0ch (L R C Cs)
o 5.0ch (L R C Ls Rs)
o 5.1ch (L R C LFE Ls Rs)
o 6.0ch (L R C Ls Rs Cs)
o 6.1ch (L R C LFE Ls Rs Cs)
o 7.0ch (L R C Ls Rs Rls Rrs)
o 7.1ch (L R C LFE Ls Rs Lc Rc)
* HE-AAC
o Quadraphonic (L R Ls Rs)
o 5.1ch (L R C LFE Ls Rs)
o 7.1ch (L R C LFE Ls Rs Lc Rc)

The result in case the channel order info is missing may be inconsistent.
_

shon3i
19th February 2010, 22:04
Now qtaacenc supports HE-AAC.
Personally I prefer LC-AAC already at 80 kbps in my last test (http://www.hydrogenaudio.org/forums/index.php?showtopic=74781)
i don't know or it just me, but i think that apple HE-AAC is not that good as Nero or CT is. Apple LC 80 is definitly better than Apple HE, but Nero HE 80 is definitly better than Nero LC 80. Anyway i agree with AES stament that 96kbps is border between HE and LC profiles.

Anyway you test on stereo sources, and here we talk about multichannel ones, where 160-200kbps HE-AAC in some excelent scale and comparable to DTS 1.5 and AC3 448, while, LC @ 160-200kbps is not near that quality, and in general, LC-AAC need about 300-400kbps to make simmilar result when encoding multichannel.

b66pak
20th February 2010, 18:32
from the author too:

I forgot to mention, but 8.0ch is also supported. The bitrate limits (@48kHz) are:

* LC-AAC
o Quadraphonic : 640 kbps
o 4.0ch : 640 kbps
o 5.0ch : 768 kbps
o 5.1ch : 768 kbps
o 6.0ch : 960 kbps
o 6.1ch : 960 kbps
o 7.0ch : 960 kbps
o 7.1ch : 960 kbps
o 8.0ch (L R C Ls Rs Cs Rls Rrs) : 1280 kbps
* HE-AAC
o Quadraphonic : 160 kbps
o 5.1ch : 192 kbps
o 7.1ch : 256 kbps

The actual limit changes according to the input samplerate.
_

chainring
20th February 2010, 18:40
Same author of XLD for the Mac. qtaacenc works very well.

modlinsky
20th February 2010, 23:13
Excellent encoder. Works fine. Hopefully someone can code a gui for this tool (like BeHappy or somethink like that). I think a well working gui+qtaacenc can be really a BOMB!

IgorC
21st February 2010, 02:01
foobar can do this job http://www.foobar2000.org/
Well, it's player+converter. Very handy.

tebasuna51
21st February 2010, 03:56
With BeHappy: http://forum.doom9.org/showthread.php?p=1367831#post1367831

b66pak
21st February 2010, 04:04
2010/2/21

* Better multichannel handling when the order info is missing
* Further code cleanup

2010/2/20

* Fixed a crash when the input file did not exist
* Fixed a bug that --samplerate keep option was not accepted for HE-AAC encoding
* Overhaul of some internal routines - now the executable size is almost as half

2010/2/18

* Fixed some problems regarding timescale/duration/gapless info of HE-AAC files

2010/2/17

* Supported HE-AAC encoding
Finally I've found a hack to activate HE-AAC encoder. It is enabled by passing "--he" as a parameter. Note that the true VBR mode is not available in the encoder.
new version available...qtaacenc accepts now ChannelMask 1551 (0x0000060F) as same as 63 (0x0000003F) for wave_format_extensible.5.1.wavs and even simple_5.1.wavs!!!

see this:

http://forum.doom9.org/showthread.php?p=1375940#post1375940
_

shon3i
22nd February 2010, 17:17
It's is possible to install QuickTime, and copy need files, and then uninstall QuckTime, because i slowing down my system.

IgorC
23rd February 2010, 17:50
track those Apple's applications in RAM which are loaded during OS start then go to msconfig or regedit and remove them.
And your system is free of all that staff.

shon3i
23rd February 2010, 18:30
track those Apple's applications in RAM which are loaded during OS start then go to msconfig or regedit and remove them.
And your system is free of all that staff.
I have different problem, QuickTime Addon for IE/Firefox somehow does not smell with Adobe Flash player, and when i go to page that have some flash/qtime object, browser just freeze for sec. Disabling Addon not solove problem. That why ask for alternative.

qyot27
23rd February 2010, 21:08
Awesome. I did have to update Quicktime, but it's really nice not having all those extra resources and copy/delete functions going on like there is with iTunesEncode (which I've run for years). Not to mention that this allows access to features iTunes/iTunesEncode doesn't.

b66pak
25th July 2010, 17:30
new version...

2010/7/25

* Added encoder configuration info to the tool metadata

2010/3/7

* Fixed a problem when the UNC-style path was passed
Note that the maximum path length is still limited to 260 characters due to the limitation of QuickTime API.

2010/3/6

* Fixed a file corruption bug when creating very small files

_

IgorC
21st November 2010, 17:51
http://tmkk.pv.land.to/qtaacenc/

Change Log
2010/11/19
Added a support for MS-DOS style relative path
2010/11/17
Fixed a bug that the encoder was not configured correctly when the samplerate of the input file was very high (>48kHz?)
2010/11/15
Fixed a problem that caused an error when a current directory path contained invalid characters for the default character set
Gah, in this case QT changes the current directory path without any notice.

IgorC
23rd September 2011, 01:29
You don't need to install anything.

Package: http://www.multiupload.com/PW9C8MS719

1. Download it and unpack to some folder.
2. Download QuickTimeInstaller.exe. Copy it to that folder.
3. Run makeportable.cmd.

Note 1: the script will remove all unnecessary files, incuding QuickTimeInstaller.exe and itself.
Note 2: the script should also work with iTunesSetup.exe and iTunes64Setup.exe

Source of information (http://www.hydrogenaudio.org/forums/index.php?s=&showtopic=78072&view=findpost&p=769999)

sneaker_ger
23rd September 2011, 01:52
Thx for posting (Fraunhofer too). Do you know what channel order to use? In a short test with a 5.1 pipe from eac3to the channel mapping was wrong, center sound came from the front right speaker.

/edit:
ok, figured it out.
original - qtaac
FL - C
FR - FL
C - FR
BL - BR
BR - LFE
LFE - BL

For eac3to:
-2,0,1,4,5,3

nibus
23rd September 2011, 07:38
I prefer qaac.exe - its updated more frequently and automatically fixes the channel mapping issue with CoreAudioToolbox.dll's newer than v7.6.3

tebasuna51
23rd September 2011, 11:10
You don't need to install anything.

Package: http://www.multiupload.com/PW9C8MS719

1. Download it and unpack to some folder.
2. Download QuickTimeInstaller.exe. Copy it to that folder.
3. Run makeportable.cmd.

Note 1: the script will remove all unnecessary files, incuding QuickTimeInstaller.exe and itself.

Don't work for me (XP SP3):

D:\Programa\Audio\0>qtaacenc.exe 6w321.wav zz.aac
Using QuickTime 7.7.0 (LC-AAC encoder 1.7.1, HE-AAC encoder 1.2.0)
Configurations: True VBR quality 65, High quality profile, auto Hz
Progress: 100%
But without output and Exception code: 0xC0000005

Using qaac 0.58:
D:\Programa\Audio\0>qaac -V 64 -o zz.aac 6w321.wav
initializing QTML...done

qaac 0.58, QuickTime 0.3.13

6w321.wav
Error: -2095: OpenADefaultComponent( StandardCompressionType, StandardCompressionSubTypeAudio, &instance)

Using qaac 0.57:
D:\Programa\Audio\0>qaac -V 64 -o zz.mp4 6w321.wav
initializing QTML...done

qaac 0.57, QuickTime 7.7.0

6w321.wav
MPEG-4 AAC Encoder 1.7.1, Variable Bit Rate q63, Best
00:20.000 / 00:20.000 (7.2x)
960000/960000 samples processed
Encoding finished in 00:02.797 (7.2x)
Overall bitrate: 59.7423kbps
Work, but with wrong channel mapping.

nu774
23rd September 2011, 13:24
D:\Programa\Audio\0>qaac -V 64 -o zz.mp4 6w321.wav
initializing QTML...done

qaac 0.57, QuickTime 7.7.0

I'm sorry, but channel remapping feature was not yet implemented in that version.
Please try 0.74 (the newest version). If you want to use QTportable hack by lvqcl, you will also need qaac.reg (which is included in qaac_reg_sample.zip), QTCF.dll and QTfiles dir to be placed under the same directory with qaac.exe.

tebasuna51
23rd September 2011, 18:16
Thanks, qaac 0.74a and the qaac.reg (modified to the actual folder) work fine.

nu774
23rd September 2011, 18:38
If fact, you don't have to rewrite qaac.reg, as long as you place QTCF.dll and QTfiles under the same directory with qaac.exe.

For details, please read https://sites.google.com/site/qaacpage/news/qaacrelease059

Brazil2
23rd September 2011, 18:56
You don't need to install anything.

Package: http://www.multiupload.com/PW9C8MS719

1. Download it and unpack to some folder.
2. Download QuickTimeInstaller.exe. Copy it to that folder.
3. Run makeportable.cmd.
Thanks for this but is there any chance that you could compile it following these instructions:
http://mulder.googlecode.com/svn/trunk/Utils/EncodePointerLib/README.txt

So it can be used on older systems while you don't have to use another compiler.

tebasuna51
23rd September 2011, 19:23
OK.
The qaac.reg, without modifications, must be at same folder than qaac.enc, and don't need to be executed to add the values to the registry, is used by qaac.exe automatically.

Thanks