BlitzBASS who do i use?
Blitz3D Forums/Blitz3D Userlibs/BlitzBASS who do i use?
| ||
My problem is that im making a multi system emulator similar to the spectrum emulator written in blitz3d, Like the spectrum emulator im using the BASS library. I noticed the BASS lib has commands used in a organ program that are missing from; blitzBASS.bb how do I generate a note using Blitz and BASS my guess is that the code exists in BASS but a couple of functions are missing from the blitzBASS.bb that I have, and a couple of lines of source code added could fix things up. HERE IS THE COMMAND THAT I NEED, its missing from blitzBASS /* create a stream, stereo so that effects sound nice */ str=BASS_StreamCreate(44100,2,0,WriteStream,0); You can download the emulator from www.gstsoftware.co.nz it currently emulates: arcadia2001,vc4000,jupiter ace,vz200 Thanks, please help! |
| ||
OR to make things clearer ,I want to generate a plain note like the retro computers did. Presently I have to loop a sound sample and i sounds terrible because you can hear a gap as the sound starts over ,also the samples increase the download size, and if I could use BASS i could do away with the sound samples. |
| ||
You could avoid a license problem by trynig out the synth in my Signature. It does quite a few things and is quite easy to use. Try it out- Whats the worst that could happen? :) On another note, I'm sure BASS is available from a link in the toolbox. |
| ||
;;;Declare Function BASS_StreamCreate Lib "bass.dll" (ByVal freq As Long, ByVal chans As Long, ByVal flags As Long, ByVal proc As Long, ByVal user As Long) As Long I know that some code is missing from blitzsys.bb ,but I didnt write blitzsys so im lost, I know that the function would look something like this.... Function BASS_StreamCreate(freq,chans,flags,streamproc,user) iBankSize = 20 BankIn = CreateBank(iBankSize) PokeInt BankIn,0,freq PokeInt BankIn,4,chans PokeInt BankIn,8,flags PokeInt BankIn,12,streamproc PokeInt bankIn,16,user iStream = CallDLL(sBlitzBASSDLLNameA101B6,sBlitzBASSDLLCommandPrefixA101B6 + "BASS_StreamCreate_Wrap",BankIn) FreeBank BankIn Return iStream End Function the problem is I dont know where or how to poke each byte into "bankin" |
| ||
Cygnus :-) does it save .wav files to make the sounds, I wanted to avoid that. there are no license issues with BASS because my emulator is freeware. |
| ||
Cygnus :-) that demo was cool is it useful for an emulator that has 255 frequencies that change rapidly. |
| ||
Problem is that when I try a plain note you can here it looping like normal blitz3d sound channels That is a very important reason why I used BASS to solve that problem. |
| ||
Blitzbass development stopped at version 1.6 of Bass, last update was including recording functions. I should say that it was done before the advent of userlibs and decls files in Blitz3D, I think some people actually did decls files for Bass, not requiring the BlitzBass.dll wrapper. I have still the C++ sourcecode of blitzbass somewhere. I am quite astonished that somebody is still using it! I think you need to specify that by default it doesn't apply the BASS_SOUND_LOOP flag, or to the BASS_Streamplayfx ... but I am not sure... |
| ||
Gav, you shouldn't hear any loop sounds- the system uses 2 sample long self generated samples. What do you mean you can hear the sound looping? :O (In fact, the sound looping is what gives you the beep tone ;) ) Although the system creates WAV files, it only does this when it's generating the sample it will use to play, the WAV files are removed immediately after being loaded. |
| ||
Put simply, once the sound file finishs the note, there is a noticable gap before it starts over,this is below the quality that I require of my software. |
| ||
I just crossed this Bass Userlib decls+bb files from Nigel Brown http://www.nigelibrown.pwp.blueyonder.co.uk/blitz/userlibs/index.htm Maybe more adequate than the old blitzbass wrapper ... |
| ||
Hi, Thanks LAB[au] for that link. Does anyone have sample code for using the Bass commands from blitz3D? yinch'06 |
| ||
Bump. Does anyone have any example code for using the Bass userlib decls posted above? |
| ||
I still use my old BlitzBass.dll wrapper ... yet the usage is similar, Init bass, load some sample or streams, play these streams (call once), call bass update every frame. |
| ||
Is there a way with BlitzBASS to 'listen' to an incoming stream or even the output stream. For example if you were listening to an internet radio station or line in on your sound card how could you track that? It seems the lastest BASS does this through BASS_RecordInit and BASS_RecordStart. These functions are not exposed/available in BlitzBASS. HELP! Any thoughts? |
| ||
*** SOLVED IT *** Can get at the sample data from ANY input (internet radio, audio in, mic etc etc). I am so happy! If you want something done, do it yourself :-) |
| ||
Sorry for the late reply- Im still interested in Gavs issue: Put simply, once the sound file finishs the note, there is a noticable gap before it starts over Ok, well, im going to assume it just doesnt like your setup- you see, my sound files are so small that if there was any gap after the loop at all, you wouldnt hear any tones, just clicks :) perhaps we are misunderstanding each other hehe, but I'd like to see if there is a real problem with the code and if so, try to find a workaround :) Anyhow, Glad to hear you solved your issue :) |
| ||
BTW I think I remember I've downloaded a version of blitzbass from useen.com, and it contained a working example of CreateStream. A sinus wave sound was made in a bank or so, and then played. EDIT: uh, cannot find it anymore. Maybe it's this one: http://gorevolt.com/Rocko/Music/ |
| ||
1.6 is old use 2.3 |
| ||
Look for vertex's Bass wrapper, I think it's based on Bass 2.2 or 2.1 and there are examples mitglied.lycos.de/thevertex/download.php?c=media/BASSex.rar |