Skip to main content

Topic: qtaacenc: a command-line QuickTime AAC encoder for Windows (Read 316305 times) previous topic - next topic

0 Members and 2 Guests are viewing this topic.
  • nao
  • [*][*]
qtaacenc: a command-line QuickTime AAC encoder for Windows
Reply #375
nao, would you be OK with integrating the necessary code by lvql into the official build to enabel portability please?

I'm hesitating to do it because it may be against Apple's intention (using QT encoder without installing QT).

  • sneaker
  • [*]
qtaacenc: a command-line QuickTime AAC encoder for Windows
Reply #376
Thx for the new version, working fine with the newest QuickTime.

- 5.1 (and probably other multi-channel configurations) channel mappings still wrong
- I saw that qtaacenc silently ignores unknown parameters. I think that is a very bad idea, a small typo can give you sleepless nights, trying to figure out what you are doing wrong.

  • LigH
  • [*][*][*]
qtaacenc: a command-line QuickTime AAC encoder for Windows
Reply #377
I tried to make ExactAudioCopy 1.0 b2 support qtaacenc, but I possibly made a mistake in the command line.

The options changed since EAC 0.9x, they are more verbose now, but also more flexible.

I used the following:
Code: [Select]
--tvbr 80 %islow%--normal%islow%%ishigh%--highest%ishigh% --title "%title%" --artist "%artist%" --albumartist "%albumartist%" --album "%albumtitle%" --track "%tracknr%/%numtracks%" --disk "%cdnumber%/%totalcds%" --genre "%genre%" --date "%year%" --comment "%comment%" %source% %dest%

but the result of the encoder test (EAC creates a short file with a random name) was:
Code: [Select]
E:\Programme\qtaacenc\qtaacenc.exe --tvbr 80 --highest --title "Track Title" --artist "Track Artist" --albumartist "CD Artist" --album "CD Title" --track "05/1" --disk "1/1" --genre "Drum Solo" --date "1999" --comment "Comment" "etmp7!1!5.wav" "etmp7!1!5.m4a"

Code: [Select]
Using QuickTime 7.7.1 (LC-AAC encoder 1.7.1, HE-AAC encoder 1.2.0)
Configurations: True VBR quality 80, Highest quality profile, auto Hz
Error: input file does not exist.

The command line looks well to me. So I just hope that qtaacenc will accept forced-quoted filenames. Unfortunately, the error message is so brief that I don't know which input filename qtaacenc is looking for and failing.
  • Last Edit: 13 December, 2011, 03:24:20 AM by LigH
http://forum.gleitz.info - das deutsche doom9/Gleitz-Forum

  • polemon
  • [*][*][*]
qtaacenc: a command-line QuickTime AAC encoder for Windows
Reply #378
Hey, I was just wondering, how the qtaacenc project is. I haven't seen updates for a couple of months.

Also, I'd like to know, how well qtaacenc deals with very large files, in the order of of 5GB for a 16bits/sample, 2 channel, 44.1kHz WAV PCM file. I tried using lame 3.98 and it seems it has some problems with that when creating MP3 files (I ended up using another encoder). Does qtaacenc have such a limitation?
-EOF-

  • LigH
  • [*][*][*]
qtaacenc: a command-line QuickTime AAC encoder for Windows
Reply #379
The Microsoft RIFF WAV file itself has the limitation. It has a header field of only 32 bit storing the size of the "data" chunk, so any application relying on this header entry has to fail. Therefore some support an "--ignorelength" parameter (useful for piping too, where the header cannot contain valid data before the file was finished), or an extended fileformat "w64".
http://forum.gleitz.info - das deutsche doom9/Gleitz-Forum

qtaacenc: a command-line QuickTime AAC encoder for Windows
Reply #380
could someone please tell me something about this mysterious channel-mapping error? I cant see it, and dont want to mess up my collection.

fb2k-Spectrogramm is this:
Original .dts on the left  -  qtaacenc-output on the right.


Looks okay for me!

  • gottogo99
  • [*][*][*]
qtaacenc: a command-line QuickTime AAC encoder for Windows
Reply #381
I've just installed iTunes for the first time.  Never had QuickTime installed either.  (Windows 7, 32 bit).  The current iTunes 10.5.2 does not require QuickTime so I didn't install it.  Qtaacenc does not work.  Is it possible to make it work using CoreAudioToolbox and whatever else would be needed for encoding without QuickTime?  Or does QuickTime have something better than CoreAudioToolbox so it's beneficial to install?  I managed to rip and encode ~10 CDs in iTunes to aac/m4a without any issues, so I know Apple does not require QT for encoding any more.  I got qaac working via fb2k; are there any advantages to qtaacenc?  Thanks.

  • LigH
  • [*][*][*]
qtaacenc: a command-line QuickTime AAC encoder for Windows
Reply #382
qtaacenc doesn't support including cover images and lyrics into the AAC file. And I couldn't find why ExactAudioCopy doesn't support it well.
http://forum.gleitz.info - das deutsche doom9/Gleitz-Forum

  • gottogo99
  • [*][*][*]
qtaacenc: a command-line QuickTime AAC encoder for Windows
Reply #383
Thanks but not exactly what I wanted to know.  I should have been more clear.  Is there currently any advantage to using QuickTime as an encoder instead of iTunes?  Apparently that used to be the case, from what I've read here.  Now that QuickTime is separate from iTunes, is there any reason to install it for encoding, or is iTunes functionally identical?  (Maybe this question should be a new thread).

  • lvqcl
  • [*][*][*][*][*]
  • Developer
qtaacenc: a command-line QuickTime AAC encoder for Windows
Reply #384
It's not possible to encode with TrueVBR mode using iTunes.

It is possible with both qaac and qtaacenc. But qtaacenc also requires QuickTime.

  • nu774
  • [*][*][*][*][*]
  • Developer
qtaacenc: a command-line QuickTime AAC encoder for Windows
Reply #385
Thanks but not exactly what I wanted to know.  I should have been more clear.  Is there currently any advantage to using QuickTime as an encoder instead of iTunes?

In Windows, SDK for QuickTime is provided by Apple. However, Apple Application Support is currently just an porting layer used internally by Apple products, and there's no SDK for developers or something.
Therefore, using CoreAudioToolbox from external program is at least some kind of hack, and I don't know if it is the right thing to do (Though qaac is exactly doing it).

  • gottogo99
  • [*][*][*]
qtaacenc: a command-line QuickTime AAC encoder for Windows
Reply #386
Looks like I'm still not making myself clear although we're getting closer.

Using fb2k as a front end for encoding, not iTunes, is there currently an advantage to using qtaacenc/QuickTime over qaac/CoreAudioToolbox?  Or do they ultimately end up using the same Apple encoder somehow?

I would prefer not to install QT in addition to iTunes, which I only installed due to a new iPhone.

Thanks.

  • nu774
  • [*][*][*][*][*]
  • Developer
qtaacenc: a command-line QuickTime AAC encoder for Windows
Reply #387
Or do they ultimately end up using the same Apple encoder somehow?

Yes. You can check it with Binary Comparator of foobar2000, as long as you are using equivalent encoder settings.

qtaacenc: a command-line QuickTime AAC encoder for Windows
Reply #388
Is anyone able to upload the last "portable QT" package again?  Multiupload's been down for the count for a while now and I'm not expecting it to come back in the future. =[

  • Lebon14
  • [*]
qtaacenc: a command-line QuickTime AAC encoder for Windows
Reply #389
Hi.
I just discovered qtaacenc and, um, I need help writing the encoder.txt for dBPowerAmp so it can use the encoder.
I already installed the CLI Encoder and made all the ncessary files.

I've come with this encoder.exe myself but it gives me 0 bytes file :
Code: [Select]
[codec]
.m4a
qtaacenc.exe

[label]
2
24
Quality:

[combo]
35
21
55
1
40kbps
--tvbr 4
75kbps
--tvbr 22
95kbps
--tvbr 40
115kbps
--tvbr 58
135kbps
--tvbr 68
165kbps
--tvbr 86
195kbps
--tvbr 95
225kbps
--tvbr 104
255kbps
--tvbr 113
285kbps
--tvbr 122
320kbps
--tvbr 127

[label]
2
42
Encoder Quuality:

[combo]
60
38
96
1
Normal
-- normal
High
-- high
Highest
-- higest

[clistring]
 -a "[artist]" -l "[album]" -t "[title]" -g "[genre]" -y [year] -n [track] -m [track_total] -j [disc] -k [disc_total] -c "Encoded with dBpoweramp using QTAACEnc.exe" -i "[infile]" -o "[outfile]"

[maxchannels]
48
Some notes : the clistering part was with the iTunesEncode.exe found here : http://forum.dbpoweramp.com/showthread.php...-AIFF-MP3-files
I was not sure if it was needed or not.  So, I left it there.  Same for maxchannels.


Can someone help me out with this?  Thanks!
  • Last Edit: 29 February, 2012, 08:02:49 PM by db1989

  • Nologic
  • [*]
qtaacenc: a command-line QuickTime AAC encoder for Windows
Reply #390
I made a AutoIt version of the Portable packager originally done by lvqcl.

http://www.mediafire.com/?28zjzmm0wjgc1qg

On Vista & Win7 systems will likely have to run it as Admin.

Now this has a few perks over the batch script:
Try's to run installed 7-zip if possible automatically, followed by in folder 7-zip...if all else fails it asks you to locate 7-zip.
Try's to run in folder Installer if possible, failing that it'll ask you to browse to your preferred installer.
Try's to run more or less silently if possible, with only an icon displayed in the SystemTray till the completed dialog pops up.

These are very minor improvements over the original batch script...so no need to replace it, unless your just curious.

Source:
Code: [Select]
Dim $Installers[3] = [ 'iTunes64Setup.exe' , 'iTunesSetup.exe' , 'QuickTimeInstaller.exe' ]

; Handle 7-zip
If FileExists( @ScriptDir & '\7z.exe' ) Then
$Path_7zip = @ScriptDir
Else
$Path_7zip = RegRead( 'HKEY_LOCAL_MACHINE\SOFTWARE\7-Zip', 'Path' )
If $Path_7zip = '' OR FileExists( $Path_7zip & '\7z.exe' ) = 0 Then
While 1
$7zip = FileOpenDialog( 'Select 7-zip Executable.' , '' , 'Executables (*.exe)' , 1 + 4 )
If @Error Then
MsgBox( 4096 , 'Error:' , 'No Executable Chosen.' )
Exit
Else
$Path_7zip = StringLeft( $7zip , StringInStr ( $7zip , '\' , 0 , -1 ) - 1 )
If FileExists( $Path_7zip & '\7z.exe' ) Then ExitLoop
MsgBox( 4096 , 'Error:' , '7z.exe Not Present.' )
EndIf
WEnd
EndIf
EndIf

; Handle Installers
$Installer = ''
For $Element In $Installers
   If FileExists( @ScriptDir & '\' & $Element ) Then
   $Installer = @ScriptDir & '\' & $Element
   ExitLoop
   EndIf
Next
If $Installer = '' Then
While 1
$Installer = FileOpenDialog( 'Select iTunes or QuickTime Installer.' , '' , 'Executables (*.exe)' , 1 + 4 )
If @Error Then
MsgBox( 4096 , 'Error:' , 'No Installer Chosen.' )
Exit
Else
If FileExists( $Installer ) Then ExitLoop
EndIf
WEnd
EndIf

; Start Extracting Files
RunWait( @ComSpec & ' /c 7z.exe e -y -o"' & @ScriptDir & '\Temp\" "' & $Installer & '" AppleApplicationSupport.msi' , $Path_7zip , @SW_HIDE )
If NOT FileExists( @ScriptDir & '\Temp\AppleApplicationSupport.msi' ) Then
MsgBox( 4096 , 'Error:' , 'Installer Does Not Contain' & @LF & 'AppleApplicationSupport.msi' & @LF & 'Exiting...' )
DirRemove( @ScriptDir & '\Temp\' , 1 )
Exit
EndIf
$Packaged = 'Qaac'
RunWait( @ComSpec & ' /c 7z.exe e -y -o"' & @ScriptDir & '\Temp\" "' & @ScriptDir & '\Temp\AppleApplicationSupport.msi"' , $Path_7zip , @SW_HIDE )
FileMove( @ScriptDir & '\Temp\ASL.dll'              , @ScriptDir & '\QTfiles\' , 9 )
FileMove( @ScriptDir & '\Temp\CoreAudioToolbox.dll' , @ScriptDir & '\QTfiles\' , 9 )
FileMove( @ScriptDir & '\Temp\CoreFoundation.dll'  , @ScriptDir & '\QTfiles\' , 9 )

FileMove( @ScriptDir & '\Temp\icudt46.dll'  , @ScriptDir & '\QTfiles\' , 9 )
FileMove( @ScriptDir & '\Temp\libicuin.dll' , @ScriptDir & '\QTfiles\' , 9 )
FileMove( @ScriptDir & '\Temp\libicuuc.dll' , @ScriptDir & '\QTfiles\' , 9 )

FileMove( @ScriptDir & '\Temp\icudt40.dll' , @ScriptDir & '\QTfiles\' , 9 )
FileMove( @ScriptDir & '\Temp\icuin40.dll' , @ScriptDir & '\QTfiles\' , 9 )
FileMove( @ScriptDir & '\Temp\icuuc40.dll' , @ScriptDir & '\QTfiles\' , 9 )

FileMove( @ScriptDir & '\Temp\libdispatch.dll' , @ScriptDir & '\QTfiles\' , 9 )
FileMove( @ScriptDir & '\Temp\objc.dll'        , @ScriptDir & '\QTfiles\' , 9 )
FileMove( @ScriptDir & '\Temp\pthreadVC2.dll'  , @ScriptDir & '\QTfiles\' , 9 )

FileMove( @ScriptDir & '\Temp\msvcp80.dll.*' , @ScriptDir & '\QTfiles\Microsoft.VC80.CRT\msvcp80.dll' , 9 )
FileMove( @ScriptDir & '\Temp\msvcr80.dll.*' , @ScriptDir & '\QTfiles\Microsoft.VC80.CRT\msvcr80.dll' , 9 )
FileMove( @ScriptDir & '\Temp\manifest.*'    , @ScriptDir & '\QTfiles\Microsoft.VC80.CRT\Microsoft.VC80.CRT.manifest' , 9 )

FileDelete( @ScriptDir & '\Temp\' )

RunWait( @ComSpec & ' /c 7z.exe e -y -o"' & @ScriptDir & '\Temp\" "' & $Installer & '" QuickTime.msi' , $Path_7zip , @SW_HIDE )
If FileExists( @ScriptDir & '\Temp\QuickTime.msi' ) Then
RunWait( @ComSpec & ' /c 7z.exe e -y -o"' & @ScriptDir & '\Temp\" "' & @ScriptDir & '\Temp\QuickTime.msi"' , $Path_7zip , @SW_HIDE )

FileMove( @ScriptDir & '\Temp\QuickTime.qts'                                      , @ScriptDir & '\QTfiles\QuickTime.qts' , 9 )
FileMove( @ScriptDir & '\Temp\QuickTime.Resources_QuickTime.dll'                  , @ScriptDir & '\QTfiles\QuickTime.Resources\QuickTime.dll' , 9 )
FileMove( @ScriptDir & '\Temp\QuickTime.Resources_QuickTime.qtr'                  , @ScriptDir & '\QTfiles\QuickTime.Resources\QuickTime.qtr' , 9 )
FileMove( @ScriptDir & '\Temp\QuickTime.Resources_QuickTime.qtxs'                  , @ScriptDir & '\QTfiles\QuickTime.Resources\QuickTime.qtxs' , 9 )
FileMove( @ScriptDir & '\Temp\QuickTime.Resources_en.lproj_QuickTimeLocalized.dll' , @ScriptDir & '\QTfiles\QuickTime.Resources\en.lproj\QuickTimeLocalized.dll' , 9 )
FileMove( @ScriptDir & '\Temp\QuickTime.Resources_en.lproj_QuickTimeLocalized.qtr' , @ScriptDir & '\QTfiles\QuickTime.Resources\en.lproj\QuickTimeLocalized.qtr' , 9 )

FileMove( @ScriptDir & '\Temp\QuickTimeAudioSupport.qtx'                                                  , @ScriptDir & '\QTfiles\QuickTimeAudioSupport.qtx' , 9 )
FileMove( @ScriptDir & '\Temp\QuickTimeAudioSupport.Resources_QuickTimeAudioSupport.qtr'                  , @ScriptDir & '\QTfiles\QuickTimeAudioSupport.Resources\QuickTimeAudioSupport.qtr' , 9 )
FileMove( @ScriptDir & '\Temp\QuickTimeAudioSupport.Resources_en.lproj_QuickTimeAudioSupportLocalized.dll' , @ScriptDir & '\QTfiles\QuickTimeAudioSupport.Resources\en.lproj\QuickTimeAudioSupportLocalized.dll' , 9 )
FileMove( @ScriptDir & '\Temp\QuickTimeAudioSupport.Resources_en.lproj_QuickTimeAudioSupportLocalized.qtr' , @ScriptDir & '\QTfiles\QuickTimeAudioSupport.Resources\en.lproj\QuickTimeAudioSupportLocalized.qtr' , 9 )

FileMove( @ScriptDir & '\Temp\QuickTimeAuthoring.qtx'                                                , @ScriptDir & '\QTfiles\QuickTimeAuthoring.qtx' , 9 )
FileMove( @ScriptDir & '\Temp\QuickTimeAuthoring.Resources_QuickTimeAuthoring.qtr'                  , @ScriptDir & '\QTfiles\QuickTimeAuthoring.Resources\QuickTimeAuthoring.qtr' , 9 )
FileMove( @ScriptDir & '\Temp\QuickTimeAuthoring.Resources_en.lproj_QuickTimeAuthoringLocalized.dll' , @ScriptDir & '\QTfiles\QuickTimeAuthoring.Resources\en.lproj\QuickTimeAuthoringLocalized.dll' , 9 )
FileMove( @ScriptDir & '\Temp\QuickTimeAuthoring.Resources_en.lproj_QuickTimeAuthoringLocalized.qtr' , @ScriptDir & '\QTfiles\QuickTimeAuthoring.Resources\en.lproj\QuickTimeAuthoringLocalized.qtr' , 9 )

FileMove( @ScriptDir & '\Temp\QuickTimeMPEG4Authoring.qtx'                                                    , @ScriptDir & '\QTfiles\QuickTimeMPEG4Authoring.qtx' , 9 )
FileMove( @ScriptDir & '\Temp\QuickTimeMPEG4Authoring.Resources_QuickTimeMPEG4Authoring.qtr'                  , @ScriptDir & '\QTfiles\QuickTimeMPEG4Authoring.Resources\QuickTimeMPEG4Authoring.qtr' , 9 )
FileMove( @ScriptDir & '\Temp\QuickTimeMPEG4Authoring.Resources_en.lproj_QuickTimeMPEG4AuthoringLocalized.qtr' , @ScriptDir & '\QTfiles\QuickTimeMPEG4Authoring.Resources\en.lproj\QuickTimeMPEG4AuthoringLocalized.qtr' , 9 )

$Packaged = 'Qaac & QTaacEnc'
EndIf

DirRemove( @ScriptDir & '\Temp\' , 1 )

MsgBox( 0 , 'Finished' , 'All files Processed.' & @LF  & @LF & 'Package Compatable with ' & $Packaged )
  • Last Edit: 31 July, 2012, 11:29:17 PM by Nologic

  • hlloyge
  • [*][*][*][*][*]
qtaacenc: a command-line QuickTime AAC encoder for Windows
Reply #391
How to avoid resampling to 48k?
I have one album, mostly acoustic instruments, and using tvbr 67 profile to encode it - ending in unusually high bitrates (130-160 kbit) and album is resampled to 48 kHz.
Why? Input is FLAC image of the album.
I've searched the forum but couldn't find any info.
Additionally, if I force it to encode with --samplerate 44100, is the encoder doing resampling twice? When I turn on "keep" option, it resamples to 48k.
  • Last Edit: 20 August, 2012, 06:36:58 AM by hlloyge

  • eahm
  • [*][*][*][*][*]
qtaacenc: a command-line QuickTime AAC encoder for Windows
Reply #392
Nologic thanks for the package.

Can you please link the original one made by lvqcl?
  • Last Edit: 20 August, 2012, 12:38:21 PM by eahm

  • Nologic
  • [*]
qtaacenc: a command-line QuickTime AAC encoder for Windows
Reply #393
Hi eahm,

Yeah I can...sadly I can't seem to edit my original post.

batch script by lvqcl

It's post #329 of this thread.

  • Daffy
  • [*][*][*]
qtaacenc: a command-line QuickTime AAC encoder for Windows
Reply #394
There seems to be a file permission issue when i use qtaacenc to encode files outside the C:\User\Anon\Music folder, for example C:\Music.

Authenticated Users group seems to be missing on each file.


Anyone figure this out?

  • hlloyge
  • [*][*][*][*][*]
qtaacenc: a command-line QuickTime AAC encoder for Windows
Reply #395
Take ownership of folder, subfolders and files of that C:\Music folder.

  • Venyos
  • [*]
qtaacenc: a command-line QuickTime AAC encoder for Windows
Reply #396
I finally found a codec, which at 256 kbps on my system sounds like the original CD. Thanks nu774!
Listening to music is the best pastime.



  • Daffy
  • [*][*][*]
qtaacenc: a command-line QuickTime AAC encoder for Windows
Reply #397
Take ownership of folder, subfolders and files of that C:\Music folder.


Tried that and the foobar icon still shows up with the little lock on it in the left corner.  If I encode directly into my C:\users\* folder I get no issues and no stupid locks on the foobar icons.  I'm stumped.  Not sure what that lock on the icon even means, but it's annoying.

  • LigH
  • [*][*][*]
qtaacenc: a command-line QuickTime AAC encoder for Windows
Reply #398
I believe it would work if you ran foobar2000 as Administrator?
http://forum.gleitz.info - das deutsche doom9/Gleitz-Forum

  • Daffy
  • [*][*][*]
qtaacenc: a command-line QuickTime AAC encoder for Windows
Reply #399
I believe it would work if you ran foobar2000 as Administrator?


Still no luck.  Icons show the lock.