Log in

View Full Version : Aften 0.0.8 is out


Pages : 1 2 3 4 5 [6] 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23

Rockaria
3rd October 2006, 04:09
Good points everybody. It seems being developped into a most important part of the encoder.

I also have an idea : a context driven approach

By any suffix naming convention in the source path :
i.e. audio_L.wav, audio_R.wav, audio_LR.wav, audio_LR_SLSR.wav...
or audio.mux, audio.wav(these may require the explicit -acmod)

by the shell command 'dir path/audio*.*', it will be eventually parsed into each channels and even can define the -acmod.

[-acmod #] Audio coding mode (overrides wav header)
0 = 1+1 (Ch1,Ch2)
1 = 1/0 (C)
2 = 2/0 (L,R)
3 = 3/0 (L,R,C)
4 = 2/1 (L,R,S)
5 = 3/1 (L,R,C,S)
6 = 2/2 (L,R,SL,SR)
7 = 3/2 (L,R,C,SL,SR)

A table of the supported tool's context naming convention must be established.
Any future format channels can also be supported this way : extensible.

BabaG
4th October 2006, 08:47
just downloaded aften and looks very nice. noob question.
seems to be a lot of discussion here of multi-wav encoding
so i'm not sure if aften will yet do what i'm trying to do. i
have six mono wav's - l,c,r,ls,rs,lfe. i want to use them as
a soundtrack on a dvd i want to author. i gather i need to
encode them somehow. will aften do this? what is the
command?

this, then, produces an ac3 file? is that compatible with the
authoring process? or is it an intermediate on the way to an
mpeg of some sort?

sorry for the dumb questions but these are rather deep
waters for the novice swimmer. finding aften seems to
provide some real encouragement for me.

thanks,
BabaG

raquete
4th October 2006, 09:16
ah...hi!
the first post is one good starting point (always).

http://forum.doom9.org/showthread.php?t=113074

have a cool GUI for newbys(like me)and "lazy" people.

tebasuna51
4th October 2006, 09:51
i have six mono wav's - l,c,r,ls,rs,lfe. i want to use them as a soundtrack on a dvd i want to author. i gather i need to encode them somehow. will aften do this? what is the command?

this, then, produces an ac3 file? is that compatible with the authoring process? or is it an intermediate on the way to an mpeg of some sort?
You can try the vmesquita version (http://forum.doom9.org/showthread.php?p=881196#post881196) or make a wav 6 channels (the order is l,r,c,lfe,sl,sr) with WaveWizard (http://www.rarewares.org/wavewiz/wavewizardv0.54b.zip) and use the standard Aften (don't support yet 6 monowav like input)

And, yes, produce an ac3 file compatible with the authoring process.

BabaG
6th October 2006, 10:58
there is an option in aftengui (i'm not in front of it right now) in the
preferences which has to do with dolby. i think there are three
options, something like none, disabled, enabled. what is this
for and what does it do exactly? about to get to my first serious
test with this. and thanks tebasuna51. very helpful.

thanks,
BabaG

tebasuna51
6th October 2006, 15:05
there is an option in aftengui (i'm not in front of it right now) in the
preferences which has to do with dolby. i think there are three
options, something like none, disabled, enabled. what is this
for and what does it do exactly?
Maybe:
[-dsur #] Dolby Surround mode
0 = not indicated (default)
1 = not Dolby surround encoded
2 = Dolby surround encoded
This flag is present only in ac3 2.0, and indicate when the two physical channels are encoded to contain 4/5 logical channels (Dolby ProLogic I/II).

Some players can use this info to activate automatically your DPL decoder.

The ac3 encoder (Aften) don't make the downmix dpl 5.1 -> 2.

BabaG
6th October 2006, 18:29
so, i started with six mono wav's of original material. i then
used wavwizard to create a single wav file with six channels.
how do i get this to be usable and playable as surround
sound on a normal dvd player? do i need to now convert the
six channel wav to two channels with some sort of encoding?
or can i just burn the aftengui ac3 of this six channel wav
along with my mpeg picture file using something like dvdstyler
and have it properly readable as a surround dvd? if it's
necessary to encode the six channel wav down to two,
software recommendation, please?

thanks again,
BabaG

tebasuna51
7th October 2006, 02:00
do i need to now convert the
six channel wav to two channels with some sort of encoding?
Not at all, is only a option for less quality/bitrate.
or can i just burn the aftengui ac3 of this six channel wav along with my mpeg picture file using something like dvdstyler and have it properly readable as a surround dvd?
Yes, I don't know dvdstyler, but any authoring software can do the job.

chickenmonger
7th October 2006, 02:29
I had an idea for a front-end for Aften, but the only programming languages I know (oddly enough) are BASIC and FORTRAN. Neither of those seem to be good languages for programming a front-end for anything.

I noticed a lot of programs offer Sonic Foundary's Soft Encode as an option for encoding AC3 audio. Could a front-end be coded that would take the command-line options and the generated INI file for Soft Encode and feed the relevant information to Aften? I tried to make such a front-end in QBASIC of all things last night, but I got stuck parsing the INI file.

I'll try again tonight, but I can't make any promises.

Chainmax
7th October 2006, 04:41
...
- In GUIDE: Converting stereo to 5.1 surround for FREE (http://forum.doom9.org/showthread.php?t=105684) the last step is encode three stereo wav's fLfR, CLFE, slsr.

Yes, but once those three files are created you can split them to 5 mono WAVs or a single 5.1 one.

Does Aften support encoding from a 5.1 WAV? Also, has channel coupling been scratched from the to-do list or could there be a possibility to resume work on it sometime in the future?

raquete
7th October 2006, 05:50
Does Aften support encoding from a 5.1 WAV?
yes and with AftenGUI is easy!

BabaG
7th October 2006, 19:43
i'm unclear on one thing here, the distinction between six channels
and surround, if there is one. i created six mono files as a surround
mix in an audio app. from that i created a six channel wav in
wavewizard. i then used aftengui to create an ac3. i'm about to try
burning that to dvd but would like to understand one thing: will this
ac3 be played as a surround track, or is it simply a stereo track with
alternate stereo pairs? i think of things like director commentary track
and various dvd extras and find myself wondering if my six tracks
will be played all together or will be played two at a time with my
having to select which pair to listen to. thanks for all the help so far.
with your help i feel like i'm gradually coming round to this technology.

jruggle
8th October 2006, 05:43
Also, has channel coupling been scratched from the to-do list or could there be a possibility to resume work on it sometime in the future?
Yes, channel coupling is still on the todo list (http://svn.sourceforge.net/viewvc/*checkout*/aften/Changelog?revision=101).

Archimedes
15th October 2006, 13:45
I have used BeSweet ("AC3Enc") long time to produce AC3 (DD 2.0) with a constant bitrate of 256 kbps for DVD authoring without any problems. RMAA (RightMark Audio Analyzer) tells me, that Aften would be the better solution. But can i trust only numbers? ;-) However, Aften seems to be a good replacement for the BeSweet solution. Isn’t it?

raquete
15th October 2006, 14:15
tells me, that Aften would be the better solution. But can i trust only numbers?;-) However, Aften seems to be a good replacement for the BeSweet solution. Isn’t it?
who knows?
as faith is personal i (maybe we) can't explain, read the link and taste the true:
http://aftenblog.blogspot.com/

regards.

Mug Funky
15th October 2006, 16:07
@ Archimedes:

have you tried it on motion-menus and played it on (old-ish) pioneer DVD players? that issue's the only thing holding me back from using ac3enc based stuff, and it was probably fixed ages ago but i'm too lazy to test :)

Archimedes
15th October 2006, 17:27
Never tried it on motion menus. I used it for authoring my own dv stuff. Never heard, that something is wrong with this DVDs. For a long time i read an article where some people (people who knows something about acoustic) did make a listening test. No one was able to hear the difference between BeSweet and Sonic Foundry Soft Encoder at 256 kbps.

Regarding Aften, i have another question. What is the correct way to convert a normal stereo wav (48 kHz, 16-bit, dv stuff) to AC3 (DD 2.0) at 256 kbps?

Is "aften input.wav output.ac3 -b 256" correct?

What about the -m parameter?

[-m #] Stereo rematrixing
0 = independent L+R channels
1 = mid/side rematrixing (default)

tebasuna51
15th October 2006, 18:12
No one was able to hear the difference between BeSweet and Sonic Foundry Soft Encoder at 256 kbps.
The same input.wav encoded with ac3enc-BeSweet is 50% (-3 dB) in volume than encoded with Sonic Foundry SoftEncode.
Last ffmpeg versions and Aften resolve this problem.

Archimedes
15th October 2006, 18:27
That’s another issue. I never unterstand this “volume bug”. When i hear my own DVDs the volume level seems to be the same as there will be used on most commercial DVDs.

newhaven
16th October 2006, 22:22
hi,

can anyone tell me what settings in the aften gui need to be checked for 5.1 ac3? i understand some of the obvious ones, but realize there is probably more. i have also looked for a guide on aften and have had no succuess.

thanx--newhaven

jruggle
23rd October 2006, 07:57
Hi,
I just want to mention that my attempt at DRC encoding has been committed to Aften SVN. If anyone wants to try it out, the commandline option is -dynrng. Below is a snippet from the usage text.

[-dynrng #] Dynamic Range Compression profile
0 = Film Standard
1 = Film Light
2 = Music Standard
3 = Music Light
4 = Speech
5 = None (default)

-Justin

Mug Funky
23rd October 2006, 08:52
unfortunately i'm not set up to compile anything, but i'm totally up for testing it!

i could probably compare results with results from soft encode and an MPX-3000 hardware encoder.

Kurtnoise
23rd October 2006, 08:59
http://kurtnoise.free.fr/index.php?dir=Aften/&file=Aften-0.05_rev185.zip

10x Justin for drc...:)

Mug Funky
23rd October 2006, 09:02
thanks both of you :) testing now.

[edit]

attack and release seem to be 1 ac3 frame...

i've attached 3 pics to demonstrate. i made a very simple test signal (10 seconds, silence, then 1k -20dB tone, then 1k -1dB tone, then back to -20dB for the rest), and encoded it in both soft encode and aften with "film standard" selected.

dialnorm for both encoders was -27dB, as this is the default round my parts (i think it corresponds well to the old -20dBFS = 0 dB VU rule).

soft encode's release time is extremely long (note: too long, it can sound really bad when an actor hits a hard "s" and the music drops out almost completely), but aften's attack and release seem to be extremely short. also doesn't seem to attenuate enough.

it did sound alright though on film content (Godzilla vs Spacegodzilla :))- sort of like a peak limiter :)

note i used foobar2000 with DRC enabled for decoding. though one thing i've noticed is different decoders can make a bit of a difference.

[edit 2]

i've managed to approximate soft encode's DRC using Audition's compressor. the values are a little odd, but it produces a similar shaped curve (it peaks higher, but i put that down to ac3's DRC working per-block rather than per-sample).

settings are:

4:1 compress above -20dB, unity gain below.
attack time 200ms, release time 20,000ms (!!)

personally i think 20 seconds is far too long - i can't see a soundtrack suffering if the release is 5 sec or even 1 sec.

jruggle
23rd October 2006, 16:24
attack and release seem to be 1 ac3 frame...

I didn't even think of that. The Dolby guidelines don't mention attack and release. It's actually 1 block, not 1 frame, since the dynrng value is computed for each block. This definitely explains the odd results I'm getting sometimes. What would you recommend to be good attack/release times?

-Justin

tebasuna51
23rd October 2006, 17:59
Other test similar to Mug Funky (I can't see the images yet):

Ten seconds of 1 KHz tone with -45, -40, ..., -5, 0 dB.
Encoded with SoftEncode and Aften, Film Standard, -31 dB DialNorm.
Decoded with Azid 1.9 ( -d normal ).

http://img303.imageshack.us/img303/9172/aftendrc31cq6.png (http://imageshack.us)

Seems we need more attenuation for high values.
There are the theoretic Dolby curves and attack/decay parameters in Apendix C of “Dolby Laboratories Digital Professional Encoder Manual" (http://www.dolby.com/tech/L.mn.0002.DDPEG1.pdf)

jruggle
23rd October 2006, 19:53
Seems we need more attenuation for high values.
There are the theoretic Dolby curves and attack/decay parameters in Apendix C of “Dolby Laboratories Digital Professional Encoder Manual" (http://www.dolby.com/tech/L.mn.0002.DDPEG1.pdf)
Thanks for that. Now I'm a little confused though. Dolby's metadata guidelines give both "early cut" and "cut" ranges and ratios, but the professional encoder manual leaves out "early cut" altogether. Also, I think I may be interpreting something incorrectly. I might need a little help here.

Let's take Film Standard, for instance.
max boost 6 dB
(abs range) (-43 dBFS)
boost ratio 2:1
(abs range) (-43 to -31)
null band width 10 dB
(abs range) (-31 to -21)
cut ratio 20:1
(abs range) (-21 to +4)
max cut 24 dB
(abs range) (+4 dBFS)

This is my interpretation. A signal which has loudness below -31 gets a boost of 0.5 dB for every loudness dB below -31, giving a maximum 6 dB boost at -43. For a signal which has loudness above -21, this is where I get lost. I interpret the 20:1 ratio to mean that each dB above -21 only adds 0.05 dB of cut. Not only does this not make sense, but it doesn't add up to the max cut of 24 dB. It would have to be 1 dB of cut for each 1 dB increase in loudness for it to add up right. Am I missing something here?

-Justin

tebasuna51
23rd October 2006, 20:54
A signal which has loudness below -31 gets a boost of 0.5 dB for every loudness dB below -31, giving a maximum 6 dB boost at -43. For a signal which has loudness above -21, this is where I get lost. I interpret the 20:1 ratio to mean that each dB above -21 only adds 0.05 dB of cut.
Yes, there are other documents with one more segment ("early cut") and you can see also this image. (http://pages.sbcglobal.net/wilsondr/ddcompprof.gif)
But always Film Standard are below -20 dB like SoftEncode make.
Not only does this not make sense, but it doesn't add up to the max cut of 24 dB. It would have to be 1 dB of cut for each 1 dB increase in loudness for it to add up right. Am I missing something here?
The input range -21 dB to 0 dB have the output range -21 dB to -19.95 dB.
Really is not clear this max cut of 24 dB. The second Note to Table C-1 say:
"Some absolute ranges extend higher than 0 dBFS. Since a full-scale sine wave cannot exceed 0 dBFS, these ranges should be interpreted as extrapolated extensions of the allowable range. As a result, it may not be posssible in practice to achieve the maximum cut compressions gain words."

Thanks for your job.

jruggle
23rd October 2006, 21:06
Yes, there are other documents with one more segment ("early cut") and you can see also this image. (http://pages.sbcglobal.net/wilsondr/ddcompprof.gif)
But always Film Standard are below -20 dB like SoftEncode make.

The input range -21 dB to 0 dB have the output range -21 dB to -19.95 dB.

Makes much more sense now. Thanks tebasuna! I'll try to adjust the calculations accordingly. It may take some more time to get the attack/decay thing working though.

edit: 1st, the aften -h output was mixed up. It is now corrected. 2nd, I think DRC calculation should be more correct now (although the "standard" profiles still give noisy output due to the changes being too abrupt...i.e. no attack/decay implemented).

-Justin

Mug Funky
24th October 2006, 01:04
i vote for CLI options for attack/release/etc :)

default can be the dolby one once it's figured out (the terminology is slightly different to what you'd get on a regular compressor/expander)

thanks heaps for the good work!

tebasuna51
27th October 2006, 15:48
I can't access sources or others revisions, http://jbr.homelinux.org/aften/ don't work for me and http://sourceforge.net/projects/aften is outdated.
Then only can test Kurtnoise13 binarys. The last is Aften rev 205 (Aften205).

To compare I have only Sonic Foundry SoftEncoder (SoftEnc.)

And the theoretic curves can be from two Dolby documents:
The 4 segment curve from Dolby Digital Professional Encoding Guidelines (http://www.dolby.com/tech/L.mn.0002.DDPEG1.pdf) (Teoric4s)
And the 5 segment curve ("Early Cut" added, not for Music Light) from Dolby Metadata Guide (http://www.dolbylabs.com/assets/pdf/tech_library/18_Metadata.Guide.pdf) (Teoric5s)

With all values in -dB and
FL = Film Light
FS = Film Standard
ML = Music Light
MS = Music Standard
SP = Speech

-dB Wav DRC 45 40 35 30 25 20 15 10 5 0
-------- --- ---- ---- ---- ---- ---- ---- ---- ---- ---- ----
Teoric5s FL 43 40 35 30 25 20.5 18 15.9 15.7 15.4
Teoric4s FL 43 40 35 30 25 20.9 20.7 20.5 20.2 19.9
SoftEnc. FL 44.0 40 35 30 25 21.0 20.8 20.6 20.3 20.0
Aften205 FL 41.5 39.0 35 30 25 20.0 16.5 14.1 12.8 12.6

Teoric5s FS 39 35.5 33 30 25.5 23 20.9 20.5 20.2 19.9
Teoric4s FS 39 35.5 33 30 25 20.9 20.7 20.5 20.2 19.9
SoftEnc. FS 44.0 37.8 33.1 30 25 21.0 20.8 20.6 20.3 20.0
Aften205 FS 39.1 34.1 31.4 29.0 25 21.5 19.1 17.8 17.6 17.3

Teoric4s ML 43 40 35 30 25 20.5 18.0 15.5 13.0 10.5
SoftEnc. ML 44.0 40 35 30 25 20.6 18.1 15.5 13.0 10.5
Aften205 ML 41.5 39.0 35 30 25 20.0 16.5 14.1 11.6 9.1

Teoric5s MS 39 35.5 33 30 25.5 23 20.9 20.5 20.2 19.9
Teoric4s MS 39 35.5 33 30 25 20.9 20.7 20.5 20.2 19.9
SoftEnc. MS 44.0 37.8 33.1 30 25 21.0 20.8 20.6 20.3 20.0
Aften205 MS 36.6 33.9 31.5 29.0 25 21.5 19.1 17.8 17.6 17.3

Teoric5s SP 33.8 32.8 31.8 30 25.5 23 20.9 20.5 20.2 19.9
Teoric4s SP 33.8 32.8 31.8 30 25 20.9 20.7 20.5 20.2 19.9
SoftEnc. SP 44.0 37.8 31.9 30 25 21.0 20.8 20.6 20.3 20.0
Aften205 SP 41.7 37.6 33.7 29.7 25 21.5 19.1 17.8 17.6 17.3

SoftEncode work like Teoric4s +- 0.1 dB in High volume (range 0-20 dB), in the Low volume range (40-45 dB) never amplify enough.

Aften205 need 3 dB attenuation more at 0 dB (if Teoric5s for FL), in Low volume range there are different behaviors.

alexander321
28th October 2006, 12:23
I can't access sources or others revisions, http://jbr.homelinux.org/aften/ don't work for me and http://sourceforge.net/projects/aften is outdated.
Then only can test Kurtnoise13 binarys. The last is Aften rev 205 (Aften205).


Aften-0.05_rev211 ;)
http://kurtnoise.free.fr/Aften/

tebasuna51
28th October 2006, 13:48
Thanks.
Same results with Aften rev211.

LigH
28th October 2006, 14:21
Aften 0.05 rev221 creates a messed file for me:

- I decoded AC3TEST.AC3 (male saying "L/C/R/RS/LS/LFE") into 6 Mono WAV files.
- Using the MUX wizard in BeLight 0.22b9, I created a MUX file with the WAV preset.
- This MUX file being used as input, I used BeLight and BeSweet 1.5b31 to write a 6ch WAV.

Using AftenGUI 1.2, I created a new 5.1 AC3 file, and played that with MPC and optical digital conection.

- The file created with Aften 0.05 sounded well.
- The file created with Aften 0.05 rev221 sounded "choppy" (like digital sound not being recognised by the decoder) for the left channel (used while saying "Left" and "LFE").

AC3 made with Aften 0.05 (http://www.ligh.de/tmp/AC3Test005.ac3)
AC3 made with Aften 0.05 rev221 (http://www.ligh.de/tmp/AC3Test221.ac3)

Kurtnoise
28th October 2006, 15:35
@LigH : could you upload your source file please ?

tebasuna51
28th October 2006, 15:47
@Ligh
Bug confirmed. Using my sources the same problem:
Front left channel in ac3 distorted and with LFE mixed.
The rest of channels (LFE also) seems OK.

The bug exist in rev185 (23-10-2006), rev205 and rev211 at least.
The last rev I have and work OK is rev113 (3-10-2006)

DarkAvenger
29th October 2006, 11:23
My fault, sorry. Rev 212 contains the fix.

Another thing I noticed: Channel mapping (at least when plaing with xine) is incorrect. Bug of xine or aften? version 0.05 already shows this behaviour.

tebasuna51
29th October 2006, 14:31
DarkAvenger here?.

Bug fixed with Rev 212.

Channel mapping always correct with 5.1 ac3, I don't know xine but play ok with Bsplayer (ffdshow) and foobar players/decoders. Also work ok with decoders like Azid 1.9 or NicAudio-AviSynth.

Archimedes
29th October 2006, 14:35
Same thing when using BeLight. The following mux file, created with BeLight, works fine for AC3Enc, but not for Aften.

"C:\Temp\5.1-Test\audioFL.wav"
"C:\Temp\5.1-Test\audioC.wav"
"C:\Temp\5.1-Test\audioFR.wav"
"C:\Temp\5.1-Test\audioSL.wav"
"C:\Temp\5.1-Test\audioSR.wav"
"C:\Temp\5.1-Test\audioLFE.wav"

Here are the log files of the encoding processes (using the above mux file).

Encoding with Aften:
BeSweet v1.5b31 by DSPguru.
--------------------------
Using Shibatch.dll v0.25 by Naoki Shibata & DSPguru (shibatch.sourceforge.net).
Using bsn.dll replacement by Dimzon & Kurtnoise, Build Sep 30 2006, 16:58:17

Logging start : 10/29/06 , 13:51:21.

C:\Programme\BeLight\BeSweet.exe -core( -input C:\Temp\5.1-Test\audio.mux -output C:\Temp\5.1-Test\audio.ac3 -logfile C:\Temp\5.1-Test\audio.log ) -bsn( -exe aften.exe -b 384 -6chnew )

[00:00:00:000] +------- BeSweet -----
[00:00:00:000] | Input : C:\Temp\5.1-Test\audio.mux
[00:00:00:000] | Output: C:\Temp\5.1-Test\audio.ac3
[00:00:00:000] | Floating-Point Process: No
[00:00:00:000] | Source Sample-Rate: 48.0KHz
[00:00:00:000] +---------------------
[00:00:30:000] Conversion Completed !
[00:00:04:000] <-- Transcoding Duration

Logging ends : 10/29/06 , 13:51:25.

Encoding with AC3Enc:
BeSweet v1.5b31 by DSPguru.
--------------------------
Using AC3enc.dll v1.20 (Feb 18 2004) by Fabrice Bellard (http://ffmpeg.org).

Logging start : 10/29/06 , 13:58:04.

C:\Programme\BeLight\BeSweet.exe -core( -input C:\Temp\5.1-Test\audio.mux -output C:\Temp\5.1-Test\audio.ac3 -logfile C:\Temp\5.1-Test\audio_1.log ) -ac3enc( -b 384 -6ch )

[00:00:00:000] +------- BeSweet -----
[00:00:00:000] | Input : C:\Temp\5.1-Test\audio.mux
[00:00:00:000] | Output: C:\Temp\5.1-Test\audio.ac3
[00:00:00:000] | Floating-Point Process: No
[00:00:00:000] | Source Sample-Rate: 48.0KHz
[00:00:00:000] +------- AC3ENC ------
[00:00:00:000] | Bitrate method : CBR
[00:00:00:000] | AC3 bitrate : 384
[00:00:00:000] | Channels Mode : 5.1
[00:00:00:000] | Error Protection: Yes
[00:00:00:000] +---------------------
[00:00:30:000] Conversion Completed !
[00:00:30:000] Actual Avg. Bitrate : 383kbps
[00:00:02:000] <-- Transcoding Duration

Logging ends : 10/29/06 , 13:58:06.

After changing the order in the mux file, Aften works right.

"C:\Temp\5.1-Test\audioFL.wav"
"C:\Temp\5.1-Test\audioFR.wav"
"C:\Temp\5.1-Test\audioC.wav"
"C:\Temp\5.1-Test\audioLFE.wav"
"C:\Temp\5.1-Test\audioSL.wav"
"C:\Temp\5.1-Test\audioSR.wav"

DarkAvenger
29th October 2006, 14:56
Hmm it seems Aften assumes MS channel mapping and not AC3 channel mapping. Must ask Justin, whether he wants to put in an option to make it selectable.

tebasuna51
29th October 2006, 16:06
Hmm it seems Aften assumes MS channel mapping and not AC3 channel mapping. Must ask Justin, whether he wants to put in an option to make it selectable.
Of course Aften assumes the standard wav order like input, is a accepted suggestion (http://forum.doom9.org/showthread.php?p=850233#post850233) based in the principle:

"A encoder must know the standard channel order of input files and do any remmaping, if needed, internally."

With a similar principle for decoders:

"A decoder must know the standard channel order of output files and do any remmaping, if needed, internally."

we never have mapping problems. All newer decoders/encoders must respect this principles. Please don't suggest backward steps.

Rockaria
29th October 2006, 16:55
Hmm it seems Aften assumes MS channel mapping and not AC3 channel mapping. Must ask Justin, whether he wants to put in an option to make it selectable.
It had been an multi-channel(5.x~) issue happened in many tools(vorbis, nero aac,, ) also, now corrected in most encoders & decoders/players.
When decoded(any format->pcm/wav) and played(pcm/wav) or encoded(pcm/wav->ac3), having steady identical behaviors looks more reasonable to me too.

But the explicit channel mapping plugin/option might be also useful to easy correct the wrong aligned channels.
Better than splitting to 6 mono wavs then renaming/muxing/merging or using other altering tools.

DarkAvenger
29th October 2006, 21:33
Well, Softencode prefers AC3 mapping for 6ch WAVs. ;)

@tebasuna51

Aften contains an "WAV decoder" so here the principle applies. And not everything you may think is right needs to be "the right way"... So please don't comment my suggestions with possible offending colour. Thank you.

tebasuna51
30th October 2006, 02:43
@DarkAvenger
First of all sorry if my comment can offend you, is not my intention.
I estimate your work with HeadAc3he and, before Aften, always recommend your soft like the best free ac3 encoder.
http://forum.doom9.org/showthread.php?p=797787#post797787
http://forum.doom9.org/showthread.php?p=759503#post759503

Of course my opinion is not necessarily "the right way".
But only want transmit a conclusion generally accepted in this, and others, forums about the channelmapping.

I am not a MS defender but the wav order L-R-C-LFE-SL-SR is a standard "de facto" and is used by many multichannel audio software.

Is true Softencode prefers AC3 mapping but only 3 clicks are needed to process a wav with standard order. Really I need more arguments to change my opinion.

Maybe I'm newbie in audio software and don't know the historical reasons to the existence of different wav order, but we need only one order allowed because there aren't fields in wav header to indicate the actual order. How we can distinguish between two wav's with different order?

Sorry and thanks for your job (headAc3he and now the Aften compilations).

LigH
30th October 2006, 06:09
Apropos multi-channel WAV:

I am sure you already once calculated the maximum playing time for a standard WAV file with 6 channels - where the WAV header can only store "data" sizes up to 4 GB. Several movies or especially classic music programmes will probably play longer...

To allow longer input, I would recommend to add some different input - either "extensible" wave files (although I have no clue how to create them; can BeSweet create such files reliably?), or single mono files (maybe via *.mux lists).

Inc
30th October 2006, 08:07
imho there does something exist like a type of WaveFormat64 File Type. Those decoders/encoders which do support longer 5.1 Wavs simply do ignore the length member of the waveheader-structure and do transcode till "eof" is reached of the incoming 5.1 pcm data.

DarkAvenger
30th October 2006, 10:08
@tebasuna51

OK, no offence taken. ;) But I prefer to have an option. Do you now Gnome? Those are people who prefer to *not* give people an option and think they know better. That's why Linus Torvalds called them interface nazis. ;)

While I don't mind that the standard mapping should be MS way, I think it still should be possible to import non MS mapping, without using a third tool to remap. In AC3 chain software usually writes/reads in AC3 order, so I just see it as necessitiy and not the right way...

As LigH already mentioned the WAV format as such is broken, so infact using a better PCM container would be the right fix...

tebasuna51
30th October 2006, 10:29
@Ligh, Aften work, like Inc say, until "eof" is reached ignoring the two fields in wav header (RiffLength and DataLength), then wav > 4GB are allowed like input.

BeSweet can't manage 16 int wav files > 2 GB and don't use WAVE_FORMAT_EXTENSIBLE header, but Foobar, BeHappy and some decoders like faad, tranzcode, ... can output wav > 4GB.

A "legal" solution don't pass for extensible headers (the two fields are also defined with 4 bytes), MicroSoft recommend avi containers for this kind of wav's.

There are only one problem ignoring the two fields in wav header about the length and work until eof, is not mandatory the data chunk must be the last and a wav can have extrachunks at end of file, and can be treated as data if DataLength is ignored.

The solution via *.mux files are in Justin TODO list, see this post (http://forum.doom9.org/showthread.php?p=881800#post881800).

DarkAvenger
30th October 2006, 12:06
It seems Kurtnoise13 compiles don't include the SSE(3) routines I patched in from Vorbis Lancer project. (It would be good if you changed to cmake build system. :))

So here is a MinGW compile. It should run on non-SSE CPUs as well. If not, please let me know. Perhaps I should optimize for i586. I don't know whether MinGW/gcc optimizes for i386 by default, which wouldn't be fastest.

(Kurtnoise13: Which compile flags do you use?)

It would be nice to get some benchmarks of sse enabled aften vs plain version vs 0.05 version. Esp if someone has a Core2Duo.

(It could be that the included dll is outdated, but it seems I can't edit my attachment.)

Kurtnoise
30th October 2006, 13:24
For public compiles, I don't use extra flags. For my own use I just include -march=k8.

btw, what are the pros and the cons about cmake vs make ?

A small how-to could be great too coz I've several compilers (gcc within MinGW, MSVC6, MSVC8).