An introduction to HISE

Link to good samples/soundfonts at http://wiki.linuxaudio.org/wiki/free_audio_data

Moderators: MattKingUSA, khz

User avatar
d.healey
Established Member
Posts: 609
Joined: Fri Sep 22, 2017 8:33 pm
Has thanked: 273 times
Been thanked: 100 times

Re: An introduction to HISE

Post by d.healey »

Kott wrote: Wed Apr 27, 2022 12:09 pm Great, it works. Thanks.

And the new HISE look is cool. I've built the sordinia, tried sofiawoodwinds with new HISE, but it complains:
SW was created with a much older version of HISE so there might be some work needed to make it compatible with the latest version. I'm currently working on an update for Sofia Woodwinds with the latest version of HISE but it's not based on the original HISE project, I started from scratch.
David Healey
YouTube - Free HISE scripting and sample library dev tutorials
Libre Wave - Freedom respecting instruments and effects.
Kott
Established Member
Posts: 818
Joined: Thu Mar 21, 2013 12:55 am
Location: Vladivostok
Has thanked: 65 times
Been thanked: 122 times

Re: An introduction to HISE

Post by Kott »

d.healey wrote: Wed Apr 27, 2022 12:49 pm
Kott wrote: Wed Apr 27, 2022 12:09 pm Great, it works. Thanks.

And the new HISE look is cool. I've built the sordinia, tried sofiawoodwinds with new HISE, but it complains:
SW was created with a much older version of HISE so there might be some work needed to make it compatible with the latest version. I'm currently working on an update for Sofia Woodwinds with the latest version of HISE but it's not based on the original HISE project, I started from scratch.
I see.
And I see that HISE can run headless for automated builds. I think we can use it @Basslint :)
Kott
Established Member
Posts: 818
Joined: Thu Mar 21, 2013 12:55 am
Location: Vladivostok
Has thanked: 65 times
Been thanked: 122 times

Re: An introduction to HISE

Post by Kott »

d.healey wrote: Sat Apr 09, 2022 1:35 pm I've made a video giving an overview of the most important features of HISE.
Hi, David.

Could you check that bug for you with command line export? https://github.com/christophhart/HISE/issues/317
User avatar
d.healey
Established Member
Posts: 609
Joined: Fri Sep 22, 2017 8:33 pm
Has thanked: 273 times
Been thanked: 100 times

Re: An introduction to HISE

Post by d.healey »

Kott wrote: Tue May 24, 2022 4:54 am
d.healey wrote: Sat Apr 09, 2022 1:35 pm I've made a video giving an overview of the most important features of HISE.
Hi, David.

Could you check that bug for you with command line export? https://github.com/christophhart/HISE/issues/317
Hi,

I get an error also, I've commented on your github issue.
David Healey
YouTube - Free HISE scripting and sample library dev tutorials
Libre Wave - Freedom respecting instruments and effects.
User avatar
scott.thomason
Established Member
Posts: 120
Joined: Fri Apr 01, 2022 2:54 am
Has thanked: 16 times
Been thanked: 27 times
Contact:

Re: An introduction to HISE

Post by scott.thomason »

Wow, this looks like a fantastic tool for those of us too impatient to use C/C++! Thanks much for introducing it to me.
---scott

LinkedIn
User avatar
scott.thomason
Established Member
Posts: 120
Joined: Fri Apr 01, 2022 2:54 am
Has thanked: 16 times
Been thanked: 27 times
Contact:

Re: An introduction to HISE

Post by scott.thomason »

You know what is a shame? It doesn't support LV2 :(

---scott
---scott

LinkedIn
Kott
Established Member
Posts: 818
Joined: Thu Mar 21, 2013 12:55 am
Location: Vladivostok
Has thanked: 65 times
Been thanked: 122 times

Re: An introduction to HISE

Post by Kott »

scott.thomason wrote: Tue May 24, 2022 11:35 pm You know what is a shame? It doesn't support LV2 :(

---scott
it may be possible with new (not yet released) JUCE7
BTW, is there the LV2-only hosts in Linux audio world except ingen?
User avatar
scott.thomason
Established Member
Posts: 120
Joined: Fri Apr 01, 2022 2:54 am
Has thanked: 16 times
Been thanked: 27 times
Contact:

Re: An introduction to HISE

Post by scott.thomason »

It took a little head-scratching to get this HISE thing built, so I'll document the steps I took to save you the trouble...

1. If you're on a Debian-derived system with apt, you'll do this:

Code: Select all

apt-get install llvm clang libfreetype6-dev libx11-dev libxinerama-dev libxrandr-dev libxcursor-dev mesa-common-dev libasound2-dev \
freeglut3-dev libxcomposite-dev libcurl4-gnutls-dev libwebkit2gtk-4.0 libgtk-3-dev libjack-jackd2-dev
If you are on another distro that doesn't use apt, do whatever your equivalent is to get those libraries and header files.

2. Install Intel's IPP (Integrated Performance Primitives). You can find a massive shell file at https://registrationcenter-download.int ... offline.sh. Run that and it will start a GUI installer. In the end, you'll end up with about 1.5GB of files at /opt/intel/.

3. Setup some symlinks within IPP, these are required to correct some invalid pathname assumptions in the HISE build scripts:

Code: Select all

cd /opt/intel
ln -sf oneapi/ipp ipp
cd ipp
ln -sf latest/lib lib
ln -sf latest/include include
4. Make a directory to house some files, I'll call it ~/hise/.

5. Clone the project:

Code: Select all

cd ~/hise/
git clone https://github.com/christophhart/HISE.git
6. Open "Projucer", which is a pre-compiled binary to manage Juce projects. You'll want to open and save a template project, which will cause a Makefile to be created:

Code: Select all

~/hise/HISE/tools/projucer/Projucer
...then open file "~/hise/HISE/projects/standalone/HISE Standalone.jucer" and save it. That will generate the Makefile you need to proceed. Exit Projucer.

7. Change to the directory with the new Makefile, and execute the build (it takes a few minutes, definitely long enough to grab a beer). Adjust the "-j8" make flag to the number of CPUs you have. I like to build stuff that's pretty highly optimized, but if you're the cautious type, skip the CFLAGS and CXXFLAGS below:

Code: Select all

cd ~/hise/HISE/projects/standalone/Builds/LinuxMakefile
export CFLAGS="-march=native -mtune=native -pipe -g0 -O3"
make -j8 CONFIG=Release CFLAGS="$CFLAGS" CXXFLAGS="$CFLAGS"
8. If everything went right, you should be done when the "make" finishes. You can execute this to start HISE:

Code: Select all

"~/hise/HISE/projects/standalone/Builds/LinuxMakefile/build/HISE Standalone"
It worked for me, but I haven't really exercised it thoroughly yet, so there may still be some "gotchas". Good luck!
---scott

LinkedIn
Kott
Established Member
Posts: 818
Joined: Thu Mar 21, 2013 12:55 am
Location: Vladivostok
Has thanked: 65 times
Been thanked: 122 times

Re: An introduction to HISE

Post by Kott »

scott.thomason wrote: Wed May 25, 2022 2:55 am 6. Open "Projucer", which is a pre-compiled binary to manage Juce projects. You'll want to open and save a template project, which will cause a Makefile to be created:

Code: Select all

~/hise/HISE/tools/projucer/Projucer
...then open file "~/hise/HISE/projects/standalone/HISE Standalone.jucer" and save it. That will generate the Makefile you need to proceed. Exit Projucer.
you can run it in command line:

Code: Select all

/path/to/Projucer --resave "HISE Standalone.jucer"
User avatar
scott.thomason
Established Member
Posts: 120
Joined: Fri Apr 01, 2022 2:54 am
Has thanked: 16 times
Been thanked: 27 times
Contact:

Re: An introduction to HISE

Post by scott.thomason »

Kott wrote: Wed May 25, 2022 3:01 am you can run it in command line:

Code: Select all

/path/to/Projucer --resave "HISE Standalone.jucer"
Thanks @Kott, I'll incorporate that into the list above.
---scott

LinkedIn
User avatar
d.healey
Established Member
Posts: 609
Joined: Fri Sep 22, 2017 8:33 pm
Has thanked: 273 times
Been thanked: 100 times

Re: An introduction to HISE

Post by d.healey »

scott.thomason wrote: Wed May 25, 2022 2:55 am Install Intel's IPP (Integrated Performance Primitives).
IPP is proprietary. If you are making free software you should use FFTW3 instead.
David Healey
YouTube - Free HISE scripting and sample library dev tutorials
Libre Wave - Freedom respecting instruments and effects.
User avatar
scott.thomason
Established Member
Posts: 120
Joined: Fri Apr 01, 2022 2:54 am
Has thanked: 16 times
Been thanked: 27 times
Contact:

Re: An introduction to HISE

Post by scott.thomason »

d.healey wrote: Wed May 25, 2022 10:44 am IPP is proprietary. If you are making free software you should use FFTW3 instead.
I was just following the instructions given. Care to give more details on building it with FFTW3? I'd rather go that route.
---scott

LinkedIn
User avatar
d.healey
Established Member
Posts: 609
Joined: Fri Sep 22, 2017 8:33 pm
Has thanked: 273 times
Been thanked: 100 times

Re: An introduction to HISE

Post by d.healey »

scott.thomason wrote: Wed May 25, 2022 12:15 pm
d.healey wrote: Wed May 25, 2022 10:44 am IPP is proprietary. If you are making free software you should use FFTW3 instead.
I was just following the instructions given. Care to give more details on building it with FFTW3? I'd rather go that route.
Install FFTW3 from your distro's repo.

In Projucer you need to add AUDIOFFT_FFTW3=1 in the extra preprocessor definitions for the Linux Makefile exporter. Also in Projucer, in the Modules section under juce_dsp you need to enable JUCE_DSP_USE_SHARED_FFTW
David Healey
YouTube - Free HISE scripting and sample library dev tutorials
Libre Wave - Freedom respecting instruments and effects.
Post Reply