Help finding the right software

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

Moderators: MattKingUSA, khz

Post Reply
giuda
Established Member
Posts: 3
Joined: Thu Nov 22, 2018 9:43 am

Help finding the right software

Post by giuda »

Hello,

I'm trying to convert my current Windows setup to a Linux one, for now without success. I need a sampler that triggers a file playback when it receive a MIDI Program Change (can't use notes, I am using a pedalboard that doesn't send them via MIDI).
Here's the chain I am currently using: Boss ES-8 sends a Program Change via MIDI. MIDI-OX converts Program Change to a certain note. TX16Wx plays the sample assigned to that note. Obviously there's a different file on every mapped note. I use that to trigger sound files while playing live.
I have tried different software samplers as qsampler, Petri-foo, Giada, but without success, for a reason or another. Does someone have a solution to do what I am trying to achieve in Linux?

Thanks!
User avatar
sysrqer
Established Member
Posts: 2519
Joined: Thu Nov 14, 2013 11:47 pm
Has thanked: 319 times
Been thanked: 148 times
Contact:

Re: Help finding the right software

Post by sysrqer »

Which part of the process is causing the problem? I'm sure you could do what you need with the samplers you mention. Another you could try is the LSP sampler but in your case I can't see what it would offer that the others can't do.
User avatar
bluebell
Established Member
Posts: 1909
Joined: Sat Sep 15, 2012 11:44 am
Location: Saarland, Germany
Has thanked: 111 times
Been thanked: 116 times

Re: Help finding the right software

Post by bluebell »

In general you could load a sampler, say samplv1, into Carla and put a midi processing plugin in front of it.

I wanted to recommend the Midifilter plugins. But I can't find one that converts a program change to a note on while there is one that converts Controller Data (CC) to note on.

At least the problem can be redefined as "find a plugin that can convert program changes to note ons".

I read about a tool named midithings that can do whatever you want if you are willing to do some script-like programming. But I can't find it on the web.

EDIT: It's called mididings, see http://das.nasophon.de/mididings/
User avatar
noedig
Established Member
Posts: 233
Joined: Wed Feb 12, 2014 4:39 am
Location: South Africa
Has thanked: 9 times
Been thanked: 52 times

Re: Help finding the right software

Post by noedig »

I second Mididings, it works very well.

QMidiRoute will also help you convert Program Change messages to notes.
Here's a video showing how to set it up with PetriFoo.
https://youtu.be/fkmR7CmREh0
User avatar
sysrqer
Established Member
Posts: 2519
Joined: Thu Nov 14, 2013 11:47 pm
Has thanked: 319 times
Been thanked: 148 times
Contact:

Re: Help finding the right software

Post by sysrqer »

Sorry, I guess I missed the program change part.
eric71
Established Member
Posts: 128
Joined: Fri Jan 16, 2009 7:41 am
Location: Finland

Re: Help finding the right software

Post by eric71 »

I would look at the pizmidi plugins. I think midiConverter3 placed in front of any decent linux sampler in a host. I used to use it to get rudimentary function of my eDrums hihat controller which was sending CC4 and converting that to a note. Available in KXStudio and AUR.

https://bitbucket.org/agraef/pizmidi
giuda
Established Member
Posts: 3
Joined: Thu Nov 22, 2018 9:43 am

Re: Help finding the right software

Post by giuda »

Thanks guys! I'll try your suggestions
VanHammen
Established Member
Posts: 38
Joined: Sat Aug 29, 2015 3:53 pm
Has thanked: 9 times
Been thanked: 6 times

Re: Help finding the right software

Post by VanHammen »

If you don't need a GUI you can do something like this in a few lines of bipscript:

Code: Select all

local input = Midi.Input("input")
local output = Audio.StereoOutput("output1", "system:playback_1", "system:playback_2")

local clip = Audio.Clip("./test.wav")

input.onProgramChange(function (pc, pos) {
  print("pc: " + pc.program() + "\n")
  output.play(clip)
})

System.stayAlive()
bipscript site: http://www.bipscript.org
giuda
Established Member
Posts: 3
Joined: Thu Nov 22, 2018 9:43 am

Re: Help finding the right software

Post by giuda »

VanHammen wrote:If you don't need a GUI you can do something like this in a few lines of bipscript:

bipscript site: http://www.bipscript.org
Sorry If I didn't answer back.

The solution you proposed is awesome. As a programmer, this is a very powerful tool. Your solution was spot on (I just changed onProgramChange to onControl). I didn't find in the documentation were is explained the "function(pc, pos)" part.

Thank you!
VanHammen
Established Member
Posts: 38
Joined: Sat Aug 29, 2015 3:53 pm
Has thanked: 9 times
Been thanked: 6 times

Re: Help finding the right software

Post by VanHammen »

Thank you for the kind words and feedback, you are right the callback parameters need documentation.

Right now I can tell you "pc" is the program change message and "pos" is a time position object that tells when it was received, both of these types will be documented in an upcoming release.
Post Reply