Log in

View Full Version : bsn.dll mod with command-line options (Please Test)


Pages : 1 [2] 3

neo75903
2nd July 2004, 12:40
hey Emale, nice to hear you are still on it.

I have discovered something really odd about the Gui. It performs much better when running from batch file (BsnPresetGui.bat).
If started from the jar file, it does:
1. poping up all those dos windows.
2. dos commands are executed really slow.
3. the interface is also really slow.

Is that also your experience with the gui?

Thx

E-Male
2nd July 2004, 15:56
i can't test the gui atm
the oop-rewrite has priority (fixing it's odd behavior to be precises)

neo75903
2nd July 2004, 20:13
nvm, the problem was my pc, i had 1.4 running for my IDE and a older version 1.3(slow one) for the jar files.
Just removed 1.3JRE and everythings runs fine.

E-Male
2nd July 2004, 23:47
ok, finished the OOP rewrite of bsn.dll and bsnpreset.exe and included the source
!!please test for bugs!!

i couldn't compile nencode
i get
"error C3861: 'assert': identifier not found, even with argument-dependent lookup"
36 times !!

bond
2nd July 2004, 23:52
have a look here: http://www.hydrogenaudio.org/index.php?showtopic=22870&

someone released an nencode mod using your changes too :)

E-Male
3rd July 2004, 00:02
that mod has nothing to do with mine

E-Male
3rd July 2004, 00:11
i can't register to hydrogenaudio
i get:

The error returned was:
Sorry, you are not permitted to use this board

neo75903
3rd July 2004, 11:22
erm got:
"The connection was refused when attempting to contact e-rels.dyndns.org"

E-Male
3rd July 2004, 11:58
apache fixed
download should work now

neo75903
3rd July 2004, 13:16
i see you have added an present preset in the view list, which seems to me not editable.
I so, was thinking removing my current button.

E-Male
3rd July 2004, 13:30
the data in the nero-reg-key can be accessed via a pseudo-preset called "current"

you say it's not editable?
i'll check that, it should be

"current" is never used by my mods, it's just for editing the registry for non-moded nencode software

when using "view" without an other paramter "current" and "default" are displayed before the alphabetic list of presets

neo75903
3rd July 2004, 16:43
tried again with for example:
---------------------------------------------------------------------
D:\My Documents\netbeansPRJ\BsnPresetGui>bsnpreset.exe edit current -vbr_transcoding
current - bitrate: vbr streaming

D:\My Documents\netbeansPRJ\BsnPresetGui>
---------------------------------------------------------------------
vbr streaming remained unchanged.

I am thinking of removing the current button and have the user select the current settings from the list.

nice job rewriting into oop, i think lots of ppl will take advance of that later.

E-Male
3rd July 2004, 17:11
i'll look into it tonight
maybe i forgot one "if (preset=="current") ..." somewhere

you should have seen the non-OOP-code, a mess, useless to anyone else (including myself 2 weeks later)

once i add some usefull comments the code should be easily useable and extendable for everyone

E-Male
3rd July 2004, 17:37
got it fixed

DSPguru
3rd July 2004, 22:23
Originally posted by E-Male
got it fixed thumbs up for E-Male :cool: !
must admit i haven't checked this module, but have compiled it and uploaded package in here :
http://DSPguru.doom9.org/plugins.html

E-Male
4th July 2004, 10:49
thx DSPguru

one error i noticed was that the output to the interface is wrong (output files are fine)
when i checked the code i saw the error was in my code, too, still my compile gives correct output
i'll look into that

E-Male
4th July 2004, 10:58
@DSPguru:
please change line 78 in bsn.cpp
from:
fprintf(stderr,"[00:00:00:000] | BSN.dll: " + nenregobj.outpsum("default"));
to:
fprintf(stderr,"[00:00:00:000] | BSN.dll: " + nenregobj.outpsum("current"));

E-Male
4th July 2004, 11:14
i fixed the line in the pack

i'm gonna add comemnts and readmes and do a final compile with the newest sdk later taday ot this week
this should be the final release then whioch after some testing should be fine to be added to besweet

as for nencode:
i'll add the code there, too, as soon as someone can help me getting nencode compiled without C3861 errors

neo75903
4th July 2004, 12:56
Great job Emale,

even i almost start to make sense out of the code, and i dont even program c :).

Two thumbs up man!

DSPguru
5th July 2004, 01:19
Originally posted by E-Male
@DSPguru:
please change line 78 in bsn.cpp
from:
fprintf(stderr,"[00:00:00:000] | BSN.dll: " + nenregobj.outpsum("default"));
to:
fprintf(stderr,"[00:00:00:000] | BSN.dll: " + nenregobj.outpsum("current")); i added another function called "BSN_Echo" to v0.24.int BSN_Echo(char* c)
{
static int i=0;
switch(i++)
{
case 0:
sprintf(c,"+-------- BSN --------");
return 1;break;
case 1:
nenreg nenregobj;
sprintf(c,"| %s",nenregobj.outpsum("current"));
return 1;break;
}
return 0;
}
v0.24 made it into BeSweet v1.5b29.

now.. how about writing a manual to -bsn( ) ?
you could copy a template from "-core()" or "-ota()" : http://DSPguru.doom9.org/cli.html

E-Male
5th July 2004, 03:57
i'll write that manual along with the readme

E-Male
5th July 2004, 05:32
new besweet works fine with bsn 0.24
but when i compile the code myself besweet crashes right when "+-------- BSN --------" should appear on the screen

EDIT: i assume i need a updated bsn.def

EDIT2: got it working

E-Male
5th July 2004, 06:41
i updated my pack with a new version based on 0.24 (sources and dll)
-improved use of BSN_Echo
-optimize parameter fixed [still no idea what it does]

Kurtnoise
5th July 2004, 09:25
Good Job E-Male...:cool: So...we need an update for BeSweetGUI now :D


@DSPGuru : could you give an answer for my requests (http://forum.doom9.org/showthread.php?s=&threadid=77186) ?? Thank you very much.

E-Male
5th July 2004, 19:24
no thread-hitchhiking please

neo75903
5th July 2004, 23:34
-optimize
i think it is supposed to do the same thing as mp4creator60.exe -optimize does.
As far i understands, it optimze the stream somehow it is beyond my knowledge, but i do experience some improvments during streaming from a server. But also sometimes screws up a bit it is very rare and havent experinced it with the latest versions. So as far i can guess the bug has been taken out.

Malow
9th July 2004, 19:14
is any alternative link for the bsn rar file? i can't download...

E-Male
9th July 2004, 21:47
my pc crashed, tyr again

SiXXGuNNZ
9th July 2004, 22:17
I am having trouble getting 256 cbr with a 6ch encode, here is the switch I used

besweet log:

BeSweet v1.5b29 by DSPguru.
--------------------------
Using azid.dll v1.9 (b922) by Midas (midas@egon.gyaloglo.hu).
Using Shibatch.dll v0.24 by Naoki Shibata & DSPguru (shibatch.sourceforge.net).
Using bsn.dll v0.24 by DPeshev,Richard,E-Male,DSPguru (DSPguru.Doom9.org).

Logging start : 07/09/04 , 14:12:27.

C:\Program Files\GordianKnot\BeSweet\BeSweet.exe -core( -input C:\DVDRIP\VTS_02_1 - 0x80 - Audio - AC3 - 6ch - 48kHz - DRC - English - DELAY -85ms.ac3 -output C:\DVDRIP\AAC.mp4 -logfilea C:\DVDRIP\AAC.log ) -azid( -c normal --maximize ) -bsn( -6chnew –cbr 256 -codecquality_high -aacprofile_he -downmix_no -usepns_no -muxintovideo_no -exportaac_no -hintforstreaming_no)

[00:00:00:000] +------- BeSweet -----
[00:00:00:000] | Input : C:\DVDRIP\VTS_02_1 - 0x80 - Audio - AC3 - 6ch - 48kHz - DRC - English - DELAY -85ms.ac3
[00:00:00:000] | Output: C:\DVDRIP\AAC.mp4
[00:00:00:000] | Floating-Point Process: No
[00:00:00:000] +-------- AZID -------
[00:00:00:000] | Input Channels Mode: 3/2, Bitrate: 384kbps
[00:00:00:000] | Total Gain: 8.797dB, Compression: Normal
[00:00:00:000] | LFE levels: To LR -INF, To LFE 0.0dB
[00:00:00:000] | Center mix level: BSI
[00:00:00:000] | Surround mix level: BSI
[00:00:00:000] | Dialog normalization: No
[00:00:00:000] | Rear channels filtering: No
[00:00:00:000] | Source Sample-Rate: 48.0KHz
[00:00:00:000] +-------- BSN --------
[00:00:00:000] | bitrate: vbr streaming
[00:00:00:000] | HE-aac high quality encoding
[00:00:00:000] +---------------------
[00:02:15:584] Conversion Completed !
[00:00:53:000] <-- Transcoding Duration

Logging ends : 07/09/04 , 14:13:20.

what am I doing wrong?

Malow
9th July 2004, 22:22
he-aac does not suport cbr above 96k (i guess) use vbr.

SiXXGuNNZ
9th July 2004, 22:32
but on the doom9 nero digital guide it says to use he-aac 256 for 6 channel - link (http://www.doom9.org/nerodigital.htm)

I will try LC, thanks

SiXXGuNNZ
9th July 2004, 22:50
matter of fact, in recode you can select 6 channel he, I think it is because it is 256 spread out between the 6 channels which would be like 42-43 for each channel on avg, I just need to find that preset in the bsn.dll now, I will continue testing, if someone has the answer, hook me up :D

edit: I dunno what happened or where, but this switch works now :D

-bsn( -6chnew -cbr 256 -codecquality_high -aacprofile_he -downmix_no -usepns_no -muxintovideo_no -exportaac_no -hintforstreaming_no)

E-Male
9th July 2004, 23:42
if you haven't changed the "default"-preset bsn( -6chnew -cbr 256 ) should be enough

also the plug-in-mod just edits and reads the registry, what the encoder really does it can't tell

Malow
10th July 2004, 01:35
ow, i forgot, tnks e-male for making a simple solutions for a lot of people... finaly a full CLI he-aac encoder. :) (im making simple ways of making xvid, based on batch files for the brazilian users.. :)

bond
10th July 2004, 13:25
Originally posted by Malow
finaly a full CLI he-aac encoder. :) (im making simple ways of making xvid, based on batch files for the brazilian users.. commandline he-aac encoding should have been already possible when using reals he-aac codec (via helixproducer)

Originally posted by SiXXGuNNZ
in recode you can select 6 channel he, I think it is because it is 256 spread out between the 6 channels which would be like 42-43 for each channel on avgexactly

neo75903
10th July 2004, 16:17
Not nescesarry, there was a post somewhere i caint find in which explained how aac handles multichan streams.
It is wrong to think bitrate/number channel = bitrate/channel.
Hope someone remebers where that post was.

http://forum.doom9.org/showthread.php?s=&threadid=74708&highlight=bitrate+5.1+aac
some say to handle a ratio of Bitrate * 2.5 or 2.7 is the bitrate you need for your Multichan stream (2.7 at hans-jürgen's post).

Malow
10th July 2004, 22:14
yes, but almost all here have nero, and almost nobody knows what is helix producer... :)

E-Male
11th July 2004, 00:53
the more channels you compress the better will the ratio be because similarities between channels can be used

bond
11th July 2004, 16:54
Originally posted by E-Male
the forced resampling from from 48 to 44.1khz only happens when you use the options dialoge, NOT when you use the parameters (just retested that) hm i assume that issue is still there in the latest version?
can this be fixed somehow, its really not nice :(

E-Male
11th July 2004, 18:18
what exactly is the problem?
i can use 48khz as long a i donÄt use the options dialoge, which is no longer needed

bond
11th July 2004, 22:18
yep, its not necessary to use the gui (atm), but still that doesnt mean that the problem (bug?) is gone
it would be nice to still be able to use the gui correctly (only if its easily fixable), who knows how ahead will change their codec with the time, so that the gui option is still good to be there i think :)

E-Male
12th July 2004, 01:38
write to ahead and tell them about the bug
nothing more i can say about it
i fot no idea about the innerworkings of their software

bond
12th July 2004, 18:02
hm there seems to be a quality related problem, which has been reported here (http://www.hydrogenaudio.org/forums/index.php?showtopic=23392&st=)

the first example of why its good that the gui option exists :D

Originally posted by E-Male
write to ahead and tell them about the bug
nothing more i can say about it
i fot no idea about the innerworkings of their softwarehm, ic another bug caused by ahead, i thought it was caused by bsn.dll :/

E-Male
12th July 2004, 19:16
according to dspguru besweet just reacts to the encoder

and NAACEnc is a different story

Kurtnoise
17th January 2005, 19:12
Hi,

I've question for you E-Male : I don't know if you have noticed already this thing but it seems that bsn doesn't switch the "Profile" when we choose different bitrates.

Here is an example to understand what I say :

BeSweet v1.5b29 by DSPguru.
--------------------------
Using Shibatch.dll v0.24 by Naoki Shibata & DSPguru (shibatch.sourceforge.net).
Using bsn.dll v0.24 by DPeshev,Richard,E-Male,DSPguru (DSPguru.Doom9.org).

Logging start : 01/17/05 , 18:53:25.

BeSweet.exe -core( -input D:\Music\Out of Time.wav -output D:\Music\Out of Time.mp4 -logfile D:\Music\Out of Time.log ) -bsn( -2ch -vbr_transcoding ) -ota( -g max )

[00:00:00:000] +------- BeSweet -----
[00:00:00:000] | Input : D:\Music\Out of Time.wav
[00:00:00:000] | Output: D:\Music\Out of Time.mp4
[00:00:00:000] | Floating-Point Process: No
[00:00:00:000] | Overall Track Gain: 0.142dB
[00:00:00:000] | Source Sample-Rate: 44.1KHz
[00:00:00:000] +-------- BSN --------
[00:00:00:000] | bitrate: vbr transcoding
[00:00:00:000] | HE-aac high quality encoding
[00:00:00:000] +---------------------
[00:03:25:123] Conversion Completed !
[00:01:18:000] <-- Transcoding Duration

Logging ends : 01/17/05 , 18:54:43.


BeSweet v1.5b29 by DSPguru.
--------------------------
Using Shibatch.dll v0.24 by Naoki Shibata & DSPguru (shibatch.sourceforge.net).
Using bsn.dll v0.24 by DPeshev,Richard,E-Male,DSPguru (DSPguru.Doom9.org).

Logging start : 01/17/05 , 18:30:57.

BeSweet.exe -core( -input D:\Music\Out of Time.wav -output D:\Music\Out of Time.mp4 -logfile D:\Music\Out of Time.log ) -bsn( -2ch -vbr_radio ) -ota( -g max )

[00:00:00:000] +------- BeSweet -----
[00:00:00:000] | Input : D:\Music\Out of Time.wav
[00:00:00:000] | Output: D:\Music\Out of Time.mp4
[00:00:00:000] | Floating-Point Process: No
[00:00:00:000] | Overall Track Gain: 0.142dB
[00:00:00:000] | Source Sample-Rate: 44.1KHz
[00:00:00:000] +-------- BSN --------
[00:00:00:000] | bitrate: vbr radio
[00:00:00:000] | HE-aac high quality encoding
[00:00:00:000] +---------------------
[00:03:25:123] Conversion Completed !
[00:01:06:000] <-- Transcoding Duration

Logging ends : 01/17/05 , 18:32:03.


As you see, bsn.dll seems to keep the Profile (in my example : High Efficiency) whereas with Nero bundle the bitrate or quality settings switches automatically. I've no log file to prove encoding switches with Nero bundle...but I can upload some samples. So my question, can you add this automatic switch ?? If not, I can manage it under BeLight. It's easy. It's not a problem for me but I think people who uses bsn.dll must know this "issue"...

E-Male
17th January 2005, 19:23
i intentionally keep every thing to parameters, incl. he-acc
but i don't know if the encoder will internally overwrite that one anyway

Brother John
17th January 2005, 19:58
Quick test with 4 command lines (BeSweet 1.5b29):
-bsn( -2ch -vbr_streaming )

-bsn( -2ch -vbr_transcoding )

-bsn( -2ch -vbr_transcoding -aacprofile_he )

-bsn( -2ch -vbr_transcoding -aacprofile_lc )
First 3 result in a HE file, last one of course is LC (as reportet by CoreAAC).
If the unofficial HE modes don't introduce any sync issues or sound artifacts, I don't see a pressing reason for not using them.

Kurtnoise
18th January 2005, 08:18
If the unofficial HE modes don't introduce any sync issues or sound artifacts, I don't see a pressing reason for not using them.
Yeahh sure but the key point could be the bitrate. I don't know exactly if the bitrates expected give the right values (with CBR mode by example with higher bitrates). I'll test it in more details tonight.

In addition, if the Nero developpers have restricted the HE-AAC encoder to lower bitrates, it's for good reasons.

E-Male
18th January 2005, 09:39
Originally posted by Kurtnoise13
...if the Nero developpers have restricted the HE-AAC encoder to lower bitrates, it's for good reasons.
maybe, maybe not

but many people here have been very interested in gettign rid of that automation
maybe just to test it themselves

yaz
18th January 2005, 12:30
@kurtnoise13
iirc, bsn restores the registry settings to that what was set before its usage. so, if your last set (say, from nero bundle) was he_aac than bsn restores always that. in add, it changes that entries only wich are explicitely set. so, if you don't set 'mode' (lc or he) it does not change.
but maybe i'm completely wrong here. e-male would make all this clear, anyway.

the bests
y

the encoder does not overrule the settings of bsn, so 'forbidden' combinations are also available. say, transcoding/he (sounds pretty cool for me). i've spent many days with searching and reading about the reason of thess restrictions but i've not read anything really convincing. maybe, it's just like flu. somebody started to spread it occasionally and after all everybody got it factually :-)