IPB

Welcome Guest ( Log In | Register )

25 Pages V  « < 11 12 13 14 15 > »   
Reply to this topicStart new topic
QAAC: discussion, questions, feature requests, etc., [originally a thread for a feature request]
nu774
post Jan 1 2013, 04:13
Post #301





Group: Developer
Posts: 477
Joined: 22-November 10
From: Japan
Member No.: 85902



Yeah, *some* part of qaac has been written more or less portability in mind, but others are not.
When qaac moved from QuickTime to CoreAudioToolbox, I dropped gcc(MingW) because I wanted to use DLL delay loading for CoreAudioToolbox.dll. Since then, I stopped to care about portability at all. So, now qaac even lacks cross compiler support on Win32, and I don't think it's a good base for making something useful.
If I find time, I *might* think of writing much simpler implementation for libfdk_aac.
Go to the top of the page
+Quote Post
usikpa
post Jan 1 2013, 22:27
Post #302





Group: Members
Posts: 6
Joined: 25-December 12
Member No.: 105392



nu774

Sorry to bother with this, I am a bit confused about multichannel handling by QAAC. I have now an LPCM file (wav or au format) that has the channels, according to MediaInfo, in the following order

Front: LCR
Side: LsRsLFE

Now, when QAAC does its first (Microsoft) reordering, does it re-order channels incorrectly, as the specified above channel mask is not mentioned in the channel input layout table? How does one let QAAC know the input channel layout?

Also, just in case, am I right to assume, when writing a matrix file, the Microsoft layout?
Go to the top of the page
+Quote Post
LigH
post Jan 1 2013, 22:39
Post #303





Group: Members
Posts: 147
Joined: 20-November 01
Member No.: 503



@ usikpa:

MeGUI uses AviSynth, usually a scriptable video frameserver, but it is also able to serve audio in RAM to the encoder. This technique was first used by BeHappy, specifically an audio converter, alternative to the abandoned BeSweet.


--------------------
http://forum.gleitz.info - das deutsche doom9/Gleitz-Forum
Go to the top of the page
+Quote Post
lvqcl
post Jan 1 2013, 23:01
Post #304





Group: Developer
Posts: 3221
Joined: 2-December 07
Member No.: 49183



QUOTE (usikpa @ Jan 2 2013, 01:27) *
nu774
Front: LCR
Side: LsRsLFE

Now, when QAAC does its first (Microsoft) reordering, does it re-order channels incorrectly, as the specified above channel mask is not mentioned in the channel input layout table? How does one let QAAC know the input channel layout?


The channel order for WAV format is fixed.

Your layout is equal to "FL FR FC LFE SL SR"
Go to the top of the page
+Quote Post
nu774
post Jan 2 2013, 06:08
Post #305





Group: Developer
Posts: 477
Joined: 22-November 10
From: Japan
Member No.: 85902



Use --verbose if you are uncertain of channel layout recognition by qaac. It will show something like the following:
CODE
Input layout: 5.1 (L R C LFE Lsd Rsd)
Output layout: 5.1 (C L R Ls Rs LFE)

QUOTE (usikpa @ Jan 2 2013, 06:27) *
Also, just in case, am I right to assume, when writing a matrix file, the Microsoft layout?

Correct.
Go to the top of the page
+Quote Post
usikpa
post Jan 2 2013, 22:36
Post #306





Group: Members
Posts: 6
Joined: 25-December 12
Member No.: 105392



QUOTE (nu774 @ Jan 2 2013, 08:08) *
Use --verbose if you are uncertain of channel layout recognition by qaac. It will show something like the following:
CODE
Input layout: 5.1 (L R C LFE Lsd Rsd)
Output layout: 5.1 (C L R Ls Rs LFE)


Well, I did, and this is what I got:

CODE
...
audio.m4a
Using default channel layout.
Output layout: 5.1 (C L R Ls Rs LFE)
...


As advised above, will resort to the .wav file format instead of .au

Thank you for your replies
Go to the top of the page
+Quote Post
nu774
post Jan 4 2013, 17:28
Post #307





Group: Developer
Posts: 477
Joined: 22-November 10
From: Japan
Member No.: 85902



QUOTE (kode54 @ Jan 1 2013, 10:49) *
Speaking of libfdk_aac, it would be really cool if someone could make a portable version of qaac that uses libfdk_aac as the encoder, as neither ffmpeg nor avconv appear to support gapless encoding. I'm only guessing that the only non-portable binary blob code that qaac uses is the CoreAudioToolbox library, and only for AAC encoding. Well, and then I did look into some of the headers when I considered an attempt, and noticed a lot of Win32 header and function usage, so maybe it won't be so easy after all.

Finally written frontend from scratch:
https://github.com/nu774/fdkaac
Very simple program (compared to qaac), only WAV input is available.
Gapless playback is supported at least for LC.
I hope it to be portable (tested on mingw-w64 and Linux).
Go to the top of the page
+Quote Post
sluggy
post Jan 4 2013, 17:40
Post #308





Group: Members
Posts: 54
Joined: 22-June 12
Member No.: 100900



Excellent, will you be building a version to work with fb2k??
Go to the top of the page
+Quote Post
nu774
post Jan 4 2013, 17:45
Post #309





Group: Developer
Posts: 477
Joined: 22-November 10
From: Japan
Member No.: 85902



QUOTE (sluggy @ Jan 5 2013, 01:40) *
Excellent, will you be building a version to work with fb2k??

I could distribute binary of my frontend, but will not be able to distribute libfdk-aac anyway.
Go to the top of the page
+Quote Post
sluggy
post Jan 4 2013, 17:59
Post #310





Group: Members
Posts: 54
Joined: 22-June 12
Member No.: 100900



Finally written frontend from scratch:
https://github.com/nu774/fdkaac
Very simple program (compared to qaac), only WAV input is available.
Gapless playback is supported at least for LC.
I hope it to be portable (tested on mingw-w64 and Linux).



I have no idea how to build this or how to get it to work with fb2k?

This post has been edited by sluggy: Jan 4 2013, 18:24
Go to the top of the page
+Quote Post
eahm
post Jan 4 2013, 20:59
Post #311





Group: Members
Posts: 889
Joined: 11-February 12
Member No.: 97076



nu774, two quick questions:

1) Why should people use 1.x instead of 2.x? Older OSes?

2) Why is 2.09 still available in "Cabinet" and not in "old", is 2.10 a testing build?


Thanks.

This post has been edited by eahm: Jan 4 2013, 21:00
Go to the top of the page
+Quote Post
nu774
post Jan 5 2013, 02:08
Post #312





Group: Developer
Posts: 477
Joined: 22-November 10
From: Japan
Member No.: 85902



QUOTE (eahm @ Jan 5 2013, 04:59) *
1) Why should people use 1.x instead of 2.x? Older OSes?

I don't recommend which to use. Although 2.x made improvements in functionality, you can continue to use 1.x if you think 2.x is not stable enough.

QUOTE (eahm @ Jan 5 2013, 04:59) *
2) Why is 2.09 still available in "Cabinet" and not in "old", is 2.10 a testing build?

Just forgot to move it, thanks for pointing out.
Go to the top of the page
+Quote Post
bat_guano
post Jan 10 2013, 16:00
Post #313





Group: Members
Posts: 15
Joined: 7-January 13
Member No.: 105656



QUOTE (nu774 @ Jan 4 2013, 17:45) *
I could distribute binary of my frontend, but will not be able to distribute libfdk-aac anyway.

Hi
What is the position with fdkaac.exe?
When it's compiled, is it OK to share it on this forum or some file-hosting site?
(Just asking)
cool.gif
Go to the top of the page
+Quote Post
nu774
post Jan 11 2013, 04:20
Post #314





Group: Developer
Posts: 477
Joined: 22-November 10
From: Japan
Member No.: 85902



QUOTE (bat_guano @ Jan 11 2013, 00:00) *
What is the position with fdkaac.exe?
When it's compiled, is it OK to share it on this forum or some file-hosting site?
(Just asking)
cool.gif

As for Fraunhofer's FDK AAC library, read here:
https://raw.github.com/mstorsjo/fdk-aac/master/NOTICE
Go to the top of the page
+Quote Post
Sparktank
post Jan 12 2013, 22:44
Post #315





Group: Members
Posts: 16
Joined: 31-July 12
Member No.: 101901



Hi!
Thank you for this wonderful program!

I'm very new to AAC formats (AAC/M4A).
So far I've been using just Foobar with NeroAACenc.

But with this getting frequent updates, I've decided to look into this and see how it fairs for my typical usage.
Right now it's just PC playback and a Coby portable media player.
Windows 7 (64bit)/Windows XP SP3 (32bit).
My Coby media player is MP828-8GB.

I've delayed trying this out due to the CoreAudioToolbox conundrum.
Thankfully sneaker created a wonderful batch script to extract all the necessary files and make things easier. :)

It took me several tests to figure out the quality values for TVBR [127=highest] and for the -q [0-2] quality modes [0=highest], as their values are not listed in the help and I'm completely new to the AAC field. ^__^"

Thank you all for your contribution and I look forward to using this more frequently and checking out more updates in the future.


--------------------
I like to use "[i]HD audio[/i]" in PaulStretch. "HD audio", lol.
Go to the top of the page
+Quote Post
nu774
post Jan 13 2013, 02:14
Post #316





Group: Developer
Posts: 477
Joined: 22-November 10
From: Japan
Member No.: 85902



Document is at https://github.com/nu774/qaac/wiki
-q controls quality/speed trade off, and 2 is highest in quality, slowest in speed.
Go to the top of the page
+Quote Post
Sparktank
post Jan 13 2013, 04:37
Post #317





Group: Members
Posts: 16
Joined: 31-July 12
Member No.: 101901



QUOTE (nu774 @ Jan 12 2013, 17:14) *
Document is at https://github.com/nu774/qaac/wiki
-q controls quality/speed trade off, and 2 is highest in quality, slowest in speed.


cool.gif Bookmarked, thanks!


--------------------
I like to use "[i]HD audio[/i]" in PaulStretch. "HD audio", lol.
Go to the top of the page
+Quote Post
Anakunda
post Jan 13 2013, 12:38
Post #318





Group: Members
Posts: 414
Joined: 24-November 08
Member No.: 63072



it's 2.11 now cool.gif

QUOTE
[qaac] release 2.11 (refalac 1.11)
posted 47 minutes ago by nu 774

Changed --tag option behavior to be strict. Formerly, when fourcc passed by --tag is unknown, qaac accepted it and wrote it as UTF8 string tag. Now --tag accepts only known tags. This is considered to be more foolproof, since iTunes is known to refuse editing tags when a file contains unknown tag atoms.
Read vorbis comment "WAVEFORMATEXTENSIBLE_CHANNEL_MASK" of FLAC and treat as channel layout.
Fixed a bug: mono AIFF/CAF file with kAudioChannelLabel_Mono in chan chunk could not be read.


https://sites.google.com/site/qaacpage/cabinet
Go to the top of the page
+Quote Post
robertcollier4
post Jan 15 2013, 13:53
Post #319





Group: Members
Posts: 33
Joined: 25-November 12
Member No.: 104754



Why does qaac seem to be slightly changing the duration of my audio file?

This is the command I am running:
QUOTE
qaac.exe --tvbr 90 --quality 2 --rate keep --ignorelength S01E01.wav -o S01E01.aac


I am using "--ignorelength" because usually I run this command with piped WAV input from eac3to.

The result I get with MediaInfo (showing milliseconds with Debug>Advanced Mode):
S01E01.wav - Duration: 1h 26mn 25s 664ms
S01E01.aac - Duration: 1h 26mn 25s 728ms

The audio file duration grew by 64 milliseconds - now I understand that this isn't very much --- but it is very slightly noticable out-of-sync when people are talking in my remuxed video file. Why should qaac be changing the duration of a source wav file? How can I get qaac to give me an AAC file with the exact same number of milliseconds as my source WAV file?


This post has been edited by robertcollier4: Jan 15 2013, 14:03
Go to the top of the page
+Quote Post
nu774
post Jan 15 2013, 14:12
Post #320





Group: Developer
Posts: 477
Joined: 22-November 10
From: Japan
Member No.: 85902



Read this:
http://lame.sourceforge.net/tech-FAQ.txt
This is the FAQ of LAME, but mostly the same for ALL MDCT based lossy codec.
For allowing gapless playback, iTunes introduced a special tag (metadata) named "iTunSMPB" to declare amount of encoder delay, valid number of samples, and padding.
Some players supporting it (such as fb2k or Rockbox) can playback resulting m4a files gaplessly (without any amount of delay or padding).

In short, that is a not problem of qaac.
Go to the top of the page
+Quote Post
robertcollier4
post Jan 15 2013, 15:11
Post #321





Group: Members
Posts: 33
Joined: 25-November 12
Member No.: 104754



QUOTE (nu774 @ Jan 15 2013, 05:12) *

Okay, thank you for the info and the great app. Since the documentation indicated that these encoders usually add the delay at the beginning of the file, I added delay of "-64" to mkvmerge to compensate and the resultant video seems to be in perfect sync again.
Go to the top of the page
+Quote Post
nu774
post Jan 15 2013, 15:18
Post #322





Group: Developer
Posts: 477
Joined: 22-November 10
From: Japan
Member No.: 85902



FYI, the amount of delay of Apple LC-AAC encoder is 2112 samples (= 44ms for 48000Hz).
Go to the top of the page
+Quote Post
sneaker
post Jan 15 2013, 18:02
Post #323





Group: Members
Posts: 38
Joined: 26-May 02
Member No.: 2129



QUOTE (robertcollier4 @ Jan 15 2013, 15:11) *
QUOTE (nu774 @ Jan 15 2013, 05:12) *

Okay, thank you for the info and the great app. Since the documentation indicated that these encoders usually add the delay at the beginning of the file, I added delay of "-64" to mkvmerge to compensate and the resultant video seems to be in perfect sync again.


Just as a note: mkvmerge should be able to automatically read and apply the delay from aforementioned iTunSMPB tag. You have output to m4a insteads of adts aac, though. (There have been some changes to mkvmerge's mp4 handling recently, so I suggest you test the result once to see if it still works reliably. Get the newest pre from here.)

@nu774

Maybe you could add a "--nodelay" parameter to qaac. Since you already have implemented a delay switch, I guess it's trivial for you to implement and it could be useful for video encoding where gap-less playback does not matter.

This post has been edited by sneaker: Jan 15 2013, 18:03
Go to the top of the page
+Quote Post
robertcollier4
post Jan 15 2013, 20:18
Post #324





Group: Members
Posts: 33
Joined: 25-November 12
Member No.: 104754



QUOTE (sneaker @ Jan 15 2013, 09:02) *
Just as a note: mkvmerge should be able to automatically read and apply the delay from aforementioned iTunSMPB tag. You have output to m4a insteads of adts aac, though. (There have been some changes to mkvmerge's mp4 handling recently, so I suggest you test the result once to see if it still works reliably. Get the newest pre from here.)


Okay, great. I found the file created by qaac did have a iTunSMPB tag which is explained how to decipher here.
tool qaac 2.11, CoreAudioToolbox 7.9.7.9, AAC-LC Encoder, TVBR q91, Quality 96
iTunSMPB 00000000 00000840 000003C0 000000000ED61800 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000

Encoder Delay = 0x00000840 = 2112 samples = 44ms
Padding = 0x000003C0 = 960 samples = 20 ms
Original Sample Count = 0x000000000ED61800 = 248911872 samples = 5185664 ms

So the m4a file produced by qaac does contain all the perfectly encoded information. And the original sample count matches the original wav file. The 64 ms extra is accounted for by the "Encoder Delay" and "Padding".

I tried latest mkvtoolnix-unicode-5.9.0-build20130108-490. When adding the m4a file with this iTunSMPB tag into mmg.exe (mkvmerge GUI) - it does not auto populate the "Delay (in ms)" field in the "Format specific options" tab. The "Delay (in ms)" field remains blank even when loading a m4a file with the above iTunSMPB tag. I have to manually type in "-64" to have it compensate for the 44ms+20ms delays introduced.

It would be nice if mkvmerge would automatically add a negative delay corresponding to "Encoder Delay" + "Padding".

This post has been edited by robertcollier4: Jan 15 2013, 20:21
Go to the top of the page
+Quote Post
sneaker
post Jan 15 2013, 20:31
Post #325





Group: Members
Posts: 38
Joined: 26-May 02
Member No.: 2129



1. Neither mkvmerge nor mkvmerge GUI display any information about applying the delay, but they still do it in the background. Also note that mkvmerge applies negative delays by dropping all packets that would start before 0 and delays the first packet that does not get dropped if necessary, so tools like MediaInfo might show a small ( smaller than the length of a packet) positive delay.
2. You must not add the padding to the delay value. Padding is at the end of the file.
3. the iTunSMPB tag info is only correct for LC.

This post has been edited by sneaker: Jan 15 2013, 20:45
Go to the top of the page
+Quote Post

25 Pages V  « < 11 12 13 14 15 > » 
Reply to this topicStart new topic
1 User(s) are reading this topic (1 Guests and 0 Anonymous Users)
0 Members:

 



RSS Lo-Fi Version Time is now: 25th April 2014 - 04:51