Welcome to Doom9's Forum, THE in-place to be for everyone interested in DVD conversion.

Before you start posting please read the forum rules. By posting to this forum you agree to abide by the rules.

 

Go Back   Doom9's Forum > General > Audio encoding

Reply
 
Thread Tools Search this Thread Display Modes
Old 12th August 2009, 01:43   #1  |  Link
DigitAl56K
Registered User
 
Join Date: Nov 2002
Location: San Diego, CA
Posts: 936
DivX AAC Encoder Beta 1

DivX Plus adds the capability for high quality surround sound audio to the DivX ecosystem using Advanced Audio Coding (AAC) technology. To support the creation of AAC tracks for DivX Plus HD content we've created a command-line AAC audio encoder.

Visit DivX Labs to get the download and find more information about Beta 1.

Complementing this encoder, we're also jointly releasing an updated beta H.264 encoder today, check out the thread in the MPEG-4 AVC / H.264 forum.

Last edited by DigitAl56K; 12th August 2009 at 06:20.
DigitAl56K is offline   Reply With Quote
Old 12th August 2009, 10:43   #2  |  Link
froggy1
ffx264/ffhevc author
 
froggy1's Avatar
 
Join Date: May 2007
Location: Belgium
Posts: 1,366
Will there be a Linux version of it, like Nero's neroAacEnc, or does DivX still live in Windows land only and thinks there's nothing else out there?
froggy1 is offline   Reply With Quote
Old 12th August 2009, 11:21   #3  |  Link
DigitAl56K
Registered User
 
Join Date: Nov 2002
Location: San Diego, CA
Posts: 936
Hi froggy1,

There may be a Linux version in future. Currently we are in the beta phase and development will continue on the Windows platform in the short term. However, we are aware of Linux and Mac also, and you'll be pleased to know that we do actually build certain projects for Linux already internally

You can help us prioritize ports to other OS's by letting us know where you would like to see the AAC encoder used and any additional features you think would be helpful to support those uses. For example, do you just want to use it standalone? Would you like to write a UI for it? Are there existing projects you think might be interested in using it?

Although the tools we're creating will support Windows first we want to provide better support overall in the long term so please do send us your ideas. Posting here, PM, or email to amayo (at) divxcorp [dotcom] are all good ways.
DigitAl56K is offline   Reply With Quote
Old 12th August 2009, 11:52   #4  |  Link
SeeMoreDigital
Life looks better in HD
 
SeeMoreDigital's Avatar
 
Join Date: Jun 2003
Location: Notts, UK
Posts: 11,177
Well I'm very surprised...

I thought I'd never live to see the day when DivX would provide support for AAC audio encoding... What made you guys change your mind?
__________________
| I've been testing hardware media playback devices and software A/V encoders and decoders since 2001 | My Network Layout & A/V Gear |
SeeMoreDigital is offline   Reply With Quote
Old 12th August 2009, 11:53   #5  |  Link
froggy1
ffx264/ffhevc author
 
froggy1's Avatar
 
Join Date: May 2007
Location: Belgium
Posts: 1,366
Well, it'll be nice to have a stand-alone binary for Linux. When Nero ported its neroAacEnc encoder to Linux, a lot of Linux people liked this and it got attention from them, mostly due to it offering superior quality than existing encoders and being also natively available for Linux which eliminates the need for intermediate apps like Wine to run it on Linux. It does not need to be open source and I'm sure people who write encoding GUIs for Linux (like selur with his sx264) will add support for it. I'll also add support for it to my scripts which get used quite a lot too by many people. Personally, I do not write GUIs for encoding as I don't find them that much useful since they do nothing for ~95% of the encoding job and most of them are too cluttered, IMHO, and of course, on Linux one can highly script things easily

About the features, I still have to go through it and see what it can do, so right now I can't really make any suggestions or requests except for the above Linux one
froggy1 is offline   Reply With Quote
Old 12th August 2009, 12:10   #6  |  Link
DigitAl56K
Registered User
 
Join Date: Nov 2002
Location: San Diego, CA
Posts: 936
Quote:
Originally Posted by SeeMoreDigital View Post
I thought I'd never live to see the day when DivX would provide support for AAC audio encoding... What made you guys change your mind?
Schizophrenia.

Just kidding We've had support for AAC encoding in DivX Converter and playback in DivX Player and DirectShow (as part of an MKV file) since the release of DivX 7, so our support for AAC isn't new.

@froggy1 I'm also interested in whether you're primarily doing audio encoding or also using AAC for video files?

Last edited by DigitAl56K; 12th August 2009 at 12:31.
DigitAl56K is offline   Reply With Quote
Old 12th August 2009, 12:31   #7  |  Link
froggy1
ffx264/ffhevc author
 
froggy1's Avatar
 
Join Date: May 2007
Location: Belgium
Posts: 1,366
Quote:
Originally Posted by DigitAl56K View Post

@froggy1 I'm also interested in whether you're primarily doing audio encoding or also using AAC for video files?
I do both. My full music collection is encoded to AAC (using nero's encoder) and I fully 100% have switched over in using H.264 video + AAC audio (HE-AACv1) in MKV for my movie encodings. I prefer AAC over any other lossy audio codec
froggy1 is offline   Reply With Quote
Old 12th August 2009, 12:50   #8  |  Link
juGGaKNot
Registered User
 
juGGaKNot's Avatar
 
Join Date: Feb 2008
Posts: 733
i use -q 8, is it better than nero aac -q 5 ?

aac lc

btw h264 looking great

btw

Quote:
AVC-H264 import - frame size 1184 x 664 at 50.000 FPS
Import results: 616 samples - Slices: 31 I 187 P 398 B - 616 SEI - 31 IDR
Stream uses B-slice references - max frame delay 2
Unknown input file type
Error importing C:\x264divx\Movie_2D\T1\movie.m4a: End Of Stream / File

Encoding started at 02:55 PM and finished at 03:01 PM

Press any key to continue . . .
divx h264 and aac
__________________
Quote:
Originally Posted by Dark Shikari View Post
If they can beat x264 in visual quality on ordinary test clips without postprocessing, I'll eat my hat.

Last edited by juGGaKNot; 12th August 2009 at 13:00.
juGGaKNot is offline   Reply With Quote
Old 12th August 2009, 17:10   #9  |  Link
DigitAl56K
Registered User
 
Join Date: Nov 2002
Location: San Diego, CA
Posts: 936
Quote:
i use -q 8, is it better than nero aac -q 5 ?
You tell me!

The error message you are seeing from MP4Box is odd, is it because you have named the file extension .m4a rather than .aac? The encoder is outputting an ADTS-encapsulated stream.
DigitAl56K is offline   Reply With Quote
Old 12th August 2009, 17:15   #10  |  Link
froggy1
ffx264/ffhevc author
 
froggy1's Avatar
 
Join Date: May 2007
Location: Belgium
Posts: 1,366
@DigitAl56K

I've not yet had time to test it today but I would want to ask this. If a Linux version is made available somewhere in the future, it would be nice to add a -ignorelength option (like in neroAacEnc) which is useful when encoding through a pipe
froggy1 is offline   Reply With Quote
Old 12th August 2009, 17:25   #11  |  Link
DigitAl56K
Registered User
 
Join Date: Nov 2002
Location: San Diego, CA
Posts: 936
@froggy1:

Regarding -ignorelength, which tools are passing a WAV structure via pipe?
DigitAl56K is offline   Reply With Quote
Old 12th August 2009, 17:33   #12  |  Link
froggy1
ffx264/ffhevc author
 
froggy1's Avatar
 
Join Date: May 2007
Location: Belgium
Posts: 1,366
Quote:
Originally Posted by DigitAl56K View Post
@froggy1:

Regarding -ignorelength, which tools are passing a WAV structure via pipe?
MPlayer can output to WAV file and one can use a (named) pipe to pass the output of MPlayer to neroAacEnc, for example...

mkfifo audio.wav

neroAacEnc -br 55000 -he -ignorelength -if audio.wav -of audio.m4a &
mplayer inputfile.avi -really-quiet -nocache -vo null -vc null -ao pcm:fast:file=audio.wav

Last edited by froggy1; 12th August 2009 at 17:41.
froggy1 is offline   Reply With Quote
Old 12th August 2009, 18:14   #13  |  Link
DigitAl56K
Registered User
 
Join Date: Nov 2002
Location: San Diego, CA
Posts: 936
I guess in this particular case you assume the writing application doesn't add any additional information after the data chunk.

That's interesting, I'll keep it in mind for Linux.
DigitAl56K is offline   Reply With Quote
Old 12th August 2009, 18:22   #14  |  Link
froggy1
ffx264/ffhevc author
 
froggy1's Avatar
 
Join Date: May 2007
Location: Belgium
Posts: 1,366
I don't think MPlayer does that and also I use this method in both h264enc, xvidenc and divxenc and it has never failed me once. -ignorelength basically tells the nero encoder to ignore the length signaled by WAV headers of the input. It's useful for apps outputting to stdin.
froggy1 is offline   Reply With Quote
Old 12th August 2009, 20:14   #15  |  Link
tebasuna51
Moderator
 
tebasuna51's Avatar
 
Join Date: Feb 2005
Location: Spain
Posts: 5,194
Quote:
Originally Posted by DigitAl56K View Post
Regarding -ignorelength, which tools are passing a WAV structure via pipe?
All AviSynth based decoders (MeGUI, BeHappy, Bepipe, Wavi, SoundOut).

Tools like Sox.

Decoders like Faad

Foobar2000

...
__________________
BeHappy, AviSynth audio transcoder, in Doom9 forums. NicAudio, BassAudio, audio decoders.
tebasuna51 is offline   Reply With Quote
Old 12th August 2009, 21:57   #16  |  Link
DigitAl56K
Registered User
 
Join Date: Nov 2002
Location: San Diego, CA
Posts: 936
At least some of these tools are passing raw PCM via pipe and passing sample rate, channel configuration, and bit depth via command-line arguments, which is what I expect to be more common. We're already considering adding support for this.

Last edited by DigitAl56K; 12th August 2009 at 22:00.
DigitAl56K is offline   Reply With Quote
Old 12th August 2009, 23:49   #17  |  Link
tebasuna51
Moderator
 
tebasuna51's Avatar
 
Join Date: Feb 2005
Location: Spain
Posts: 5,194
Quote:
Originally Posted by DigitAl56K View Post
...We're already considering adding support for this.
Reasons:

1) Support for wav's > 4GB.
Multichannels movie audiotracks can have a equivalent wav file with invalid header. RiffLength and DataLength can't be greater (four bytes) than 2^32

2) Support for unknow source parameters.
We can't construct a command line before read the source file, or the source is also piped by other app.

3) Other encoders support the -ignorelength (or equivalent) parameter:
Aften, NeroAacEnc, OggEnc, Flac.
__________________
BeHappy, AviSynth audio transcoder, in Doom9 forums. NicAudio, BassAudio, audio decoders.
tebasuna51 is offline   Reply With Quote
Old 13th August 2009, 00:32   #18  |  Link
DigitAl56K
Registered User
 
Join Date: Nov 2002
Location: San Diego, CA
Posts: 936
The encoder should already support WAV files larger than 4GB (from file).

On #2 and #3, it is true you would need to know the properties of the source file, but I see BeHappy is already doing this for Ogg, and CT AAC.

We will consider also supporting WAV, though PCM may arrive first.
DigitAl56K is offline   Reply With Quote
Old 13th August 2009, 02:49   #19  |  Link
tebasuna51
Moderator
 
tebasuna51's Avatar
 
Join Date: Feb 2005
Location: Spain
Posts: 5,194
Quote:
Originally Posted by DigitAl56K View Post
... but I see BeHappy is already doing this for Ogg
Yeah, i was waiting until vorbis-tools 1.3.0 (changelog ... * oggenc: --ignorelength; support for Wave files > 4 GB (#1326)) was official.
__________________
BeHappy, AviSynth audio transcoder, in Doom9 forums. NicAudio, BassAudio, audio decoders.
tebasuna51 is offline   Reply With Quote
Old 13th August 2009, 06:44   #20  |  Link
roozhou
Registered User
 
Join Date: Apr 2008
Posts: 1,181
Quote:
Originally Posted by DigitAl56K View Post
The encoder should already support WAV files larger than 4GB (from file).

On #2 and #3, it is true you would need to know the properties of the source file, but I see BeHappy is already doing this for Ogg, and CT AAC.

We will consider also supporting WAV, though PCM may arrive first.
Is that so difficult to support WAV? You just need to parse the 44byte wav header to get channels and bitdepth. After that you ignore anything else and treat the rest as raw PCM. It could be done within 10 lines of C/C++ codes.
roozhou is offline   Reply With Quote
Reply

Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT +1. The time now is 11:17.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2017, vBulletin Solutions Inc.