|
|
|
|
|
|
#310484 - 05/03/10 01:46 PM
Re: Preview of LSPC Gen
|
Member
Registered: 12/13/05
Posts: 664
Loc: Italy
|
Ciao james yes, I get your email, but was to late.. Feature already made, SVN rev 1924: Here the example c++ code that we wrote how to display the all GM and GS sounds on the 10 Groove/MS family patch sounds: Patch_Source_GMGIGA::~Patch_Source_GMGIGA() { } static QString _getFamilyName(int iProgram) { if (iProgram < 0) return "Invalid"; if (iProgram < 4) return "Piano GIGA"; if (iProgram < 16) return "Electric Piano GIGA"; if (iProgram < 24) return "Organ GIGA"; if (iProgram < 32) return "Guitar GIGA"; if (iProgram < 48) return "Strings GIGA"; if (iProgram < 64) return "Brass GIGA"; if (iProgram < 72) return "Reed GIGA"; if (iProgram < 80) return "Flute GIGA"; if (iProgram < 96) return "Synth GIGA"; return "FX & ORIENTAL SOUNDS"; } #define LINUXSAMPLER_HOST "localhost" #define LINUXSAMPLER_PORT 8888 void Patch_Source_GMGIGA::reloadPatchListByLscp() { category_array.clear(); // clean old data (if any) // we add the categories first here, so they are in the order we need, // because the order is linked to the sequence of category buttons on // the Groove keyboard panel add_category_internal("Piano GIGA"); add_category_internal("Electric Piano GIGA"); add_category_internal("Guitar GIGA"); add_category_internal("Strings GIGA"); add_category_internal("Brass GIGA"); add_category_internal("Flute GIGA"); add_category_internal("Organ GIGA"); add_category_internal("Reed GIGA"); add_category_internal("Synth GIGA"); add_category_internal("FX & ORIENTAL SOUNDS"); add_category_internal("Drum Sets GIGA"); So, you can use for your tool too. Another new...now on LSCP file we can also include the all variation ( programs) sounds inside the .gig file and the MS display under GIGA GM/GS will display too. here the new shot: Where: 073 Piccolo Std = original name of the .gig file, if you edit the name of the original file, will display there. [0] = sound program inside the .gig file ( all my ,gig sounds have only one sound inside, it mean Prg 0 PRG= program change number VAR = GS Variation TYPE = GM/GIG .gig format. MAYBE tomorrow we include another NICE Info feature: This you have when you select the GIGA solo and then EDIT mode. Will include the GIG sound info when you select it, with: Giga File Size: Mb/Gb Active Voice: Voice that are current in use xxx Active Disk Stream: HD voice in use xxxx Memory RAM available: 61Mb ... Memory RAM Used: 59Mb .... How I told, NOT sure that tomorrow is included, first we ahve to fix some other bug/feature on list...BUT if we include, now is more interesting.
|
Top
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#310490 - 05/03/10 05:20 PM
Re: Preview of LSPC Gen
|
Senior Member
Registered: 11/18/01
Posts: 1631
Loc: Ireland
|
Hi Domenico and friends. Got a new screen shot for you and an update. 1: Reworked GUI so display is cleaner and more efficient. 2: Added ability to set Sound Volume. 3: Added ability to create new folders to store and manage more than one library of sounds in a single database. 4: BIG update......Added full Drag & Drop function that allows you to drag and drop sounds from other libraries into each other. For example...... By default a standard GM Bank uses variation 0 and programs 1 to 128. This leaves you with variation 1 to 127 X times the number of program sounds to assign additional sounds to your default GM bank without effecting the working order and function of the GM bank. In short you can merge any library you want through drag and drop with the GM bank without effecting it's function. 5: Too many bug fixes to mention but at this point the program is rock solid and super stable. As soon as I write the code that gets the program to generate a 100% working LSCP file I'll issue the first beta so you guys can all take it for a test drive. Phew.... Won't be long. Kind Regards James.
|
Top
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#310501 - 05/04/10 09:39 AM
Re: Preview of LSPC Gen
|
Member
Registered: 12/13/05
Posts: 664
Loc: Italy
|
Originally posted by Irishacts: Yes, but Lionstracs are pulling Patch names that will be displayed on the screen from the actual giga file names.
It's a shame we didn't work together on this when Lionstracs were making changes to Linux Sampler because the way it's been implemented now you must make sure your file names make sense as the file name will be displayed as the Patch name on the screen.
Where if we had of worked together on this, we could have made use of my editor to allow you to freely name a Patch on the screen without even caring what the actual Giga file name was.
Regards James lol...all is calculated.. on your LSPC system you have to add the last fild after the Persistent/ On Demand, you have the filename.gig that this one will displayed on the MS GUI. here the LSCP string example that I made for you: # MIDI instrument map 0 - Chromatic ADD MIDI_INSTRUMENT_MAP 'Chromatic' MAP MIDI_INSTRUMENT 0 0 0 GIG '/home/mediastation/GigaLibrary/SoundbankGM2/001Acoustic\x20Grand\x20Piano/GrandPiano.gig' 0 0.9 PERSISTENT 'Open Platform!! [0]' MAP MIDI_INSTRUMENT 0 0 1 GIG '/home/mediastation/GigaLibrary/SoundbankGM2/002\x20Bright\x20Acoustic\x20Piano/BrightPiano.gig' 0 0.9 ON_DEMAND_HOLD 'James... [0]' MAP MIDI_INSTRUMENT 0 0 2 GIG '/home/mediastation/GigaLibrary/SoundbankGM2/003\x20Electric\x20Grand\x20Piano/003\x20Electric\x20Grand\x20Piano.gig' 0 0.9 PERSISTENT 'Edit your LSPC [0]' MAP MIDI_INSTRUMENT 0 0 3 GIG '/home/mediastation/GigaLibrary/SoundbankGM2/004\x20Honky-Tonk\x20Piano/HonkyTonk.gig' 0 0.9 ON_DEMAND 'Editor, the last.. [0]' MAP MIDI_INSTRUMENT 0 0 4 GIG '/home/mediastation/GigaLibrary/SoundbankGM2/005\x20Electric\x20Piano\x201/05-00\x20E\x20Piano\x201.gig' 0 0.9 ON_DEMAND 'name sound.. [0]' Here is the update Gui with the new text: so..just add this filed on your application and you are able to write and see on GUI what you like. is good? Now I upload the new Current update with the fixed velocity engine, new Performance combi and some else.. let me know [This message has been edited by LIONSTRACS (edited 05-04-2010).]
|
Top
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#310506 - 05/04/10 01:09 PM
Re: Preview of LSPC Gen
|
Member
Registered: 12/13/05
Posts: 664
Loc: Italy
|
Thanks james. I suggest you to modify your tool, that not embedded the all gig files but create only the complete .lscp file. remember that the OS code will loading automatically your all new sounds only IF the LSCP file is located inside the Presets folder. The allowed LSCP file names are only: MS-02-instruments-1.lscp MS-02-tyros.lscp MS-02-oriental.lscp Only this 3 script will be loaded automatically on Restart players and reboot system. About your tool, dont need to embedded the all giga file, make the hyperlink to the path .gig file and over. The BEST then is that you add one button feature, like we made on Jsampler for VST version. After you have created your own bank, the Create bank folder will COPY the all .giga files used to the all around directory and put all on ONE master directory. After copied all, the tools have to UPDATE the all path directory to the new one. IF then you will use this all new giga sounds bank under the MS and GROOVE, remember that the tool have to written the correct linux directory path. Must be always start from: '/home/mediastation/GigaLibrary/here your master sounbank directory / and inside the all files/subfolders. EXAMPLE of your final path: '/home/mediastation/GigaLibrary/JamesBank1/001Acoustic\x20Grand\x20Piano/GrandPiano.gig' 0 0.9 PERSISTENT 'GrandPiano.gig [0]' So..when one new soundbank is created, all must be inside, including one copy of the LSCP file to MOVE/COPY to the Preset folder. In this way you can share ( or sell) your complete soundbank, the user have ONLY to copy the sounbank inside the GigaLibrary folder, copy the LSCP file on Preset folder and..Restart... game over. Get the idea? When your tool is nice working, finally Nedim can use it and sell new Oriental giga sounbank without buy one Groove. (for make the same for the Audya..have to buy one Audya... )
|
Top
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#310509 - 05/04/10 03:11 PM
Re: Preview of LSPC Gen
|
Senior Member
Registered: 11/18/01
Posts: 1631
Loc: Ireland
|
Hi Domenico. I suggest you to modify your tool, that not embedded the all gig files but create only the complete .lscp file. remember that the OS code will loading automatically your all new sounds only IF the LSCP file is located inside the Presets folder. The allowed LSCP file names are only: MS-02-instruments-1.lscp MS-02-tyros.lscp MS-02-oriental.lscp Only this 3 script will be loaded automatically on Restart players and reboot system. Thanks for the advice. I've just implemented all that. Now when you press the button Write LSPC you can see 3 options, one for each type of file. About your tool, dont need to embedded the all giga file, make the hyperlink to the path .gig file and over. Yes, that's done now and I'm much happier. Keeps the size of the program down and it operates lightening fast too. IF then you will use this all new giga sounds bank under the MS and GROOVE, remember that the tool have to written the correct linux directory path. Must be always start from: '/home/mediastation/GigaLibrary/here your master sounbank directory / and inside the all files/subfolders. /quote]
Now done, minus the sub folder. [quote]EXAMPLE of your final path: '/home/mediastation/GigaLibrary/JamesBank1/001Acoustic\x20Grand\x20Piano/GrandPiano.gig' 0 0.9 PERSISTENT 'GrandPiano.gig [0]' I have the program now generating this code for every sound in the library. It scans the database for actual sounds you have completely setup correctly and then writes the LSPC file. If you make a mistake and don't link to a file, the progarm will skip that sound and not include it in the LSPC file. So..when one new soundbank is created, all must be inside, including one copy of the LSCP file to MOVE/COPY to the Preset folder. Yep.... In time I can get the progarm to actually move files and folders on the Mediastation too, so it makes no difference where all the files are. The program will move everything to the right folders. In this way you can share ( or sell) your complete soundbank, the user have ONLY to copy the sounbank inside the GigaLibrary folder, copy the LSCP file on Preset folder and..Restart... game over. Get the idea? Yep... When your tool is nice working, finally Nedim can use it and sell new Oriental giga sounbank without buy one Groove. Flipping heck your right. Anyone can assemble a library with it without the need for a MS/Groove by using this tool. (for make the same for the Audya..have to buy one Audya... Regards James. [This message has been edited by Irishacts (edited 05-04-2010).]
|
Top
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#310512 - 05/04/10 04:45 PM
Re: Preview of LSPC Gen
|
Senior Member
Registered: 01/31/06
Posts: 3354
Loc: The World
|
G'day James, looking good On the LSCP file on the MS, where you have the 127, it has 0 0.9 instead, and this is repeated for all 127 patches. As you said, if Dom watches the vid (and he will) its one for him I reckon I also notice you have a "variation" tab. What control method are you (Lionstracs?) using to access the higer banks, if there any to access? Controller 0, Normal method, controller 127, In the GM2 spec there is provision for higher banks, usually accessed by sending CC 0, (MSB) CC32 (LSB) and then a Patch Change event selecting the actual patch number. It is probably a moot point however, as a lot of VSTs only allow the one bank anyway, all accessed by the standard CC 0. I am not sure about Giga banks as I have not a lot of experience with them. One last question, will your editor eventually be able to do the same if a user wanted to use VST instruments, instead of GIGA? And if its a yes, will a new format (not LSCP) be needed to do so? Or from your knowledge can the LSCP be amended? Dennis
|
Top
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#310513 - 05/04/10 06:31 PM
Re: Preview of LSPC Gen
|
Senior Member
Registered: 11/18/01
Posts: 1631
Loc: Ireland
|
Hi Dennis. On the LSCP file on the MS, where you have the 127, it has 0 0.9 instead, and this is repeated for all 127 patches. Yeah... I'll need Domencio to explain how his value relates to volume. I need to know what are the defined ranges. I had assumed it was normal midi, but it's clearly not. Also... why are there 3 values in the LSCP file ? 0 0.9 ? and why not just 0.9 for volume ? Linuxsampler.org is not clear on this either. They don't define the ranges at all. I also notice you have a "variation" tab. What control method are you (Lionstracs?) using to access the higer banks, if there any to access? From what I understand {1,127,127} is just how Linux Sampler reads the data. There's no MSB/LSB as such. In {1,127,127} the first number defines the type of sound it is. 0 for Instrument, 1 for Drum Kit. Second number is the variation or the so called MSB/LSB 0-127, and the last number is the program number 0-127. I could be wrong on the MSB/LSB 0-127 though. Need Domenico to explain how this is implemented. One last question, will your editor eventually be able to do the same if a user wanted to use VST instruments, instead of GIGA? And if its a yes, will a new format (not LSCP) be needed to do so? Or from your knowledge can the LSCP be amended? Right now the 3 files the program can generate are totally specific to Linux Sampler and Giga files. You can't use this file to call up other things as the only program reading from the files will be Linux Sampler. To edit VSTi's assigned to Programs would require the program to be expanded to edit and generate other files in other folders on the MS/Groove which are specific to VSTi's. All of which is totally possible. I've designed the program that when I want to update it or add entirely new functions, all I need to do is issue you guys with an update patch. You open the program, go to “File” and select “update” and load the patch issued through the menu displayed at this point. This will update the entire program without it even needing to be restarted Regards James.
|
Top
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#310514 - 05/04/10 06:32 PM
Re: Preview of LSPC Gen
|
Senior Member
Registered: 11/18/01
Posts: 1631
Loc: Ireland
|
Hi Domenico. Inside the LSCP file there are two lines that say the following...... ADD MIDI_INSTRUMENT_MAP 'Chromatic' and further down it says.... ADD MIDI_INSTRUMENT_MAP 'Drum Kits' Do I have to include those two lines in the file ? As you know after “MAP MIDI_INSTRUMENT” the first number defines the sound as an instrument or a percussion sound. 0 being an instrument and 1 being a drum kit. So why the need for the two lines above ? I'm only asking because of the drag & drop ability of my program the data needs to be dynamic for each sound in the database, but those two lines are not dynamic and they are also not headers. They need to be in an active area of my progarm, but being static they are causing me problems. If I have to write them in, then will the MS/Groove read the information like this.... # MIDI instrument map 0 - Chromatic ADD MIDI_INSTRUMENT_MAP 'Chromatic' MAP MIDI_INSTRUMENT 0 0 1 GIG '/home/mediastation/GigaLibrary/Personal GM Bank/GrandPiano.gig' 127 PERSISTENT 'Grand Piano' # MIDI instrument map 0 - Chromatic ADD MIDI_INSTRUMENT_MAP 'Chromatic' MAP MIDI_INSTRUMENT 0 0 2 GIG '/home/mediastation/GigaLibrary/Personal GM Bank/BrightPiano.gig' 127 ON_DEMAND 'Bright Piano' # MIDI instrument map 0 - Chromatic ADD MIDI_INSTRUMENT_MAP 'Chromatic' MAP MIDI_INSTRUMENT 0 0 3 GIG '/home/mediastation/GigaLibrary/Personal GM Bank/ElectricGrandPiano.gig' 127 ON_DEMAND 'Electric Grand Piano' # MIDI instrument map 0 - Chromatic ADD MIDI_INSTRUMENT_MAP 'Chromatic' MAP MIDI_INSTRUMENT 0 0 4 GIG '/home/mediastation/GigaLibrary/Personal GM Bank/HonkyTonk.gig' 127 ON_DEMAND 'Honky Tonk' And even have Drums and Instruments mixed together in a list like that. I think it should work, but hey... you will know for sure. I'd prefer to not have to include it at all, but if the MS/Groove will read the file this way, then I can proceed. If not... I have to come up with a new way of handling data internally. Regards James
|
Top
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#310528 - 05/05/10 03:51 PM
Re: Preview of LSPC Gen
|
Member
Registered: 03/12/09
Posts: 513
|
Originally posted by miden: If thats the case, then why is it when you select a giga instrument, the volume slider is at maximum?
I think 0 0.9 IS the max looking at it as a 0-9 numerical scale, not a 1-10 numerical scale...
Dennis
this is the volume from lionstracs mixerboard. they most do this to have good output sound. to see that i am right about this, just open qsampler chage your master volume with qsampler volume slider read on the bottom of screen the messages. for example 9% volume = 0.09 90% volume= 0.9 100% volume= 1. this is the way linuxsampler volume works [This message has been edited by AFG Music (edited 05-05-2010).]
|
Top
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#310532 - 05/05/10 04:35 PM
Re: Preview of LSPC Gen
|
Member
Registered: 03/12/09
Posts: 513
|
Originally posted by Irishacts: Hi guys. So then the first number has nothing to do with volume at all ?
That makes so much more sense. If it's to call up Giga sounds in a Giga Library file, then my program doesn't even address this and I will have to add this function. What are the ranges that need to be defined ? Is it 0 -127 ?
As for the second and third numbers, so are the ranges that need to be defined 0.0 - 1.0 or are we saying it's 0.0 to 0.9 ?
I think it's an ugly way to present volume to the end users so I'm going to leave my program display volume as 0 – 127 but I'll write a formula that outputs the information into the LSCP in the format 0.0 to 0.9 or whatever the range is supposed to be.
0-127 for volume just makes more sense as every keyboard displays sound like this.
Regards James 0% = 0. 1% = 0.01 2% = 0.02 ........ ........ ........ 99% = 0.99 100% = 1. maybe this help
|
Top
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#310534 - 05/05/10 05:14 PM
Re: Preview of LSPC Gen
|
Senior Member
Registered: 01/31/06
Posts: 3354
Loc: The World
|
Originally posted by Irishacts: Thanks guys. I'm going to implement those changes then. I'll add a GIGA Library selector for the first value, and for the second and third I'm going to use the following formula to convert my 0 – 127 standard midi volume values to LSCP decimal values.
1.0 / 127 X Volume Set (0-127) = LSCP Decimal Volume. This way the end user will get to see normal values but the LSCP gets what it wants too.
Regards James
[This message has been edited by Irishacts (edited 05-05-2010).] Thanks James, for us "normal MIDI" guys that would be helpful, although as AFG explained it, it does not take much getting used to. Actually, if we are to become more adept at running Giga samples and Linux Sampler, it may be better TO get used to the terminology. It is all a learning curve, this MS....One really needs to dispense with ALL the old accumulated knowledge and approach with a totally open mind to new methods. They may seem strange at first, but I am sure there are good reasons. AFG has kindly shown us, well me at least, and after he explained it, it makes perfect sense Dennis
|
Top
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#310535 - 05/05/10 06:36 PM
Re: Preview of LSPC Gen
|
Senior Member
Registered: 11/18/01
Posts: 1631
Loc: Ireland
|
Hi Guys. CLICK HERE to download an update patch. 130KB download. To apply the update..... 1: Launch LSCP Gen. 2: Click on File. 3: Click on Update Database and select the patch you just downloaded. 4: Click Open to load the patch. 5: Click Yes to apply the patch. Your now running on ver 0.91 Changes made..... 1: The Volume 0 to 127 is still displayed but the program now outputs in decimal format to the LSCP file as required by Linuxsampler. 2: Added the ability to select different sounds in Giga Library files. If your giga file only has one sound in it, please select 0 as the default option . Finally, if you have started to add your own sounds to the program please select each sound and change the volume to a different setting and then back to your original setting. This will refresh your files and get them to output in decimal format as they predate the patch. Regards James
|
Top
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#310542 - 05/07/10 03:29 AM
Re: Preview of LSPC Gen
|
Senior Member
Registered: 11/18/01
Posts: 1631
Loc: Ireland
|
Hi Dennis. I think you may be misunderstanding me he..he.. Not to worry, I'm sure to have a “Light Bulb” moment at any point. When I select "add patch" for the first new patch I enter the path to the file. d:\media station resources\giga file\library That's not a working path though and the progarm won't generate something like that. Are you typing in formation or something ? A working path will include the actual file and the progarm will generate this from just selecting the file. A path should look like this for example. d:\media station resources\giga file\library\piano.gig Instead of the path just coming up by default as I have already entered the desired hdd location and folder for the previous patch, I have to re-enter the full path again to load the next giga file which is in the SAME directory/folder as the previous one. Hmmm this doesn't sound right. I have a feeling your typing information into the program rather than pressing the Browse button which will return you every time to the last folder you opened. Have a quick look at this new video for example. http://www.irishacts.com/lionstracs/lscp-q1.htm Are you doing something different than me, or am I just totally off the mark here altogether. Regards James [This message has been edited by Irishacts (edited 05-07-2010).]
|
Top
|
|
|
|
|
|
|
|
|
|
|
|
|