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 9th August 2005, 15:34   #41  |  Link
ursamtl
Registered User
 
Join Date: May 2004
Location: Montreal
Posts: 729
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!!
ursamtl is offline   Reply With Quote
Old 9th August 2005, 15:37   #42  |  Link
Zyphon
Registered User
 
Zyphon's Avatar
 
Join Date: Mar 2005
Location: UK
Posts: 190
@johnman

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

Keep up the great work.
__________________
Regards

Michael.
Zyphon is offline   Reply With Quote
Old 9th August 2005, 18:26   #43  |  Link
johnman
Registered User
 
johnman's Avatar
 
Join Date: Jan 2004
Posts: 212
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.
__________________
If you have a difficult task, give it to a lazy person -- they will find an easier way to do it.

Last edited by johnman; 9th August 2005 at 19:15.
johnman is offline   Reply With Quote
Old 9th August 2005, 19:44   #44  |  Link
daphy
Miles Freak
 
daphy's Avatar
 
Join Date: Apr 2003
Location: Europe
Posts: 652
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
__________________
CYA Daphy

Last edited by daphy; 9th August 2005 at 19:50.
daphy is offline   Reply With Quote
Old 9th August 2005, 19:59   #45  |  Link
johnman
Registered User
 
johnman's Avatar
 
Join Date: Jan 2004
Posts: 212
Quote:
Originally Posted by daphy
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
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)
__________________
If you have a difficult task, give it to a lazy person -- they will find an easier way to do it.
johnman is offline   Reply With Quote
Old 9th August 2005, 20:04   #46  |  Link
daphy
Miles Freak
 
daphy's Avatar
 
Join Date: Apr 2003
Location: Europe
Posts: 652
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 )-> I guess most of those guys will try ww with the one from besweet, so no serious bugreport can be expected
__________________
CYA Daphy

Last edited by daphy; 9th August 2005 at 21:13.
daphy is offline   Reply With Quote
Old 9th August 2005, 20:07   #47  |  Link
johnman
Registered User
 
johnman's Avatar
 
Join Date: Jan 2004
Posts: 212
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
__________________
If you have a difficult task, give it to a lazy person -- they will find an easier way to do it.
johnman is offline   Reply With Quote
Old 9th August 2005, 20:13   #48  |  Link
daphy
Miles Freak
 
daphy's Avatar
 
Join Date: Apr 2003
Location: Europe
Posts: 652
okay

as part of the package or as seperate download (manually or via list)?
__________________
CYA Daphy
daphy is offline   Reply With Quote
Old 9th August 2005, 20:20   #49  |  Link
johnman
Registered User
 
johnman's Avatar
 
Join Date: Jan 2004
Posts: 212
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):
Attached Files
File Type: zip ac3enc.zip (13.2 KB, 704 views)
File Type: zip AC3enc.zip (12.9 KB, 911 views)
__________________
If you have a difficult task, give it to a lazy person -- they will find an easier way to do it.

Last edited by johnman; 31st August 2005 at 17:11.
johnman is offline   Reply With Quote
Old 11th August 2005, 01:23   #50  |  Link
tebasuna51
Moderator
 
tebasuna51's Avatar
 
Join Date: Feb 2005
Location: Spain
Posts: 6,881
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.
tebasuna51 is offline   Reply With Quote
Old 11th August 2005, 02:29   #51  |  Link
johnman
Registered User
 
johnman's Avatar
 
Join Date: Jan 2004
Posts: 212
Thx for your testing report. Its very detailed, which is very helpfull to narrow down those nasty bugs.

Since a and b seem to work im going straigth to c.

Quote:
Originally Posted by tebasuna51

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
1)The channelmappings supplied are from other users, they are not tested by me. I added them since they might be usefull to others.
2)If i understand you correctly, you are saying i have to set the UseLFE to off to enable it? Im checking it out myself to see whats going on.

Quote:
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.
Only the splitting preservers the mask, when merging or stitching the mask is set to 0. This is done intentionaly, because what should ww do if 2 files with the same mask were added. So to quickly solve this is just set the mask to 0.
I am thinking about an option to manualy set the mask, and give a hint based on the existing masks.


Quote:
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.
Whenever the size in the header is ignored, everything behind the start of the datachunk is treated as sampledata. So it should read until the end of the file.

Quote:
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.
If not all data is converted, then something is wrong. ww doesnt cut away a couple of MB's just to be sure you dont get a pop. I just created a 6 channel file of 6 gb and splitted it into 6 monostreams.. Alls of them have the correct length
Are you sure you had enough diskspace?
__________________
If you have a difficult task, give it to a lazy person -- they will find an easier way to do it.

Last edited by johnman; 11th August 2005 at 02:33.
johnman is offline   Reply With Quote
Old 11th August 2005, 10:58   #52  |  Link
tebasuna51
Moderator
 
tebasuna51's Avatar
 
Join Date: Feb 2005
Location: Spain
Posts: 6,881
Quote:
Originally Posted by johnman
1)The channelmappings supplied are from other users, they are not tested by me. I added them since they might be usefull to others.
This ww channelmapping is supplied for me, before know the channelmapping inside the Configure of Soft Encode. Is only to explain when must be used or not.
Quote:
Originally Posted by johnman
2)If i understand you correctly, you are saying i have to set the UseLFE to off to enable it? Im checking it out myself to see whats going on.
Yes. I tested it. Maybe a bug of my version of Soft Encode, Version 1.0 (Build 19)
Quote:
Originally Posted by johnman
Whenever the size in the header is ignored, everything behind the start of the datachunk is treated as sampledata. So it should read until the end of the file.

If not all data is converted, then something is wrong. ww doesnt cut away a couple of MB's just to be sure you dont get a pop. I just created a 6 channel file of 6 gb and splitted it into 6 monostreams.. Alls of them have the correct length
Are you sure you had enough diskspace?
Yes, I work in a NTFS partition with more than 20 GB of free space.
The same file is separated by BeSplit with correct length (but with a error in the BlockAlign field, keeping the wav_ex header with a incorrect Channelmask corresponding to the wav_ex 6 chan.).
The file is a wav_ex generated by Faad with only 4.2 GB (130 min., 48 KHz) and the mono wav extracted have exactly 4/6 = 0.666 GB (124 m. 16 sec., 48 KHz).
The two erroneous fields in the wav_ex 6chan (RIFF_chunk_size and data_chunk_size) have values corresponding to the excess over 4 GB (aprox. 6 min., 48 KHz). Without extrachunks at the end of file.

The only check options in ww Preferences are:
- Ignore invalid wav size
- Save output
- Analyse files inmediately
- Stream manipulation -> Mono streams
- Output format -> Wave PCM

Thanks.
tebasuna51 is offline   Reply With Quote
Old 11th August 2005, 12:29   #53  |  Link
johnman
Registered User
 
johnman's Avatar
 
Join Date: Jan 2004
Posts: 212
Im just guessing here, but it might be that the size is vallid. If the size is set to 4 GB ww will not use the full file. That is also why ww sets the size to 0. A way to test this is to unselect ignore invallid size, and then to drop the file. If it accepts it, then the size is vallid.

Im going to solve this "bug" by adding the options
- always ignore the size and
- automaticaly ignore the size when its larger then 2gb/4gb

If this is not the problem, it might be handy if you could post the first 100 bytes of the wav. Then ill can experiment with it myself.
it would look something like this:
Code:
52 49 46 46 44 CB 36 83  57 41 56 45 66 6D 74 20
10 00 00 00 01 00 06 00  44 AC 00 00 30 13 08 00
0C 00 10 00 64 61 74 61  20 CB 36 83 01 00 01 00
01 00 01 00 01 00 01 00  FF FF FF FF FF FF FF FF
FF FF FF FF 01 00 01 00  01 00 01 00 01 00 01 00
FF FF FF FF FF FF FF FF  FF FF FF FF 00 00 00 00
00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00
EDIT and i can confirm the bug in sonic surcode. I have to set the option to off to enable it I think i will add an option to cb to invert the flag.

EDIT 2 and i got the same verion of surcode as you
__________________
If you have a difficult task, give it to a lazy person -- they will find an easier way to do it.

Last edited by johnman; 11th August 2005 at 12:46.
johnman is offline   Reply With Quote
Old 11th August 2005, 17:51   #54  |  Link
johnman
Registered User
 
johnman's Avatar
 
Join Date: Jan 2004
Posts: 212
I've uploaded ww v0.53 to needfullthings.

No real changes, only a couple of bugfixes
- option to invert includeLFE flag in cb (default is to switch the flag)
- new options to ignore size in header
- and 3 other minor issues.
- the channelmask is still set to 0 when merging/stitching file. This will be changed when i add an config option for settig the channelmask on all wavs created.

please check the new version tebasuna51
__________________
If you have a difficult task, give it to a lazy person -- they will find an easier way to do it.

Last edited by johnman; 11th August 2005 at 18:01.
johnman is offline   Reply With Quote
Old 11th August 2005, 17:57   #55  |  Link
tebasuna51
Moderator
 
tebasuna51's Avatar
 
Join Date: Feb 2005
Location: Spain
Posts: 6,881
Sorry. I mistake my precedent comment. WW don't stop at 4 GB, stop at the invalid length.
I decode a 130m12s.aac with Faad v2.1b to 6faad_ex.wav, and with Foobar2000 v8.3 to 6Foobar.wav.
The two wav are open like Type: Unknown with Ignore invalid wav size Disabled.
With Ignore invalid wav size Enabled can split them in mono wav.
I report the data in WW (I add the first line, aac, to compare length), and the wav headers of two wav 6 channel.

Code:
Filename                  Size       Length Channels SampleRate      Type
130m12s.aac         112.028 KB  2:10:12.459        6      48000       aac
6faad_ex.wav      4.394.508 KB  2:04:16.540        6      48000  Wav Ext.
6faad_ex_ch1_R.wav  699.051 KB  2:04:16.540        1      48000  Wave PCM
6Foobar.wav       4.394.508 KB    05:55.918        6      48000  Wave PCM
6Foobar_ch1.wav      33.367 KB    05:55.918        1      48000  Wave PCM
-------------------------------------------------------------------------
Offset  0  1  2  3  4  5  6  7   8  9 10 11 12 13 14 15  6faad_ex.wav
                                                         ------------
0000   52 49 46 46 00 FF FF FF  57 41 56 45 66 6D 74 20  RIFF.ÿÿÿWAVEfmt
0016   28 00 00 00 FE FF 06 00  80 BB 00 00 00 CA 08 00  (...þÿ.._»...Ê..
0032   0C 00 10 00 16 00 10 00  3F 00 00 00 01 00 00 00  ........?.......
0048   00 00 10 00 80 00 00 AA  00 38 9B 71 64 61 74 61  ...._..ª.8>qdata
0064   00 FF FF FF B9 FF 00 00  00 00 00 00 00 00 00 00  .ÿÿÿ¹ÿ..........

FileSize: 4.499.976.260 = 0x10C383044
RIFF_chunk_size = FileSize -  8 = 0x10C38303C  Invalid: 0xFFFFFF00
data_chunk_size = FileSize - 68 = 0x10C383000  Invalid: 0xFFFFFF00
-------------------------------------------------------------------------
Offset  0  1  2  3  4  5  6  7   8  9 10 11 12 13 14 15  6Foobar.wav
                                                         -----------
0000   52 49 46 46 24 30 38 0C  57 41 56 45 66 6D 74 20  RIFF$08.WAVEfmt
0016   10 00 00 00 01 00 06 00  80 BB 00 00 00 CA 08 00  ........_»...Ê..
0032   0C 00 10 00 64 61 74 61  00 30 38 0C B9 FF 00 00  ....data.08.¹ÿ..

FileSize: 4.499.976.236 = 0x10C38302C
RIFF_chunk_size = FileSize -  8 = 0x10C383024  Invalid: 0x0C383024
data_chunk_size = FileSize - 44 = 0x10C383000  Invalid: 0x0C383000
Maybe WW take like valid anything distinct of 0xFFFFFFFF or 0x00000000, but you can see there are two programs than fill data_chunk_size with different values.
I think if FileSize > RIFF_chunk_size + 8, the Length can be calculated with FileSize - 8 - Offset_data_chunk (ignoring possible extrachunks at the end of the file).

Thanks for your interest.
tebasuna51 is offline   Reply With Quote
Old 11th August 2005, 18:54   #56  |  Link
johnman
Registered User
 
johnman's Avatar
 
Join Date: Jan 2004
Posts: 212
Thx again for your detailed report. I managed to pinpoint the exact problem, and im pretty sure it is fixed in v0.53. The problem was that there are multiple chunks, which each have their own size . The RIFF chunk is the filesize -8, and because the riffchunk was wrong ww did not accept the file. But the data chunk size was "correct". It is to small, but only a size that's to big, or a size of 0 would be rejected. Since ww sets the size to 0 if an sizeoverflow occures, it will reject the size, but other programs just set the size to an invallid number, so the size was not rejected.

Anyway, if you use the new version and select "ignore the size in the header" you're ok.

And to check if the problem is fixed, you only need to drop the wav into ww. If the length is displayed correct (2:10:12.459) , then it should run fine.
__________________
If you have a difficult task, give it to a lazy person -- they will find an easier way to do it.

Last edited by johnman; 11th August 2005 at 19:10.
johnman is offline   Reply With Quote
Old 13th August 2005, 00:38   #57  |  Link
johnman
Registered User
 
johnman's Avatar
 
Join Date: Jan 2004
Posts: 212
Although i doubt im going to get any help, im gonna ask it anyway

I just finished a chunk analyser to show all the chunks in the wav, and i would like to test it a little, so again i need some testfiles. If anyone know a site like this with some example files i would like to get a link.

And here is a little screenshot:



And since im posting anyway, im thinking about letting ww also show all the data of other RIFF formats like avi. Both avi and wav's have the same basic RIFF structure, so it wouldnt be that much works (i think). But this doesnt really fits into ww so im only doing this if there isnt any other tool that can do this. So.... anyone wants to comment about this? Should ww be able to analyse avi's?
__________________
If you have a difficult task, give it to a lazy person -- they will find an easier way to do it.

Last edited by johnman; 13th August 2005 at 00:49.
johnman is offline   Reply With Quote
Old 13th August 2005, 19:34   #58  |  Link
tebasuna51
Moderator
 
tebasuna51's Avatar
 
Join Date: Feb 2005
Location: Spain
Posts: 6,881
I think is enough with the examples in this site. Of course can have many types with obsolete compression and different kinds of parameters and extrachunks, but for me is not necessary.

About the avi I think is a bit more complex. Do you know abcAVI Tag Editor? http://abcavi.tk/
tebasuna51 is offline   Reply With Quote
Old 14th August 2005, 04:54   #59  |  Link
johnman
Registered User
 
johnman's Avatar
 
Join Date: Jan 2004
Posts: 212
Quote:
Originally Posted by tebasuna51
I think is enough with the examples in this site. Of course can have many types with obsolete compression and different kinds of parameters and extrachunks, but for me is not necessary.

About the avi I think is a bit more complex. Do you know abcAVI Tag Editor? http://abcavi.tk/

I decided to support it, since im also thinking about letting ww demux whatever audio is present in the avi (although ww can only use the audio itself if its wav ofcourse)
__________________
If you have a difficult task, give it to a lazy person -- they will find an easier way to do it.
johnman is offline   Reply With Quote
Old 14th August 2005, 11:46   #60  |  Link
Zyphon
Registered User
 
Zyphon's Avatar
 
Join Date: Mar 2005
Location: UK
Posts: 190
Quote:
Originally Posted by johnman
I decided to support it, since im also thinking about letting ww demux whatever audio is present in the avi (although ww can only use the audio itself if its wav ofcourse)
This is good news johnman. I wish you luck implementing this and I hope the coding goes well.
__________________
Regards

Michael.
Zyphon 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 08:23.


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