BASS.NET API 2.4.17.7

Started by radio42,

BassFan

#175
Quote from: mitchjsthat code isnt ready for public!

its to messy and needs more work

since i couldnt get beat data into vis...
i think it was cause of my .net api was the 2.3.1.0 not the 2.3.1.1

ill clean up and make a nicer demo

thanks
mitch

i have say you can not run BassVis 2.3.0.3 with .net api 2.3.1.0 use .net api 2.3.1.1 for this Version
The sample work great with no problem by me

greets

ken

#176
I need to record a audiosource and convert it "on the fly" to several audioformat at the same time (let's say wma, mp3 low bitrate , mp3 high bitrate)  I need create a new file every hour (or different duration) but with out and gap in the recording. I assume that I run Bass recorder all the time and I just create new file every hour.

Plase point me in the right direction on how to do this, "connecting" the encoder correct for this.

Thanks!

*** I think I solved it :-)

radio42


ken

Well it works as I like encoding several formats at the same time from a live source. But...

How do I set the "EncoderWMA" to encode realy low quality, like 5 kbit/s and 8kHz mono.

I have my recorder at 44.1Khz stereo _recHandle2 = Bass.BASS_RecordStart(44100, 2, BASSRecord.BASS_RECORD_PAUSE, _recProc, 0); and I need it that way cause I encode other formats in good quality.

_wma = new EncoderWMA(_recHandle2);
_wma.InputFile = null;
_wma.OutputFile = filename;
_wma.WMA_Bitrate = bitRate;
_wma.WMA_UseVBR = false;
_wma.WMA_UseNetwork = false;
_wma.WMA_UsePublish = false;
_wma.Start(null, 0);

Thanks!

radio42

The WMA codec does not support all ranges of samplerates and bitrates.

You might use the "BASS_WMA_EncodeGetRates" method to query the available bitrates for a given samplerate.

ken

OK, I see.

Is there any way for me to downsample and go mono before encoding WMA without consuming much CPU and changing the samplerate and for the other encoders I have running on the same channel, "under the same Bass recorder"?

I belived that WMA accepted higher samplerate and downsample it self, I did this with other components some years ago (but they are AciveX so I dont want them here)


ken

#181
Old subject..  Is the MP3 a VBR or CBR.

I found this at codeproject, maby something for BASS.Net and the "tag" class. Some extra info like CBR/VBR and VBR bitrates, layer/mpeg type and more: http://www.codeproject.com/audio/MPEGAudioInfo.asp 
or this in VB.NET that not 100% http://www.codeproject.com/vb/net/vbmp3header.asp



 

radio42

QuoteIs there any way for me to downsample and go mono before encoding WMA without consuming much CPU and changing the samplerate and for the other encoders I have running on the same channel, "under the same Bass recorder"?
I got lost what you are trying to do. ;-)
You want to downsample without changing the samplerate?
-> Downsampling involves changing the samplerate!
-> However, resampling is supported via BASSmix, e.g. change a stream from 44.1kHz to 22.05kHz
-> Same is with going from stereo to mono. This can be done via Matrix Mixing

QuoteI belived that WMA accepted higher samplerate and downsample it self
-> Have you tried this with BASSwma already?


Regarding VBR vs. CBR detection:
There is not much what BASS.NET could do, since BASS.NET does not do the actual frame header parsing.
BASS is doing the decoding of MP3 frames and so only BASS could give such information.
However, the issue is, that there is no clear standrad about a VBR header in the frames.
Some encoders write "Xing", some "VBRI" etc.
See this post for more details:
http://www.un4seen.com/forum/?topic=5034.msg33620;hl=vbr;topicseen#msg33620

radio42

#183
02.03.2007: Version 2.3.1.1 is out!

Misc:
- EncoderFLAC small bug fix with the "--sign" option!
BassMIDI 2.3.0.2: support added:
- various changes to the BASSMIDIEvent enum
- Track number added to markers and syncs (see BASS_MIDI_MARK class)
- new BASS_MIDI_StreamGetMarks function
- new BASS_MIDI_FontSetVolume/GetVolume functions
BassVIS 2.3.0.4: support added:
- complete redesign of all BASS_WINAMPVIS functions  (see BASSVis help for more info)!

Here are the full versions (including all help systems and samples):
- Bass23.Net11.zip
- Bass23.Net20.zip

Here are two compact versions (if you don't want the full installer version - only recommended for pro-users!)
- Bass23.Net11_compact.zip
- Bass23.Net20_compact.zip
 

BassFan

Quote from: radio4202.03.2007: Version 2.3.1.1 is out!

Misc:
- EncoderFLAC small bug fix with the "--sign" option!
BassMIDI 2.3.0.2: support added:
- various changes to the BASSMIDIEvent enum
- Track number added to markers and syncs (see BASS_MIDI_MARK class)
- new BASS_MIDI_StreamGetMarks function
- new BASS_MIDI_FontSetVolume/GetVolume functions
BassVIS 2.3.0.4: support added:
- complete redesign of all BASS_WINAMPVIS functions  (see BASSVis help for more info)!

Here are the full versions (including all help systems and samples):
- Bass23.Net11.zip
- Bass23.Net20.zip

Here are two compact versions (if you don't want the full installer version - only recommended for pro-users!)
- Bass23.Net11_compact.zip
- Bass23.Net20_compact.zip
 

great work

greets Bassfan

BassFan

#185
Hi

Helmut and me have writen a new BassVis Sample for C#_NET
Is the self Sample used in VB_NET, Delphi and VB

here is a shot

and the File only GenBitmap not working to time
you can make it self or wait that Helmut and me have finish it in the next time

Greets BassFan

mitchjs

i cant get this new demo you made, bassfan, to run...

it says methods missing in the bass_vis.dll

Method not found: 'IntPtr Un4seen.Bass.AddOn.Vis.BassVis.GetWindowLongPtr(IntPtr, Int32)'.

i just downloaded 2.3.0.4 of the .dll
sure enough the new meths arent in that .dll

I guess there is a 2.3.0.5 out there?

mitch

BassFan

#187
Quote from: mitchjsi cant get this new demo you made, bassfan, to run...

it says methods missing in the bass_vis.dll

Method not found: 'IntPtr Un4seen.Bass.AddOn.Vis.BassVis.GetWindowLongPtr(IntPtr, Int32)'.

i just downloaded 2.3.0.4 of the .dll
sure enough the new meths arent in that .dll

I guess there is a 2.3.0.5 out there?

mitch


you must have .NET v2.3.1.1
or implement your own GetWindowLong from  user32.dll and use 'Const  GWL_HINSTANCE = -6 '

TmphInst = GetWindowLong(hWnd, GWL_HINSTANCE)hWnd is the Winhandle from your Form.

this work!
BassVis.BASS_WINAMPVIS_Init(BassVis.GetWindowLongPtr(this.Handle, (int)GWLIndex.GWL_HINSTANCE), this.Handle);
with 2.3.0.4
check you have the right .NET API installed

greets

mitchjs

I do... IT compiles fine!!

it doesn run, and when i look at the .dll there is NONE of the new exports

the dll size is 74k, its what i just downloaded from the front page here

packed with upx.. shouldnt hurt the exported dll functions...
but they not there...

help file is even old...

maybe send me newest .dll

or attach here

mitch

BassFan

#189
check this!
v2.3.0.5 not released yet!

give a feedback if work
greets

mitchjs

nope...

this method is not in 2.3.0.5

.GetWindowLongPtr(IntPtr, Int32)

maybe its not susposed to be, and the demo is bad

cause its in the .net api

but the other NEW methods are there

mitch

BassFan

#191
Quote from: mitchjsnope...

this method is not in 2.3.0.5

.GetWindowLongPtr(IntPtr, Int32)

maybe its not susposed to be, and the demo is bad

cause its in the .net api

but the other NEW methods are there

mitch
i have checked it for 3 min and it work fine...
the self DLL.. self Sample what i have upload

this methode GetWindowLongPtr(IntPtr, Int32) is in .NET API not in BassVis self  :-\

greets

mitchjs

ok, then bug in .net api

here is the line

BassVis.BASS_WINAMPVIS_Init(BassVis.GetWindowLongPtr(this.Handle, (int)GWLIndex.GWL_HINSTANCE), this.Handle);

and it compiles fine

mitch

BassFan

Quote from: mitchjsok, then bug in .net api

here is the line

BassVis.BASS_WINAMPVIS_Init(BassVis.GetWindowLongPtr(this.Handle, (int)GWLIndex.GWL_HINSTANCE), this.Handle);

and it compiles fine

mitch

show the pic what i have upload

greets

mitchjs

#194
sorry, i did not read it right

ok, its says its there...

but it dont run!

mitch

BassFan

#195
Quote from: mitchjssorry, i did not read it right

ok, its says its there...

but it dont run!

mitch

check this exe compiled with my source what i have upload!

greets



ken

Add audio to a audiofile?

How do I easiest and fastest open a MP3 file and add one seconds silence at the end of that audiofile and save it, preferly without any extra compression and loosing quality?

Thanks!

radio42

Without any recompression etc. you need to open the MP3 file yourself and add the sample data according to the MPEG specs. However, there is no such raw method in BASS or BASS.NET...

ken

ok thanks, and if I open and reencode the file with BASS.NET how do I add the extra second of silence at the end?