Log in

View Full Version : Wavewizard v0.54b


Pages : [1] 2 3 4 5

johnman
31st May 2005, 22:09
UPDATE:
old link doesnt work (http://www.needfulthings.webhop.org/) the newest release.
New Download link (http://www.rarewares.org/wavewiz/wavewizardv0.54b.zip)
Look @ this post (http://forum.doom9.org/showthread.php?p=696063#post696063) for info on the most recent release.
An interesting thread (http://forum.doom9.org/showthread.php?t=98131) about ssrc, resampling, using twopass and stuff like that
Some general info about ww in this (http://forum.doom9.org/showpost.php?p=662842&postcount=5) post
------

I made a little program which can do some cool stuf:
-upsampling
-downsampling
-dithering
-channel mixing
-channel swapping
-sampel conversion
-normalising (file/list)
and some other stuff which you may see for yourself

I uploaded it on daphy's site (http://www.needfulthings.webhop.org) where everyone can download it.

If you have any comments, or feature request, post them in this thread. This program is far from finished. New features will be added, and manny bugs have to be fixed.

Currently only standard wav is supported.

It is the first release, and since my english isnt very good, there is no manual. If you want to make one..... contact me.

If you have a question about the program, ask it in this thread so others might benefit from it.

Also i would like to thank Daphy for hosting my program :thanks:

John man

daphy
1st June 2005, 06:52
download Wavewizard EFB.NU Freeware Board (http://www.essential-freebies.de/board/viewtopic.php?f=21&t=9228)

daphy
1st June 2005, 12:06
-dead link-

Kurtnoise
1st June 2005, 14:50
It sounds great...I'll try it asap.

johnman
1st June 2005, 15:35
Since im bored im using this old post to describe some of the options of wavewizard (=ww).

Well lets start with the channel mapping feature. ww makes it possible to go from a x channel wav to a y channel wav by "simply" creating a matrix. This can be done on 2 different but very similair ways:
moving and mixing.

Channel moving will just move the channels from one "location" to an other "location".
To illustrate this here is an example (NB the first channel is numbered as 0).
Lets say you have a normal stereo file which you want to convert to a 4 channel wav. The 2 channel wav is an interleaved stream like this:

L1R1 L2R2 L3R3 L4R4 L5R5
This means the wav has first a sample for the left channel (ch0) and then a sample for the right channel (ch1) and then the second sample for the left channel etc....


If you now make a 2 to 4 channel mapping like this:

http://www.rarewares.org/wavewiz/example1a.png

And fill it in like this:
http://www.rarewares.org/wavewiz/example1b.png

It wil convert a 2 channel file to 4 channels by placing channel 0 at channel 0 and 2 of the new file, and channel 1 goes to channel 1 and 3 of the new file. So what you get is this:

L1R1L1R1 L2R2L2R2 L3R3L3R3

If you enable this mapping, and insert 2 channel files, all 2 channel files will be converted to 4 channel files. All other files with a different number of channels are unaffected (unless you enable also other mappings)

Now lets say you dont to just move the channels, but you want to add a third channel by mixing left and right. Well for this you would need to use an other type of mapping: mix

Make a new 2->3 channel mapping like this:
http://www.rarewares.org/wavewiz/example2a.png

and configure it like this:
http://www.rarewares.org/wavewiz/example2b.png

Channel 0 and 1 remain the same, but channel 2 is created by taking the sum of 0.5* ch0 and 0.5*ch1. So this will create a 3 channel file with the third channel a mix from the original left and right channel.


When you leave a channel empty when configuring a mapping, it will be filled with silence. You can also use negative values when configuring a mix mapping.

Whenever you have enabled a channel mapping from i.e. 2->3 channels, all 2 channel files in the list are considered as 3 channel files. So If you want to use cb to convert it to an other format, you must make sure that format supports 3 channels. But dont wory to much about this, since ww will give an error if the formats doesnt support the selected configuration. Since the file is processed as a 3 channel file, this also means the resampling takes longer since it has to resample an extra channel.

If you have created a couple of mappings which you think are usefull, you can save the "mappings.ini" file to a save place. This is a normal textfile which contains the data for all the mappings. The graphical interface only allows the creation of mappings for 1..10 -> 1..10 channels. But if you wanted a channelmapping for more channels there is an other option. Manually edit the mappings.ini to suit your needs. This way you can go from 1..1000->1..1000 channels. They are accepted by ww, but cant be viewed or edited graphicaly.

If you want to merge an old mapping with a new one, you must close ww, add a new mappings file with the name "mappingsNEW.ini" to the directory and start up ww. If ww has read the file it will rename it to mappingsIMPORTED.ini.

When you are merging files, the file order will be the same as the order in the list. If you want to change the order, you can simply select a file (or multiple) and drag them up or down to change the order.

Well that about all i can say about channelmapping.
If im bored again ill describe the other features (below this post).

----

Edit a new day has arrived.... And this time i'll describe the preferences.

- The first option is to select the output directory. Well nothing to say about that, except that whenever temp files are used (see normalization) the output directory selected will also be used to store the temp files.

- Process delay
When you add a file with the name "somefileDELAY 1500.wav"
ww will add a delay of 1500 msec to the file when this option is enabled. When using negative values it wil cut away samples from the begining.

- Maintain length
If you want to add a delay but dont want to change the length of a file check this option. It will add silence or remove samples from the end of the file depending on if you added a negative or positive delay

- 32bit float CE compatible
For some reason somebody had the bright idea to make files with a 32 bit int wav header and then to fill it with floats. Since there is no way to tell from the header if its a 32bit int or float, ww can never be sure if its dealing with a 32 bit int or float. If you enable this option it will analyse the wav data to see what kind of file it is. Since this is just guessing, you should only enable this option when your conversion comes out wrong. If you disable this option all 32 bit wav pcm files will be treated as 32 bit int wav files.

- ignore size in header
If you add a wav file with an invallid size in the header, the file will not be recognized by ww. To ignore the size in the header enable this option. If you do this all data after the data chunk will be used as sampledata. When you create files bigger then 4gb ww will set the size (in the wavheader) to 0 since the wav header cant store the real size for such large files. So when you want to work such large files you should enable this option.


- enable channelmapping
This will enable or disable all channel mappings. This same option is also in the channelmapping configuration dialog.

- Stream manipulation
* Mono streams
will convert all mutlichannel files to monostreams

* Stitch files
Will stitch all file together in the order as they appear in the main dialog. All files must have the same sampletype, samplerate and number of channels. It is possible to use a channelmaping, convert the sampletype or rate to let all the files have the same properties. If you add i.e. 5 stereo files into the list and stich them together, you get a single stereo file which has the length off all the files combined.

* Merge files
This option will merge all files in the main dialog to a single multichannel file with the length of the longest file, and with the number of channels equal to the total number of channels from all files in the dialog. So selecting merge on 6 mono files will create a single 6 channel file with the length of the longest file in the list.

- Output format
Not really much to say about. Select wavePCM for maximum compatibility.

- Convert sampletype
...

- Convert samplerate
...


- Sound level control
There are 3 different ways to influence the sound level:

* amplify
Will increase (or decrease) the volume on all files with the number of dB entered in the dB box.

* Normalize
Will first convert find the highest peak, and adjust the volume so the peak will get the desired level. Normalising can be done by file,list or whenever clipping is detected.

* Normalize with temp file
This wil function exactly the same as the normalizing without temp file. But because the result from the first pass is saved (in 64 bit resolution) it only has to convert the sample type in the second pass. This can greatly increase the speed when normalizing and resampling. One exeception to this is the normalise when clipping. Since ww cant know in advance which file will clip, nromalizing with temp file + on clipping will always do two passes. If after the first pass no clipping is detected, it will convert the temp file normaly to the desired output format. If clipping is detected, it will lower the volume.


* dithering
Will dither the output file. If you dont know what it is, try google. It not something i can explain in 2 sentences :rolleyes: . Currently only the dithering amplitude can be changed. A dithering amp of 1 means it will add diher with a max peak of +/- 1 LSB to the file. So for 8 bit int this is 1/128. Dithering will only be applied when
a) sampels are converted to floating point and
b) if the output format is of int type. This is because dithering doesnt make any sence on floatig point.

Well thats all for now :) .

ursamtl
1st June 2005, 18:14
John, have you considered implementing ssrc's two-pass mode? My understanding is that it is designed to prevent such clipping by attenuating the level after conversion to prevent potential clipping.

johnman
1st June 2005, 18:27
John, have you considered implementing ssrc's two-pass mode? My understanding is that it is designed to prevent such clipping by attenuating the level after conversion to prevent potential clipping.

I had such a feature, but since the peak is shown, and since there is a normalisation option (which obviously prevents clipping) i thought the feature was not really be usefull. But i can always re-insert it. Was the clipping caused by upsampling/downsampling? What was the peak of the original file?

ursamtl
1st June 2005, 18:54
The original file had a peak level of 0.97723. Converting it to 48kHz resulted in a peak level of 1.02103. Providing the normalization occurs before the peaks are clipped, it should be ok.

johnman
1st June 2005, 19:06
Providing the normalization occurs before the peaks are clipped, it should be ok.

And since this is the case, it IS ok :).

Has anyone tried the channel mapping/mixing features.... i wonder if its clear how they should be used.

EDIT:
Has anyone tried the program at all :(

johnman
21st July 2005, 15:42
UPDATE v0.43b

It has been a while since the last release, but now there is a new version. This one can convert to 9 different formats. The only limitations are the limitations of each format itself. So it is i.e. possible to create a 100 channel ogg if you want. Because of the way wavewizard works, it can now also convert i.e. 10 stereo files to 10 dts quadraphonic files using surcode without the need for making 6-channel wavs first. And this can be done without editing a textfile or changing a commandline. Just configure wavewizard once and let it work on all the files you have added to the program.

The conversion to the other formats are done with the help of external programs. But normaly you dont have to edit a single commandline, or even look at those dos programs running. Everything is done from the GUI.

Although its not very hard to use, the usage is a little different compared to other programs. So im again hoping someone wants to make a manual for this program. If you want to do this, just send me a PM. Ill email the program so you can start immediately :).

EDIT: Someone responded to my request so no manual writer is currently needed.

Wavewizard now also supports wav's > 4gb and there have been a couple of minor bugfixes.

The programs which are currently supported are :

surcode cd (dts)
surcode dvd (dts)
twolame (mpeg 2)
ape (monkey's audio)
flac
wavpack
nero fends (frontend for nero aac)
MPC
lame (mp3)
Ogg

And as a bonus, all freely distributable programs (everything except surcode) can be downloaded from within the program, so no need to search and download the correct version with a browser.

Current issues:
- i tested this version and it does not run on winme. So i dont think it will run on win98 either. The good news is i already fixed the problem, and the next version should run normaly on winme (and possibly win98).

- The settings for nero fends in ww are completely ignored by cb.

- Mpc settings dont work correctly

- Athough ww accepts mpeg audio files (like mp3) it can absolutely NOT decode them.

Zyphon
21st July 2005, 15:58
Sounds like a neat app, I will have to test it when when I get back from my holiday.

johnman
22nd July 2005, 21:07
Sounds like a neat app, I will have to test it when when I get back from my holiday.

Great, i hope you give some feedback when you tried it.


Something else.....
I added a screenshot but it still has the text "Attachments Pending Approval" above it. Do i need to notify a mod or something, or do they automaticaly see when a file is waiting for approval?

(EDIT maybe ww will soon also have support for the improved version of ac3enc.dll. So this might be the 11th supported "program")

Zyphon
22nd July 2005, 22:00
(EDIT maybe ww will soon also have support for the improved version of ac3enc.dll. So this might be the 11th supported "program")

This sounds good, so will it be able to make a nice ac3 file from a wav file then?

Good luck with the updates. :)

johnman
22nd July 2005, 22:04
This sounds good, so will it be able to make a nice ac3 file from a wav file then?

Yep :) (and maybe the 12th app supported will be a commercial ac3 encoder)

But currently im looking into vst support.

Zyphon
22nd July 2005, 22:27
Yep :) (and maybe the 12th app supported will be a commercial ac3 encoder)

But currently im looking into vst support.

Cool can't wait to see this version. :)

tebasuna51
23rd July 2005, 18:14
This is a verified channelmapping for ac3:
6->6#move#inactive#ac3 order for SoftEncode or ac3enc
0 2 1 4 5 3

And this other for aacenc32.exe, not necesary for Nero plugin or Faac:
6->6#move#active#aac order for aacenc32.exe (Not for Nero plugin or Faac)
2 0 1 4 5 3

johnman
23rd July 2005, 21:12
This is a verified channelmapping for ac3:
6->6#move#inactive#ac3 order for SoftEncode or ac3enc
0 2 1 4 5 3

And this other for aacenc32.exe, not necesary for Nero plugin or Faac:
6->6#move#active#aac order for aacenc32.exe (Not for Nero plugin or Faac)
2 0 1 4 5 3


thanks for the mappings, ill add them in the next release :)

One question about the 2nd mapping, my program supports nero Nero Frontends (fends), how is the mapping needed for this program in relation to the second mapping you gave. (im not really into aac encoding )

tebasuna51
24th July 2005, 03:54
Sorry, I don't know Nero Frontends.
I test Belight (BeSweet, interface bsn.dll, and aac.dll, aacenc32.dll from Nero) and don't need channelmapping, the normal wav order (L,R,C,LFE,SL,SR) make a correct aac.

KillaByte
24th July 2005, 23:15
Dude, your program rocks :thanks:

I thought there would be no way to fix the channel order of my ripped DVD-A files with free tools - until I found your program. Can't wait to see the new version.

One thing that might be useful to add in a future version is WAVE_EX support. I fiddled around a bit with the Multi-Channel ToolKit (http://www.bath.ac.uk/~masrwd/mctools.html) and wavewizard was unable to read the resulting files.

Keep up the good work :)

johnman
25th July 2005, 00:31
Dude, your program rocks :thanks:

I thought there would be no way to fix the channel order of my ripped DVD-A files with free tools - until I found your program. Can't wait to see the new version.

One thing that might be useful to add in a future version is WAVE_EX support. I fiddled around a bit with the Multi-Channel ToolKit (http://www.bath.ac.uk/~masrwd/mctools.html) and wavewizard was unable to read the resulting files.

Keep up the good work :)

Thanks for the compliment :)

I know i should support WAVE_EX, and i looked at it before (look @ the disabled option in the preferences) but when i was busy with this format i didnt have any vallid wave_ex files to test with, and since then i kind of forgotten it. But since it is called wavewizard it is high on my priority list again. And when im working on it, ill make sure my program will swallow everything mctools can produce :).

BTW if you think your mapping(s) might be usefull for others, you might consider posting it in this thread. The mappings are just plain text in the file "mappings.ini".

---

If anyone is interested, i have played a little with vst's and i succesfully called some vst functions from several vst's. So wavewizard might become a VST host sometime in the near future.

KillaByte
25th July 2005, 12:28
BTW if you think your mapping(s) might be usefull for others, you might consider posting it in this thread. The mappings are just plain text in the file "mappings.ini".Sure. The mapping for converting "LF, RF, LS, RS, C, LFE" (as used for DVD-Audio, for example) to "LF, RF, C, LFE, LS, RS" (WAV multichannel standard) is "0 1 4 5 2 3"

6->6#move#active#LF RF LS RS C LFE to LF RF C LFE LS RS
0 1 4 5 2 3

For more information about the WAVE_EX format, have a look at this link (http://www.microsoft.com/whdc/device/audio/multichaud.mspx).

johnman
25th July 2005, 12:37
Sure. The mapping for converting "LF, RF, LS, RS, C, LFE" (as used for DVD-Audio, for example) to "LF, RF, C, LFE, LS, RS" (WAV multichannel standard) is "0 1 4 5 2 3"

6->6#move#active#LF RF LS RS C LFE to LF RF C LFE LS RS
0 1 4 5 2 3

For more information about the WAVE_EX format, have a look at this link (http://www.microsoft.com/whdc/device/audio/multichaud.mspx).
Thank you, ill add it to the next release under a different name if you dont mind:

6->6#move#active#DVD-A to multichannel wav
0 1 4 5 2 3

About that link from msdn, i already have been on that page many many times :). But thx anyway.

Edit and i am happy to report ww can now read WAVE_EX files. It still cant write them, and i dont see any real reason to do so. If anyone knows a good reason, ill add that to.

KillaByte
27th July 2005, 00:58
Edit and i am happy to report ww can now read WAVE_EX files.Groovy ;)
It still cant write them, and i dont see any real reason to do so. If anyone knows a good reason, ill add that to.One reason I could think of is that with WAVE_EX multichannel files, applications don't have to guess the channel order - they can rely on the information stored inside the WAV. WavPack for example uses the channel information stored inside WAVE_EX files to decide about the channel grouping.

Another cool feature would be a metadata viewer/editor (it would be very interesting to be able to see what applications store in addtional chunks within the WAV)

johnman
27th July 2005, 02:01
Groovy ;)
One reason I could think of is that with WAVE_EX multichannel files, applications don't have to guess the channel order - they can rely on the information stored inside the WAV. WavPack for example uses the channel information stored inside WAVE_EX files to decide about the channel grouping.

:goodpost: I didnt know that. But i was thinking.... if people made a wavEX out of a normal wav, ww has no clue about the channels which have been used, so im thinking to only enable conversions from wavEX -> wavEX when no channel-mappings are enabled. Or i could just set the channel mask to 0 to indicate i dont know what channels are available, but i dont know if that is allowed, and i think some programs might crash if i do that...... im still not really sure how im going to solve this..... maybe ill have a look at other programs that make wavEX and get some inspiration :cool: .


Another cool feature would be a metadata viewer/editor (it would be very interesting to be able to see what applications store in addtional chunks within the WAV)


Well that is indeed a splendid idea. I was thinking about this before (there is a repair soundfile menu item IIRC in v0.2b), but i postponed it because my wav parser wasnt 100% according to the specifications. It accepted almost all regulars wav's, but not all. Although i havent found a wav (until i used mctoolkit) that wasnt accepted by ww, i knew some legal wavs might actually not be recognised. Since i now also have updated the wav parser, i already decided that i finaly could make some kind of editor to edit some of the data in the wavheader.

BTW in my tests i noticed almost all programs fail on some wavs that are perfectly legal according to the specifications. Even an advanced program like foobar2k makes at least one mistake when reading wavs. So doing to much crazy stuff with the chunks might not be a very wise thing to do.

daphy
27th July 2005, 14:31
New application: Wavewizard (new version: v0.4b3)

--------------------------------------------------------------------------------

UPDATE:
now it can convert to 10 different formats. Look @ post at the bottom of the page. NB the newer version is not available at this moment, but you can take a look at the screenshot .


is now online at EFB.NU Freeware Board (http://www.essential-freebies.de/board/viewtopic.php?f=21&t=9228) :)

johnman
27th July 2005, 14:55
is now online at needfulthings (http://www.needfulthings.webhop.org) :)

Great, thanks daphy :).

NB this version is a couple of days old and still cant read wavEX files.

daphy
27th July 2005, 15:41
@ johnmann

plz check PM :rolleyes:

johnman
27th July 2005, 16:23
@ johnmann

plz check PM

Reply send.

---

To anyone that has trouble letting Configuration Batcher find surcode.... try runnning surcode and THEN press find... CB gets the exe path by searching for a running instance of surcode.

(and im working on an option to manual point to the executable now)
edit Done :)

---
And to know if the conversions are done correctly... CB creates a log which shows some basic info.

tebasuna51
27th July 2005, 19:24
I can't send jobs to Conversion Batcher. How do it?

johnman
27th July 2005, 19:27
I can't send jobs to Conversion Batcher. How do it?

I dont exactly understand what's the problem, since your description is a little vague. You cant send jobs to conversion batcher yourself. This can be done only by ww. Just add some files to ww, configure the cb settings in ww and press convert. Then the jobs should show up in cb.

Do you get an error message (please post it), or do the jobs dont show up in cb?

There is an option called: "send jobs to batcher". Have you enabled it?

Does cb start when you press the "convert" button in ww?

tebasuna51
27th July 2005, 20:30
After my first post i have a error message (can't find msvcrt71.dll). I copied this file in the bin folder and after I have 5 copies of my job. It run now.

I test the aac encode and confirm you: need the aac mapping :

6->6#move#active#multichannel wav to aac
2 0 1 4 5 3

johnman
27th July 2005, 20:59
After my first post i have a error message (can't find msvcrt71.dll). I copied this file in the bin folder and after I have 5 copies of my job. It run now.

I test the aac encode and confirm you: need the aac mapping :

6->6#move#active#multichannel wav to aac
2 0 1 4 5 3


ww and cb dont need any external dll's on a normal winxp instalation. I checked the other programs which are run by cb and i found out aacenc32.exe needs MSVCR71.dll. It might be that other programs also need extra dll's.

And :thanks: for the confirmation , ill add it in the next release.

---

A general hint to everyone using this program: cb does not check if the conversions have been performed succesfully. It just runs the jobs, and thats all. But normally ww only sends jobs when they really can be preformed. And since ww creates the wav files which are converted, there isnt anything that can go wrong once everything is correctly configured. But there is no check if the programs really run, so if a dll is missing you dont get an error from cb or ww.

But the file "logCB.txt" is created to give some feedback.

KillaByte
29th July 2005, 05:11
But i was thinking.... if people made a wavEX out of a normal wav, ww has no clue about the channels which have been used, so im thinking to only enable conversions from wavEX -> wavEX when no channel-mappings are enabled. Or i could just set the channel mask to 0 to indicate i dont know what channels are available, but i dont know if that is allowed, and i think some programs might crash if i do that...... im still not really sure how im going to solve this..... maybe ill have a look at other programs that make wavEX and get some inspiration :cool: .
Using a channel mask of 0 seems to be perfectly legal. If you create a WAVE_EX using interlx from the mctools package the resulting file will have such a channel mask until you put it through copysfx and assign one.

One possibility would be to use an advanced channel mapping dialog when converting to WAVE_EX where one can assign the logical channel names like C, LFE, etc. to the numbered channels of the source WAV. Wavewizard could then map them accordingly and assign the correct channel mask. When converting from WAVE_EX to WAVE_EX channel mapping could be even more comfortable since one could work exclusively with logical channel names instead of channel numbers.

BTW in my tests i noticed almost all programs fail on some wavs that are perfectly legal according to the specifications. Even an advanced program like foobar2k makes at least one mistake when reading wavs. So doing to much crazy stuff with the chunks might not be a very wise thing to do.
Yeah - but it would be nice if one could do it anyway :D

tebasuna51
29th July 2005, 10:23
One reason to use WAVE_EX.

First a precision: dwChannelMask don't inform about "the channel order" but the channel identity. The order is always (mulchaud doc):

1. Front Left - FL
2. Front Right - FR
3. Front Center - FC
4. Low Frequency - LF
5. Back Left - BL
6. Back Right - BR
7. Front Left of Center - FLC
8. Front Right of Center - FRC
9. Back Center - BC
10. Side Left - SL
11. Side Right - SR
12. Top Center - TC
13. Top Front Left - TFL
14. Top Front Center - TFC
15. Top Front Right - TFR
16. Top Back Left - TBL
17. Top Back Center - TBC
18. Top Back Right - TBR

Then dwChannelMask inform what channels are present.

Now a posible use:
When you demux a multichannel wav in monowaves (Stream manipulation-Mono streams, for edit purpose, for instance) your names are suffixed with ch0, ...
If you have read a WAVE_EX you can safely suffix with FL, FR, ... And if you write WAVE_EX you can identify in dwChannelMask each monowav.
After, when you need remux (Stream manipulation-Merge files) you don't need keep in mind the channel order, the dwChannelMask of each monowave inform to your soft.

But for me is enough ww can read WAVE_EX >4 GB (with "Ignore invalid wav size", I suppose) to demux big 6wav files generated with faad.

"and i am happy to report ww can now read WAVE_EX files."
I am happy also and wait for your new beta.

Thanks.

johnman
29th July 2005, 11:53
Using a channel mask of 0 seems to be perfectly legal. If you create a WAVE_EX using interlx from the mctools package the resulting file will have such a channel mask until you put it through copysfx and assign one.

Great, thats one thing less to wory about.


One possibility would be to use an advanced channel mapping dialog when converting to WAVE_EX where one can assign the logical channel names like C, LFE, etc. to the numbered channels of the source WAV. Wavewizard could then map them accordingly and assign the correct channel mask. When converting from WAVE_EX to WAVE_EX channel mapping could be even more comfortable since one could work exclusively with logical channel names instead of channel numbers.
Good suggestion, ill use it in the next release :)


Yeah - but it would be nice if one could do it anyway :D
I think so to so im already working on it. Maybe the next version will already have a readonly window which shows all the chunks in a wav.

johnman
29th July 2005, 12:22
One reason to use WAVE_EX.

First a precision: dwChannelMask don't inform about "the channel order" but the channel identity. The order is always (mulchaud doc):

My english isnt as good as i would like it to be. But you're absolutely correct.


Then dwChannelMask inform what channels are present.

Now a posible use:
When you demux a multichannel wav in monowaves (Stream manipulation-Mono streams, for edit purpose, for instance) your names are suffixed with ch0, ...
If you have read a WAVE_EX you can safely suffix with FL, FR, ... And if you write WAVE_EX you can identify in dwChannelMask each monowav.
After, when you need remux (Stream manipulation-Merge files) you don't need keep in mind the channel order, the dwChannelMask of each monowave inform to your soft.

But for me is enough ww can read WAVE_EX >4 GB (with "Ignore invalid wav size", I suppose) to demux big 6wav files generated with faad.

"and i am happy to report ww can now read WAVE_EX files."
I am happy also and wait for your new beta.

Thanks.
Good idea:) . I already wanted to give correct naming before, not something like ch0, ch1 etc and waveEx makes that possible :).

The next version may still take a couple of days. I have noticed a couple of problems which im trying to solve. The most important one i found out is that the settings for nero fends in ww are ignored by cb.

johnman
1st August 2005, 00:15
Before releasing i would like to test my program a little with wavEX files and 64 bits wavs. I already used mc tools and got some files from this (http://www.tsp.ece.mcgill.ca/MMSP/Documents/AudioFormats/WAVE/WAVE.html) page.

Maybe somebody knows a program or a site to get some more files to test with?

johnman
7th August 2005, 23:32
UPDATE v0.5xb


The programs which are currently supported are :

surcode cd (dts)
surcode dvd (dts)
twolame (mpeg 2)
ape (monkey's audio)
flac
wavpack
nero fends (frontend for nero aac)
MPC
lame (mp3)
Ogg
sonic foundry soft encode (ac3) new
DA's ac3enc new

The new version includes a couple of new features (and probabely new bugs since i have rewritten a lot of code (again) ):

- logging option in cb. This shows the commandlines which are used and some other interesting stuff. This can also be usefull if someone wants to make his own program for sending jobs to cb.

- supports now the ac3enc.dll from Dark Avenger which should be better then the old one. ( :thanks: DA for your help)

- support for sonic foundry ac3 encoder

- support for non PCM and wav ex.

- if a channelmask is available in the wave ex and a wav is splitted to monostreams, it now gives the correct channelnames.

- an option to automaticaly import new channelmapping. If you add a fille "mappingsNEW.ini" to the ww dir it will be be imported and renamed to "mappingsIMPORTED.ini". The new ww comes with a mappingsNEW.ini in the dir so you can combine it with the one you have. Remember, ONLY the mappings file can be used in different version, DONT copy the preferences from old to new version.

- option to avoid clipping

- fast switching between the different config dialogs is now possible by using F2,F3,F4 and escape (for cancel).

- Option to create a tempfile when normalising. This is usefull when resampling, since the result will be saved and the second pass it uses the tempfile to normalise. But this option might create huges files.... so becaurefull when using it. And when you are doing a "normalize list" with tempfile creation, all filles will first be converted to a tempfile, so make sure you got enought diskspace when using it !

- some other other stuff i dont remember.

If daphy's site is online again ill upload a new version.

Current issues:

- support for sonic foundry is available, but not reliable. Somehow sonic doesnt read the settings correct from the .ini file which is created.

- in v0.5b there was a problem with the detection of surcode dvd. Thx to daphy this has been fixed in v0.52b.

-in v0.52b there was a problem when converting big files. Thx to tebasuna51 this problem is fixed. (look in the forum for details)

-there is a bug in sonic foundry softencode which will disable LFE when it is set to On en it is enabled when it is set to Off. Thx to tebasuna51 this problem got a workaround by adding an option in CB. (look in this forum for details)

- The "save output" in preferences should not be unchecked. I had removed this option, but when going back to an older backup version of my prog, i forgot to remove it again. When this option is disabled, the program might not work properly. (removed in v0.53b)

- Not every setting gives correct results when using da's ac3enc, and sometimes it doesnt run 100% stable.

- When cb is used on winme and a dos program is canceled by pressing stop, winme asks if it should terminate the program. You should press "Yes" manualy. If the window is hidden, you dont see this message, which means you have to check "show programs" to see it. I think i can fix this, but i doubt if this is really usefull since i dont think many people are using winme anyway.

-when resampling a file with more then 100 channels the memory consumptions becomes very significant (500MB+) when resampling a file with more then 500 channels ww might crash.

Things im considering to implement (in random order)
- vst-hosting
- replaygain
- settings the channelmask manually (for wav-ex files)
- show/edit the chunks inside a wav (showing part is done)
- decent documentation
- dynamic amplification
- equalizer
- decoding for all formats which cb can create
- cue sheets

Changelog

from v0.53 -> v0.54
- changed the option invert LFE in cb to invert specific settings. Now 5 settings will be inverted if this is checked

- Added chunk browser. This also works on avi's

- changed the location from where programlist.txt is downloaded in cb.

- some other minor fixes.

tebasuna51
8th August 2005, 01:55
Thanks for your job.
I wait for daphy's site to test it.

Mug Funky
9th August 2005, 15:23
If anyone is interested, i have played a little with vst's and i succesfully called some vst functions from several vst's. So wavewizard might become a VST host sometime in the near future.

cool. there's a big need for free VST hosts. "bidule" is a nice one, but you have to register that and all... i like the graphedit style interface though.

ursamtl
9th August 2005, 15:34
Mug, if you're just doing stereo stuff with VSTs, there are a couple of options already around for free VST hosts. One of the nicest I've seen is Kristal Audio Engine, which is like a Cubase clone with two VST slots per audio track and then two VST master slots at the end. There are a couple of other free host progs around too if you check on www.kvr-vst.com. I also look forward to John's implementing VST hosting since WW is rapidly turning into an app that ROCKS!! :)

Zyphon
9th August 2005, 15:37
@johnman

Thanks for the new update and the new support for sonic foundry soft encode much aprpeciated. :)

Keep up the great work. :)

johnman
9th August 2005, 18:26
I have uploaded it to daphy's site.... i dont think it will take long before it will be available.

@ ursamtl as i said in the other post, i added an option to do twopass resampling. (use normalize using tempfile + check when clipping)

@ Mug Funky
vst hosting is somthing i realy want to do, but i think it will take a while. I want to make a solid design, or ill have a hard time maintaining it.

@Zyphon
Im glad you like it :).

@all i hope you enjoy the new release, and if you find a serious bug, please post it and ill make a fix asap (probabely within 2 days).

And i would like to ask if some of you would like to check if the commandlines used by cb are correct. For this purpose i made a logging window in CB (not ww) so you can see immediately if a setting changes in ww, what the resulting command line will be. You can also look at it in the tiny textbox in ww, but this is obviously not as easy since its very very small.
Im not an expert on the usage of the supported commandline programs, so im not 100% sure i did everything correct.

To do this:
- start up ww and cb.
- got to the cb settings in ww and select configure i.e. lame
- enable the logging window in cb
- check the "message log" radio button on the logging window
- make the logging window as wide as possible so you can see the full commandline without horizontal scrolling
- now just change the settings in ww and look at the commandline in cb to see if they match up.

daphy
9th August 2005, 19:44
uploaded ;)

Questions:

-which ac3enc.dll do you use? the one from besweet or the one out of the DA package (I guess this one)
if DA, itīs not avaible as single download - maybe we should at it on needfulthings for automated download or generally put inside the package ;)
- I am not sure but plz check the finding routine on surcode DVD :confused:

johnman
9th August 2005, 19:59
uploaded ;)

Questions:

-which ac3enc.dll do you use? the one from besweet or the one out of the DA package (I guess this one)
if DA, itīs not avaible as single download - maybe we should at it on needfulthings for automated download or generally put inside the package ;)
- I am not sure but plz check the finding routine on surcode DVD :confused:

thx for the upload.

For ac3enc.dll look at the current issues for this version.

The routine for finding surcode is not changed, and it works 100% for me. Did you maybe chang the directory name/executable name to something else?
(and there is always the option to find it manually)

daphy
9th August 2005, 20:04
hm, the main problem is for me to find the mentioned file (ac3enc.dll with that date) at all (on the German board Iīve only found one from former times, maybe I missed something :confused: )-> I guess most of those guys will try ww with the one from besweet, so no serious bugreport can be expected :eek:

johnman
9th August 2005, 20:07
Ok, i couldnt find it either, but DA said it was on the german board in one of the packages. But im not to good in reading german so i might have missed it. Im going to post it in a sec, But i must explicitly mention it is a BETA version.

The one i used, i got by mail, so i dont know where else it is available.

Thx for bringing this to my attention :)

daphy
9th August 2005, 20:13
okay

as part of the package or as seperate download (manually or via list)?

johnman
9th August 2005, 20:20
Here is a link to a beta ac3encoder dll which will be removed when the attachment is enabled.

edit: removed
edit2: newer version (the 12.9 KB one):

tebasuna51
11th August 2005, 01:23
Good job Johnman. I make any test with WW v0.52b:

a) wav6 -> aac (aacenc32.exe Nero Fends)

- Channel Mapping: Enable (multichannel wav to aac)
- Stream manipulation: Disable
- Output Format: Wave PCM (Don't work with wav_ex)
- Sample Type: Work only with: 16bit int

b) wav6 -> ac3 (ac3enc.dll)

- Channel Mapping: Enable (ac3 order for SoftEncode or ac3enc)
- Stream manipulation: Disable
- Output Format: Wave PCM (Don't work with wav_ex)
- Sample Type: Work only with: 32bit float IEEE
- Notes:
Don't work with ac3enc.dll from HeadAC3he v0.24-a13 2004-12-15.
Work with ac3enc.dll 2005-08-09 in your previous post.

c) wav6 -> ac3 (Soft Encode)

- Channel Mapping: Disable (See Configure notes)
- Stream manipulation: Enable (Mono Streams)
- Output Format: Wave PCM (Don't work with wav_ex)
- Sample Type: Work at least with: 16bit int, 32bit int, 32bit float IEEE
- Configure notes:
1) Channel config: with L-0, R-1, C-2, LFE-3, LS-4, LR-5 is not necessary enable the ww Channel Mapping (only necesary when you make a re-ordered wav6 to be open directly in SoftEncode)
2) LFE Enable (necessary for 5.1). Then you insert, in SonnicAc3.ini, "UseLFE=On". SoftEncode make a 5.0 ac3, because a bug or a bad chosen name need "UseLFE=Off" to make a 5.1 ac3. I use:
Sonic Foundry Soft Encode Version 1.0 (Build 19)
Dolby Digital Encoder Version 6.2.2 December 2, 1997

d) wav_ex 6chan <-> 6 mono wav_ex

Correct split in 6 mono wav_ex preserving the ChannelMask.
Incorrect Merge of 6 mono wav_ex ignoring the ChannelMask.

e) wav > 4GB

Opened when enable "Ignore invalid wav size". Length limited to 4GB. I think, in this case, the length must be calculated with the file size. I know the problem with the extrachunks at the end of file, but is better to have little clicks at the end, than lose MB of correct data.
When split in 6 mono wav only the first 4 GB are converted, the rest are ignored.