New to HISE - some issues

I recently discovered HISE and decided it looked very interesting. I've been a C/C++ programmer for more than 30 years and I'm extremely impressed with the quality and breadth of Christoph's work on this project.

I've downloaded the code from github and after a few issues building it in VS2015 Pro, I installed VS2017 Community and it all went well after that. Environment is Windows 10 ver 1803.

I've read through the tutorials and watched David's videos and lastly started following Christoph's video on building an instrument in 5 minutes.

Unfortunately, I'm getting somewhat different results from this video. I've got to the part where he adds a Table to the Script Processor and this is where my copy diverges. After adding the table, I don't see the popup which asks for the name of the table. After playing with the Right Panel, I managed to display the InterfacePropertyEditor which was "Disconnected". After connecting it to the Script Processor and selecting the Table, I was able to change the name.

However, the next issue was that there was no code being added to the Script Editor when I added the Table and no JSON code appeared when I dragged the Table.

Seems like I may have missed something in the setup somewhere. I've recompiled the code several times and there are quite a few Warnings (just usual things like unreachable code , unreferenced formal parameters and conversion loss of data) but no Errors. I'm not using IPP at this stage.

@notan2 Hi. HISE has moved on a lot since that tutorial was created. JSON is no longer used within the main script editor, you should now build your main interfaces using the interface designer (I have a few video on this).

But I agree it's a problem that the documentation on the website is outdated. However I decided to move on to a "self-documenting" UI using help buttons which contain the documentation in place like here:

These things are much more likely to keep up to date since they are embedded in the codebase.

Also a great resource of information are the videos of David, he also made a few about the features of the interface designer:

I confess that, as I have a few projects on the go at the moment, I was looking for a "quick and dirty" overview of HISE. This is out of character for me so I'll consider it a lesson learned and dive in and read the manuals as I normally do.

I've located David's videos on his youtube channel and I'll read through the links you have provided on the new Interface designer.

I'm finally getting some traction and having a lot of fun. I've read all the documentation I could find and watched all/most of the excellent videos by @d-healey. Clear, well-prepared and well-paced - great work, David!

I decided to experiment with an SFZ instrument (alto Sax). I imported it into the Sampler and all looked fine except that the note was only playing for the length of the sample and then cutting off. I looked in the Sample Editor and it appeared that the loop points hadn't been extracted from the .wav files.

So I renamed one of the .wav files with tokens and selected "Filename Token Parser" and it asked if I wanted to set the loop points from metadata and this time it worked fine.

So I thought, no problem, and wrote a utility to parse the SFZ and rename the .wav files with tokens. At which point I realised that the lokey and hikey did not appear to be part of the available properties. (Serves me right for not reading the documentation carefully - but did I read somewhere that the Importer is scriptable and perhaps I could map additional properties?).

Again, no problem, so I wrote another utility to parse the SFZ, extract the loop points from the .wav files and write out a SampleMap XML. Imported it and this time everything worked fine.

While it was an entertaining couple of hours of coding, it's occurred to me that some of the HISE users will not be programmers, so, (likely as a result of me being a novice at sampling), I'm probably going about things the wrong way.

I decided to experiment with an SFZ instrument (alto Sax). I imported it into the Sampler and all looked fine except that the note was only playing for the length of the sample and then cutting off. I looked in the Sample Editor and it appeared that the loop points hadn't been extracted from the .wav files.

Just had a look through the code for the Sfz Importer and noticed that it supports the loopstart, loopend and loop_mode opcodes. So I edited my original SFZ file and added these opcodes to one of the samples, imported it into HISE and it worked.

That explains why the Sfz Importer (quite reasonably) doesn't offer to read the loop points from the .wav file.

I am also not 100% sure what you did here ;), but the loop points can also be imported afterwards by selecting all samples and running the command in the context menu (I think it‘s called Import loop points from metadata).

The SFZ Parser is far from being complete. TBH I dislike this format as it weirdly mix instrument properties (like Filter Envelope Attack) with mapping data and is terrible to parse because it doesn‘t use quotes to delimit strings so a filename with spaces in it gets treated as two tokens. I don‘t know who decided this but they were surely having too much red wine that day...

And the parser itself is not scriptable, but you can use scripting API calls to change sample properties so you can write almost every mapping functionality using Javascript.

I am also not 100% sure what you did here ;), but the loop points can also be imported afterwards by selecting all samples and running the command in the context menu (I think it‘s called Import loop points from metadata).

Don't mind me - I'm just demonstrating my lack of experience with samplers.
Found it - it's called "Automap from metadata" and it works fine.

TBH I dislike this format as it weirdly mix instrument properties (like Filter Envelope Attack) with mapping data and is terrible to parse because it doesn‘t use quotes to delimit strings so a filename with spaces in it gets treated as two tokens. I don‘t know who decided this but they were surely having too much red wine that day...

I agree - the SFZ format is a dog's breakfast but it's not the worst I've had to work with over the years.