Log in

View Full Version : MeGUI NicAudio, FFAudioSource, DirectShow?


zetsu_shoren
14th February 2013, 06:57
Hey guys. I'm new here and had to wait 5 days before I could FINALLY send a message/reply/make a new thread. (that "feature" is really.......)

The thing is, I wanted to know why I can encode 5.1ch AAC (still in the .mka container) on MeGUI using the LAME MP3: *scratchpad* encoder setting with DirectShow as the preferred decoder to a joint stereo mp3 file, and why I CAN'T encode a 2ch AAC with the same settings to a joint stereo mp3 file. I just tried doing mkvextract tracks 1.aac 0:1.aac (extracted the RAW AAC file itself from the MKA container which I muxed out using mkvmerge GUI) on the DOS/cmd window to get the aac file, and THIS time, I was able to encode it to the 128 ABR mp3 I wanted using the DirectShow decoder.

I wanted to mainly ask/know about the difference/s of these "decoders".

Just what the heck are NicAudio, FFAudioSource, and DirectShow? From what I understand (based on what I think they are), DirectShow is something like the system's default thing, while FFAudioSource is something like a 2nd degree thing, something like the codecs that come with CCCP when you install MPC-HC (I'm just spouting nonsense aren't I), while NicAudio is something like a 3rd-degree thing that comes with MeGUI.

Of course, I can't research because there's NOWHERE in the internet I could find that explains these and what they do.
And since I figured doom9 seems like a hardcore guru site (once again, based on what I think it is, since I don't know anything since I can't study/research anything on anything I want to know about), I figured I'd ask here.

I've been encoding audio tracks to 128 ABR mp3 for quite a while, yet I don't know what these "decoders" are, and it's getting on my nerves that I might have been doing something that I didn't want in the first place. I want to encode with the most optimal/default settings for the most transparent 128 ABR mp3's for the shows I encode. For 2ch AAC, I usually use Audacity to encode them (with the ffmpeg thingy installed so I can add ac3 or flac or aac or whatever else) but I noticed when I encoded a 2ch AAC using the FFAudioSource decoder on MeGUI and the same 2ch AAC on Audacity, the output mp3 file of Audacity is bigger. And when I opened them up on mediainfo, the Audacity mp3 file has -q 3 while the MeGUI mp3 has -q 2. I researched somewhere that 2 and 3 are practically the same or there is no noticeable difference, and that 2 is higher quality with bigger file size (0 being the best quality with the biggest file size). But given that matter, how come the Audacity's mp3 file size is bigger? The overall bit rate of the MeGUI mp3 is 121 Kbps, while the Audacity mp3 is 126 Kbps. What is the reason for this? I've been wondering; since MeGUI has that "preferred decoder" thing, what would be the preferred decoder of Audacity (if ever there is/are)?

tebasuna51
14th February 2013, 16:59
I wanted to mainly ask/know about the difference/s of these "decoders".

- NicAudio: don't support decode AAC, then nothing to say here.
- FFAudioSource: decoder based in libav libraries (must be the same than ffmpeg used by Audacity)
- DirectShow: we don't know what are the preferred decoder in your DirectShow system.

But all other questions isn't related with decoder, seems different encoder options.

zetsu_shoren
15th February 2013, 05:53
So if I were to ask you, what would you recommend using?

tebasuna51
15th February 2013, 12:35
If your input is a correct .mka file with AAC audio I recommend you use FFAudioSource.

NicAudio can't decode AAC, and BassAudio (also included now in MeGUI) can decode AAC but need a extracted .aac file.

I can't recommend DirectShow because I don't know what is your DirectShow system.

leon
4th January 2014, 19:38
If your input is a correct .mka file with AAC audio I recommend you use FFAudioSource.

NicAudio can't decode AAC, and BassAudio (also included now in MeGUI) can decode AAC but need a extracted .aac file.

I can't recommend DirectShow because I don't know what is your DirectShow system.

Hi I use neroAAc and QAAC for audio.
What is preferred Decoder and which is better for aac files?(NicAudio-LWLibavAudioSource-FFAudioSource-DirectShow-BassAudio)

tebasuna51
4th January 2014, 21:33
Hi I use neroAAc and QAAC for audio.
What is preferred Decoder and which is better for aac files?(NicAudio-LWLibavAudioSource-FFAudioSource-DirectShow-BassAudio)
Like I say NicAudio can't decode AAC, and don't know what is the decoder selected in your DirectShowSource system.

For .aac files you can use LWLibavAudioSource-FFAudioSource-BassAudioSource at your choice (I don't test LWLibavAudioSource)

leon
7th January 2014, 21:24
Like I say NicAudio can't decode AAC, and don't know what is the decoder selected in your DirectShowSource system.

For .aac files you can use LWLibavAudioSource-FFAudioSource-BassAudioSource at your choice (I don't test LWLibavAudioSource)

Thank you.
I use qaac(with FFAudioSource)now.
If I chang the preferred decoder the quality would be different?
which profile is better LC-AAC or HE-AAC?

tebasuna51
7th January 2014, 22:32
If I chang the preferred decoder the quality would be different?
Nope.
which profile is better LC-AAC or HE-AAC?

LC is better for bitrates of 98 Kb/s (for stereo source) and higer, then must be used when need quality.
HE is better for low bitrates, then can be used when you want save space.

kotuwa
4th June 2015, 10:32
What are the pros and cons of BassAudioSource and FFAudioSource !?
For AAC input, which one is better for which situation?

And what does QAAC itself use if it is done by qaac.exe cli?
Is it better using just QAAC only 'if possible' !?
:?

tebasuna51
4th June 2015, 12:06
Please remember the forum rule:

12) How NOT to post on this forum:
...
Do not ask "what's best" because this question cannot be answered objectively. Each and everyone has their own view about what's best in a certain area. The best is what works best for you!

There are enough info in the thread about the decoders, and select your prefered encoder.

hello_hello
4th June 2015, 12:43
DirectShow is the "system "methodd and requires you to have an appropriaye DirectShow decoder installed. ffdshow is commonly used as it covers all the common audio and video types. Or there's LAV Filters. MeGUI tends to use DirectShow as a last resort (same for video decoding) as how it's decoded is completely out of MeGUI's control. For example ffdshdow has filters for downmixing or changing the volume etc but it's easy to frget and leave filters enabled and MeGUI has no way of knowing what's happening.

I'm pretty sure the MP3 default q setting is q3. Many encoder GUI's use q2 though as in theory the quality might be a little better. It shouldn't effect the bitrate too much (I don't think) and for CVR it shouldn't effect it at all, but the lower the q setting the higher the quality.... at least in theory..... but it also takes longer to encode (hence theoretical higher quality at the same bitrate). q0 is the highest quality and also painfully slow if memory serves me correctly.

I use MeGUI for video encoding quite a bit but not so much for audio. I rarely downmix it either. The main limitation is the "one job at a time" limit for audio encoding jobs. So for audio I mostly re-encode with foobar2000. It'll encode as many files simultaneously as you have CPU cores until it's done, and it'll encode to different formats at the same time.
The main foobar2000 limitation is downmixing. It can downmix to stereo (it has a DSP for that) but it can't "normalise" the way MeGUI does (unless you encode the audio via a script and there's a plugin to allow foobar2000 to open AVS scripts) and normalising tends to be necessary when downmixing. There's ways around it but you have to be more careful to prevent clipping yourself..... so for multichannel to multichannel audio encodes, and for stereo to stereo etc I mostly use foobar2000. For downmixing, which I rarely do anyway, I use MeGUI.

Foobar2000 does have a bit of a learning curve but I couldn't imagine life without it.....

I know we're not supposed to discuss the forum rules but I'm going to live dangerously and say rule 12 is possibly the dumbest forum rule I've ever come across. Are doom9 members less mature than other forum members, because if someone asks "what's best" it's generally answered under the assumption the question is "what do you think is best" or "what's you're preferred method" etc without the thread devolving into a "what's best" argument. And as an additional bonus, there's no need for rule 12 reminders if someone assumes we're all grown up and does ask "what's best". :)

kotuwa
5th June 2015, 16:20
Audacity mp3 file has -q 3 while the MeGUI mp3 has -q 2. I researched somewhere that 2 and 3 are practically the same or there is no noticeable difference, and that 2 is higher quality with bigger file size (0 being the best quality with the biggest file size).
I don't think so!!! :sly:

It is said, -q is for the encoding quality.... Not for the audio quality....
Q values is about the speed... High speed --> low quality and slow speed --> high quality....
It is not about the bitrate or audio quality...
I always use -q 0 and it is not that slow.... Unless if it is a server that runs realtime and busy, in home encodes, 0 is fine....

For audio quality, in VBR there is VBR quality... -V.... values from 0 to 9...
0 is the best quality and there, the file size is high in 0....

:]

hello_hello
6th June 2015, 19:08
For audio quality, in VBR there is VBR quality... -V.... values from 0 to 9...
0 is the best quality and there, the file size is high in 0....

You can specify a quality in VBR mode if you prefer. According to the LAME help file, when encoding in VBR mode any quality you specify from q0 to q4 will still use the highest quality algorithm. Specifying anything from q5 to q9 will use the "not so good quality' algorithm each time. The old VBR presets worked a bit differently , but for LAME 3.98 and newer that's the the help file explains it.

I just tried encoding a small audio file using the -V2 VBR preset, and then again while adding -q9 to the commandline. The first V2 encode was 6.3MB while the second was 5.8, so in VBR mode changing the q setting can effect the bitrate. I suspect it might have some sort of effect in ABR mode also, given ABR is a type of variable bitrate encoding.

I re-encoded a file a few times to test for speed differences. I didn't time the encoding, I'm simply repeating the encoding speed according to foobar2000 (compared to real time playback, I assume).

VBR V2 preset: 46 times
VBR V2 preset with -q9: 68 times

CBR 128kbps, -q0: 8 times
CBR 128kbps, -q2: 23 times
CBR 128kbps, -q3: 35 times

I always use -q 0 and it is not that slow.... Unless if it is a server that runs realtime and busy, in home encodes, 0 is fine....

I'd be willing to contend you should have included "dependant on how much encoding you do" in the above, and possibly qualifying it with "the number of simultaneous encodes you usually run and their typical duration".
I ran four simultaneous CBR 128k -q3 encodes and they ran at a combined speed of around 140 times
Four simultaneous CBR 128k -q0 encodes ran at combined speed of around 40 times. Are we at least allowed a "much slower" description when comparing -q0 to -q3 or -q0 to VBR?

kotuwa
7th June 2015, 23:56
I just tried encoding a small audio file using the -V2 VBR preset, and then again while adding -q9 to the commandline. The first V2 encode was 6.3MB while the second was 5.8, so in VBR mode changing the q setting can effect the bitrate. I suspect it might have some sort of effect in ABR mode also, given ABR is a type of variable bitrate encoding.

VBR V2 preset: 46 times
VBR V2 preset with -q9: 68 times

CBR 128kbps, -q0: 8 times
CBR 128kbps, -q2: 23 times
CBR 128kbps, -q3: 35 times

I'd be willing to contend you should have included "dependant on how much encoding you do" in the above, and possibly qualifying it with "the number of simultaneous encodes you usually run and their typical duration".
I ran four simultaneous CBR 128k -q3 encodes and they ran at a combined speed of around 140 times
Four simultaneous CBR 128k -q0 encodes ran at combined speed of around 40 times. Are we at least allowed a "much slower" description when comparing -q0 to -q3 or -q0 to VBR?
Im sure I did not get some of things you said here....
Probably because my english is bad... :[

Of course, changing a thing like q would affect the file size/bitrate.... Could be a lot if other options are change... Relatively a little if only the q is changed.... Right?
It may change ina a non linear order due to algorithm changes...

I think the original poster is more like me than you, hello_hello...
So I guess he is not in professional level audio encoding mass encoding... :)

I have not checked, but I guess LAME and most audio encoders are Single threaded, so running simultaneous encodes would be faster....
:]

hello_hello
8th June 2015, 13:37
I think the original poster is more like me than you, hello_hello...

I think we're all the same. The original poster noticed the file size changed a little in average bitrate mode if you change the -q setting.

I haven't tested average bitrate encoding myself but the OP said for an ABR 128kbps encode, the program using -q2 resulted in 121 Kbps, while for -q3 the result was 126 Kbps.
ABR encoding involves the encoder kind of "guessing" as to the best bitrate as it encodes with the goal of achieving the specified average bitrate by the end. It didn't get it exactly right either time, although it was pretty close, but it appears the -q setting will change the way the audio is encoded and possibly have a slight effect on achieving the target bitrate (in ABR mode).