1- .\" Automatically generated by Pandoc 3.8.1
1+ .\" Automatically generated by Pandoc 2.14.0.3
22.\"
3- .TH "SONIVOXRENDER" "1" "April 13, 2025" "sonivox 4.0.0.0" "Sonivox MIDI File Renderer"
3+ .TH "SONIVOXRENDER" "1" "December 30, 2025" "sonivox 4.0.0.0" "Sonivox MIDI File Renderer"
4+ .hy
45.SH NAME
5- \f[B] sonivoxrender \f[ R ] \(em Render standard MIDI files into raw PCM
6+ .PP
7+ \f[B] sonivoxrender \f[ R ] \[em ] Render standard MIDI files into raw PCM
68audio
79.SH SYNOPSIS
810.PP
9- \f[B] sonivoxrender \f[ R ] [\f[B] \- h| \-\- help \f[ R ] ]
10- [\f[B] \- v| \-\- version \f[ R ] ] [\f[B] \- d| \-\- dls \f[ R ] \f[I] soundfont \f[ R ] ]
11- [\f[B] \- r| \-\- reverb \f[ R ] \f[I] 0..4 \f[ R ] ] [\f[B] \- w| \-\- wet \f[ R ]
12- \f[I] 0..32767 \f[ R ] ] [\f[B] \- n| \-\- dry \f[ R ] \f[I] 0..32767 \f[ R ] ]
13- [\f[B] \- c| \-\- chorus \f[ R ] \f[I] 0..4 \f[ R ] ] [\f[B] \- l| \-\- level \f[ R ]
14- \f[I] 0..32767 \f[ R ] ] [\f[B] \- g| \-\- gain \f[ R ] \f[I] 0..196 \f[ R ] ]
15- [\f[B] \- V| \-\- Verbosity \f[ R ] \f[I] 0..5 \f[ R ] ]
16- [\f[B] \- R| \-\- reverb \- post \- mix \f[ R ] ]
17- [\f[B] \- C| \-\- chorus \- post \- mix \f[ R ] ] [\f[B] \- s| \-\- sndlib \f[ R ]
18- \f[I] 1..3 \f[ R ] ] \f[I] midi_file \f[ R ]
11+ \f[B] sonivoxrender \f[ R ] [\f[B] -h|--help \f[ R ] ] [\f[B] -v|--version \f[ R ] ]
12+ [\f[B] -d|--dls \f[ R ] \f[I] soundfont \f[ R ] ] [\f[B] -r|--reverb \f[ R ]
13+ \f[I] 0..4 \f[ R ] ] [\f[B] -w|--wet \f[ R ] \f[I] 0..32767 \f[ R ] ]
14+ [\f[B] -n|--dry \f[ R ] \f[I] 0..32767 \f[ R ] ] [\f[B] -c|--chorus \f[ R ]
15+ \f[I] 0..4 \f[ R ] ] [\f[B] -l|--level \f[ R ] \f[I] 0..32767 \f[ R ] ]
16+ [\f[B] -g|--gain \f[ R ] \f[I] 0..196 \f[ R ] ] [\f[B] -V|--Verbosity \f[ R ]
17+ \f[I] 0..5 \f[ R ] ] [\f[B] -R|--reverb-post-mix \f[ R ] ]
18+ [\f[B] -C|--chorus-post-mix \f[ R ] ] [\f[B] -s|--sndlib \f[ R ] \f[I] 1..3 \f[ R ] ]
19+ \f[I] midi_file \f[ R ]
1920.SH DESCRIPTION
21+ .PP
2022This program is a MIDI file renderer based on the sonivox synthesizer
2123library.
2224It reads .MID (Standard MIDI Files) file format, and writes an audio
2325stream to the standard output as raw 16 bit stereo PCM samples.
2426.SS Options
2527.TP
26- \ - h, \-\ - help
28+ -h, - -help
2729Prints brief usage information.
2830.TP
29- \ - v, \-\ - version
31+ -v, - -version
3032Prints the version numbers.
3133.TP
32- \ - d, \-\ - dls \f[I] soundfont \f[ R ]
34+ -d, - -dls \f[I] soundfont \f[ R ]
3335Optional DLS or SF2 soundfont file name.
3436If not provided, it uses an internal embedded soundfont.
3537.TP
36- \ - r, \-\ - reverb \f[I] reverb_preset \f[ R ]
38+ -r, - -reverb \f[I] reverb_preset \f[ R ]
3739Reverb preset between 0 and 4: 0=no, 1=large hall, 2=hall, 3=chamber,
38404=room.
3941.TP
40- \ - w, \-\ - wet \f[I] reverb_wet \f[ R ]
42+ -w, - -wet \f[I] reverb_wet \f[ R ]
4143Reverb wet level between 0 and 32767.
4244.TP
43- \ - n, \-\ - dry \f[I] reverb_dry \f[ R ]
45+ -n, - -dry \f[I] reverb_dry \f[ R ]
4446Reverb dry level between 0 and 32767.
4547.TP
46- \ - c, \-\ - chorus \f[I] chorus_preset \f[ R ]
48+ -c, - -chorus \f[I] chorus_preset \f[ R ]
4749Chorus preset between 0 and 4: 0=no, 1..4=presets.
4850.TP
49- \ - l, \-\ - level \f[I] chorus_level \f[ R ]
51+ -l, - -level \f[I] chorus_level \f[ R ]
5052Chorus level between 0 and 32767.
5153.TP
52- \ - g, \-\ - gain \f[I] master_gain \f[ R ]
54+ -g, - -gain \f[I] master_gain \f[ R ]
5355Master gain between 0 and 196, default is 100 (+0dB).
5456The number is relative to 100, in 1dB increments, e.g.\ 120 = +20dB, 80
55- = \ - 20dB.
57+ = -20dB.
5658.TP
57- \ - V, \-\ - Verbosity \f[I] verbosity \f[ R ]
59+ -V, - -Verbosity \f[I] verbosity \f[ R ]
5860Verbosity level between 0 and 5, where 0=no, 1..5=severity levels.
5961.TP
60- \ - R, \-\ - reverb\ - post\ - mix
62+ -R, - -reverb-post-mix
6163Ignore CC91 reverb send level.
6264The reverb effect will apply to mixed output audio, which is the old
6365behavior.
6466.TP
65- \ - C, \-\ - chorus\ - post\ - mix
67+ -C, - -chorus-post-mix
6668Ignore CC93 chorus send level.
67- See also \f[B] \-\ -reverb \ -post \ -mix \f[ R ] .
69+ See also \f[B] - -reverb-post-mix\f[ R ] .
6870.TP
69- \ - s, \-\ - sndlib \f[I] index \f[ R ]
71+ -s, - -sndlib \f[I] index \f[ R ]
7072EAS sound library to use:
7173.RS
72- .IP \( bu 2
73- 1: wt_200k_G (default) \ - WT\ - only bank, used in Android devices.
74- Also named \( lq Common \( rq .
75- Support 22050 Hz and 44100 Hz sample rates, 8\ - bit and 16\ - bit samples.
76- .IP \( bu 2
77- 2: GMdblib\ - 3 \ - FM\ - only bank.
74+ .IP \[ bu ] 2
75+ 1: wt_200k_G (default) - WT-only bank, used in Android devices.
76+ Also named \[ lq ] Common \[ rq ] .
77+ Support 22050 Hz and 44100 Hz sample rates, 8-bit and 16-bit samples.
78+ .IP \[ bu ] 2
79+ 2: GMdblib-3 - FM-only bank.
7880Support all sample rates.
7981Sample bit depth does not matter here.
80- .IP \( bu 2
81- 3: hybrid_22khz_mcu \ - Hybrid bank.
82+ .IP \[ bu ] 2
83+ 3: hybrid_22khz_mcu - Hybrid bank.
8284Use WT synth for drums and FM for melodic instruments.
83- This bank is a combination of \f[CR ] GMdblib \ -3 \f[ R ] and
84- \f[CR ] Sonic_20Khz_Drums \f[ R ] .
85- Support 22050 Hz sample rate and 8\ - bit samples only.
85+ This bank is a combination of \f[ C ] GMdblib-3\f[ R ] and
86+ \f[ C ] Sonic_20Khz_Drums\f[ R ] .
87+ Support 22050 Hz sample rate and 8-bit samples only.
8688.PP
8789\f[B] Note: \f[ R ] This option does not affect DLS/SF2.
8890They will always use the DLS synth engine.
@@ -94,58 +96,78 @@ configuration, the program will fail with an error message.
9496\f[I] midi_file \f[ R ]
9597Input MID file name.
9698.SH EXAMPLES
99+ .PP
97100The following examples assume the default option USE_44KHZ=ON, which
98101means an output sample rate = 44100 Hz.
99102.PP
100103Example 1: Render a MIDI file and save the rendered audio as a raw audio
101104file:
102105.IP
103- .EX
106+ .nf
107+ \f[ C ]
104108$ sonivoxrender ants.mid > ants.pcm
105- .EE
109+ \f[ R ]
110+ .fi
106111.PP
107112Example 2: pipe the rendered audio thru the Linux ALSA \f[B] aplay \f[ R ]
108113utility:
109114.IP
110- .EX
111- $ sonivoxrender ants.mid | aplay \- c 2 \- f S16_LE \- r 44100
112- .EE
115+ .nf
116+ \f[ C ]
117+ $ sonivoxrender ants.mid | aplay -c 2 -f S16_LE -r 44100
118+ \f[ R ]
119+ .fi
113120.PP
114121is equivalent to:
115122.IP
116- .EX
117- $ sonivoxrender ants.mid | aplay \- f cd
118- .EE
123+ .nf
124+ \f[ C ]
125+ $ sonivoxrender ants.mid | aplay -f cd
126+ \f[ R ]
127+ .fi
119128.PP
120129Example 3: pipe the rendered audio thru the \f[B] lame \f[ R ] utility
121130creating a MP3 file:
122131.IP
123- .EX
124- $ sonivoxrender ants.mid | lame \- r \- s 44100 \- ants.mp3
125- .EE
132+ .nf
133+ \f[ C ]
134+ $ sonivoxrender ants.mid | lame -r -s 44100 - ants.mp3
135+ \f[ R ]
136+ .fi
126137.PP
127138Example 4: pipe the rendered audio thru the \f[B] sox \f[ R ] utility
128139creating a WAV file:
129140.IP
130- .EX
131- $ sonivoxrender ants.mid | sox \- t s16 \- c 2 \- r 44100 \- ants.wav
132- .EE
141+ .nf
142+ \f[ C ]
143+ $ sonivoxrender ants.mid | sox -t s16 -c 2 -r 44100 - ants.wav
144+ \f[ R ]
145+ .fi
133146.PP
134- Example 5: pipe the rendered audio thru the PulseAudio\( cq s
147+ Example 5: pipe the rendered audio thru the PulseAudio\[ cq ] s
135148\f[B] pacat \f[ R ] utility:
136149.IP
137- .EX
150+ .nf
151+ \f[ C ]
138152$ sonivoxrender ants.mid | pacat
139- .EE
153+ \f[ R ]
154+ .fi
155+ .PP
156+ Example 6: pipe the rendered audio thru the PipeWire\[cq ] s
157+ \f[B] pw-play \f[ R ] utility:
158+ .IP
159+ .nf
160+ \f[ C ]
161+ $ sonivoxrender ants.mid | pw-play --rate 44100 -
162+ \f[ R ]
163+ .fi
140164.SH BUGS
141- See Tickets at GitHub \c
142- .UR https://github.com/pedrolcl/sonivox/issues/
143- .UE \c
165+ .PP
166+ See Tickets at GitHub <https://github.com/pedrolcl/sonivox/issues/>
144167.SH LICENSE AND COPYRIGHT
168+ .PP
145169Licensed under the Apache License, Version 2.0
146170.PP
147- Copyright (c) 2022\ - 2025 Pedro López \ - Cabanillas and contributors
171+ Copyright (c) 2022-2025 Pedro L \[ 'o ] pez -Cabanillas and contributors
148172.SH AUTHORS
149- Pedro López\- Cabanillas \c
150- .MT plcl@users.sf.net
151- .ME \c .
173+ Pedro L\['o ] pez-Cabanillas <plcl@users.sf.net>.
0 commit comments