fluid-dev
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [fluid-dev] How can I start fluidsynth playback with certain cc comm


From: Martin Larsson
Subject: Re: [fluid-dev] How can I start fluidsynth playback with certain cc commands specified from the very start?
Date: Sat, 18 Jan 2014 22:27:34 +0100

Thanks for the answer!

Unfortunately, the server mode doesn’t make much more sense to me since the 
documentation on this is about as sparse as on the load configuration file. (Is 
there a more extensive manual to download anywhere?)

However, I did create a file named synth.init and ran

    fluidsynth -f synth.init soundfont.sf2 midifile.midi

The strange thing here is that when I write non-valid commands in the init 
file, such as

    poop 1 7 0

, fluitsynth throws an error (which mean that it obviously reads the file). 
However, when I write valid commands, such as

    cc 1 7 0

fluidsynth doesn’t complain, but the command doesn’t take effect either. 

I don’t know what the problem is here, but I’m thinking that it’s one of the 
following

    1. fluidsynth doesn’t run my commands.
    2. fluidsynth runs my command, but they get overwritten by init procedures 
in the midi file itself (I don’t know if CC#7 normally is called by a midi file 
to set the initial levels of the channels).

On 18 Jan 2014, at 17:50, Dave Serls <address@hidden> wrote:

> On Sat, 18 Jan 2014 15:26:42 +0100
> Martin Larsson <address@hidden> wrote:
> 
>> If I run fluidsynth from the terminal
>> 
>>   fluidsynth soundfont.sf2 midifile.midi
>> 
>> I am then able to write control change commands in realtime to alter the 
>> playback. For example,
>> 
>>   cc 1 7 0
>> 
>> sends a CC#7 message (channel volume) to channel 1 with a value of 0.
>> 
>> Now, I would like to specify a bunch of these cc commands when calling 
>> fluidsynth, meaning that the channel volumes are set *before* playback 
>> starts (in turn meaning that I can output my desired mix to an audio file, 
>> which is my end goal here).
>> 
>> When reading the fluidsynth [manual][1], I find the following option:
>> 
>>   -f, --load-config
>>       Load command configuration file (shell commands)
>> 
>> I'm guessing this is what I want to use, since control change events, 
>> further down in the fluidsynth manual, is listed under MIDI MESSAGES, which 
>> in turn is listed under SHELL COMMANDS. However, the manual doesn't give me 
>> much to go on here (the quoted passage is the only info about this option 
>> that I can find). I've tried reading up on [configuration files in UNIX][2] 
>> without being able to resolve anything.
>> 
>> I've tried making a file called `config`, filled it with a bunch of cc 
>> commands, like so:
>> 
>>   cc 0 7 0
>>   cc 1 7 0
>>   cc 2 7 0
>> 
>> and then tried to load it by using
>> 
>>   fluidsynth -f config soundfont.sf2 midifile.midi
>> 
>> but this approach doesn't do anything (fluidsynth doesn't report any error 
>> either).
> 
>  I set mine up in "server mode" and use a file "synth.init" which contains 
> "loads" for all the soundfonts, select commands
>  and cc commands for "panning"
> 
>  I start with:
> 
>  fluidsynth -j -s -i -l -r 48000 -a jack -m alsa_seq -f /home/xxxx/synth.init 
> -o shell.port=9802 -o synth.gain=1.2 \
>         -o audio.jack.id=fluid2 &
> 
>  inside another script.
>  At the end of that script I invoke another that does the aconnect(s) for the 
> USB midi input.
> 
>  This was so long ago, I've forgotten which switch actually enables this 
> "remote automated" behavior.
> 
> 
>> 
>> --
>> [1]: http://sourceforge.net/apps/trac/fluidsynth/wiki/UserManual
>> [2]: http://en.wikipedia.org/wiki/Configuration_file
> 
> _______________________________________________
> fluid-dev mailing list
> address@hidden
> https://lists.nongnu.org/mailman/listinfo/fluid-dev




reply via email to

[Prev in Thread] Current Thread [Next in Thread]