hpfmn's blog

SoundBanks part2

2 years ago • 3 comments

Hi,
I created the second video of the SoundBanks screencast. This one shows how I changed a SoundBank from a global setting to something that adds new Instruments. I also show how a SoundBank loads SoundFonts and that it can add new MidiActions that for example make MuseScore compatible with Native Instrument's Kontakt.

SoundBanks part2

Read more

GSoC 2016 Workproduct - Playback

2 years ago • 0 comments

Workproduct GSoC 2016 - MuseScore Playback improvement

Overview

My progress during GSoC 2016 has been documented in this very Blog.

Code that has been merged into the Project

The following code has been merged into the master branch

This includes the following features:

  • Added metric modulation see - Wikipedia: Metric modulation
  • Zerberus (sfz synthesizer)
    • Round robin
    • Loop support
    • Sfz v1 envelopes
    • Load multiple sfz at once
    • Play
Read more

Weekly status update August 15th to 21st

2 years ago • 0 comments

Hi,
this is my last status update during GSoC. GSoC officially ends on 23rd of August - but I will continue work after that. On the one hand side there are still open things that need to be finished and on the other hand side there are still interesting things that should be done. I learned quite a lot during that program and feel like I have a good understanding how MuseScore's code works and is organized.

I think it

Read more

Weekly status update August 8th to 14th

2 years ago • 0 comments

Hi,
GSoC's end is quite near and this week I worked on the last big issue regarding the playback future of MuseScore: disk streaming playback and sample pool.

Before I started working on this topic I did also some touches on the MidiSpanner/Soundbank side of things and implemented the export xml features. (Before I could read all things regarding soundbanks from xml but not export!) Also now really all settings are copied to the newly instantiated instrument. (Yes I still

Read more

Weekly status update August 1st to 7th

2 years ago • 0 comments

Hi,
this week I added a new opcode to zerberus - the gain_cc (or also known as gain_oncc in sfz v2). This makes it possible to create single note crescendos in zerberus!

While it was looking at that code I found out that our implementation of amp_veltrack differs from the specification. There the scaling of the impact of the velocity happens in dB but in out implementation it is the gain factor that is scales. Interestingly linuxsampler seems to

Read more

Screencast: Soundbanks part1

2 years ago • 2 comments

Hi,
sorry that I couldn't finish the video yesterday! But here is it today!

Soundbanks Part 1 MuseScore

This video shows you one basic feature of soundbanks. It configures what kind of midi messages a spanner object should emit. I'm very open to comments! Questions that come into my mind are:

  • Should the settings applied automatically to Instruments once a Soundbank is loaded?
  • Should a soundbank be activated before it is used?
  • Should there be settings to switch the different soundbanks a instrument matches?
Read more

Weekly status update July 25th to 31st

2 years ago • 0 comments

Hi,
this week was again about bug fixing and performance testing. The fixes I did last week to the Fluidsynth sample based volume were not really good and opened up other bugs. It was possible that a division by zero happens which in return causes the volume to into infinity and effectively killing all sound. (Because the reverb takes on the infinity and it never gets down to a normal value again)

I also "refixed" the OS X distortion bug.

Read more

Weekly status update July 18th to 24th

2 years ago • 1 comment

Hi,
a new small update for this week. This week was a lot about fixing small bugs and testing things on different platforms!

Because of my work on MidiSpanners I found some more bugs with midiAction. It didn't use the right channel. Instead of using the the actual channel number to emit it's Midi Messages it emitted them on the channel relative to the current Instrument. (Meaning a instrument can have multiple channels and midi Actions was using this channel

Read more

Weekly status update July 5th to 17th

2 years ago • 3 comments

Hello everyone,
this time a small update - but I think some big changes are going to happen till the end of GSoC!

First of all some update on things from last time - the #include and <global> opcodes made it into the master branch. I changed some things about how the preprocessing works and while I was at this I also fixed some things about comments. Currently comments that didn't start with a line we're not recognized as comments

Read more

Weekly status update July 4th to 10th

2 years ago • 0 comments

Hi,
this week I started working on MidiSpanners. That is the functionality I described last week. With this you can let any spanner send midi information. All main modes (switch, continuous, note on event) have been realized. But currently there is no GUI. I also tested this with hairpins, pedal and slurs. Lasconic also proposed we could have a configuration file (most likely in xml) for sounds that would set good defaults for these spanners and would also add MidiActions

Read more