| FluidSynth(1) | General Commands Manual | FluidSynth(1) |
نام (NAME)
fluidsynth - یک سینتیسایزر نرمافزاری بر پایه ساندفونت (SoundFont)
خلاصه دستور (SYNOPSIS)
fluidsynth [گزینهها] [ SoundFonts ] [ midifiles ]
توضیحات (DESCRIPTION)
برنامه FluidSynth یک سینتیسایزر بیدرنگ (real-time) بر پایه مشخصات SoundFont(R) 2 برای فایلهای صوتی و MIDI است. از این ابزار میتوان برای تبدیل ورودیهای MIDI یا فایلهای MIDI به صدا استفاده کرد. رویدادهای MIDI از یک دستگاه MIDI دریافت میشوند. صدا به صورت بیدرنگ به دستگاه خروجی صوتی رندر و پخش میشود.
سادهترین روش برای اجرای سینتیسایزر، مشخص کردن یک فایل SoundFont در خط فرمان است: 'fluidsynth soundfont.sf2'. برنامه fluidsynth فایل SoundFont را بارگذاری کرده و رویدادهای MIDI را با استفاده از درایور پیشفرض MIDI از دستگاه پیشفرض MIDI میخواند. پس از اجرای FluidSynth، دستورات را از ورودی استاندارد (stdin) دریافت میکند. دستوراتی برای ارسال دستی رویدادهای MIDI، بارگذاری یا تخلیه SoundFontها و موارد دیگر وجود دارد. تمام دستورات موجود در ادامه تشریح شدهاند.
همچنین از FluidSynth میتوان برای پخش فهرستی از فایلهای MIDI استفاده کرد. تنها کافی است FluidSynth را به همراه فایل SoundFont و فهرستی از فایلهای MIDI برای پخش اجرا کنید. در این حالت شاید تمایلی به باز کردن دستگاه MIDI برای خواندن رویدادهای خارجی نداشته باشید. از گزینه -n برای غیرفعالسازی ورودی MIDI استفاده کنید. اگر میخواهید استفاده از شل (shell) تعاملی را نیز غیرفعال کنید، FluidSynth را با گزینه -i اجرا کنید: 'fluidsynth -ni soundfont.sf2 midifile1.mid midifile2.mid'.
برنامه fluidsynth را با گزینه --help اجرا کنید تا از تغییرات موجود در فهرست گزینهها مطلع شوید.
گزینهها (OPTIONS)
برنامه fluidsynth گزینههای زیر را میپذیرد:
- -a, --audio-driver=[label]
- درایور صوتی مورد استفاده. برای مشاهده گزینههای معتبر از "-a help" استفاده کنید.
- -b, --bank-offset=[num]
- یک فلگ وابسته به موقعیت که افست بانک (bank-offset) را برای تمام ساندفونتهای پس از آن مشخص میکند. میتوان آن را چندین بار تعیین کرد.
- -c, --audio-bufcount=[count]
- تعداد بافرهای صوتی
- -C, --chorus
- روشن یا خاموش کردن کُروس (chorus) [0|1|yes|no، پیشفرض = on]
- -d, --dump
- تخلیه و چاپ رویدادهای ورودی و خروجی MIDI در خروجی استاندارد (stdout)
- -E, --audio-file-endian
- ترتیب بایتها (endianness) فایل صوتی برای رندر سریع یا درایور aufile (برای مشاهده فهرست از "-E help" استفاده کنید)
- -f, --load-config
- بارگذاری فایل پیکربندی دستورات (دستورات شل)
- -F, --fast-render=[file]
- رندر کردن فایل MIDI به دادههای صوتی خام و ذخیره در [file]
- -g, --gain
- تنظیم بهره (gain) اصلی خروجی [0 < gain < 10، پیشفرض = 0.2]
- -G, --audio-groups
- تعیین تعداد گرههای صوتی LADSPA
- -h, --help
- چاپ این خلاصه راهنما
- -i, --no-shell
- عدم خواندن دستورات از شل [پیشفرض = yes]
- -j, --connect-jack-outputs
- تلاش برای اتصال خروجیهای جک (JACK) به درگاههای فیزیکی
- -K, --midi-channels=[num]
- تعداد کانالهای MIDI [پیشفرض = 16]
- -L, --audio-channels=[num]
- تعداد کانالهای صوتی استریو [پیشفرض = 1]
- -m, --midi-driver=[label]
- نام درایور MIDI مورد استفاده. برای مشاهده گزینههای معتبر از "-m help" استفاده کنید.
- -n, --no-midi-in
- عدم ایجاد درایور MIDI برای خواندن رویدادهای ورودی MIDI [پیشفرض = yes]
- -o
- تعریف یک تنظیم به صورت -o name=value (برای تخلیه و نمایش مقادیر فعلی از "-o help" استفاده کنید)
- -O, --audio-file-format
- قالب فایل صوتی برای رندر سریع یا درایور aufile (برای مشاهده فهرست از "-O help" استفاده کنید)
- -p, --portname=[label]
- تنظیم نام درگاه MIDI (درایورهای alsa_seq و coremidi)
- -q, --quiet
- عدم چاپ پیام خوشآمدگویی یا سایر خروجیهای اطلاعاتی
- -r, --sample-rate
- تنظیم نرخ نمونهبرداری (sample rate)
- -R, --reverb
- روشن یا خاموش کردن ریورب (reverb) [0|1|yes|no، پیشفرض = on]
- -s, --server
- اجرای FluidSynth به صورت یک فرآیند سرور
- -T, --audio-file-type
- نوع فایل صوتی برای رندر سریع یا درایور aufile (برای مشاهده فهرست از "-T help" استفاده کنید)
- -v, --verbose
- چاپ پیامهای پرجزئیات درباره رویدادهای MIDI (synth.verbose=1) و همچنین سایر پیامهای اشکالزدایی
- -V, --version
- نمایش نسخه برنامه
- -z, --audio-bufsize=[size]
- اندازه هر بافر صوتی
تنظیمات (SETTINGS)
تنظیماتی که باید با گزینه -o مشخص شوند در پرونده fluidsettings.xml که همراه این توزیع ارائه شده است یا به صورت برخط در نشانی https://www.fluidsynth.org/wiki/settings مستندسازی شدهاند. توصیه میکنیم این پرونده را در یک مرورگر وب، ترجیحاً فایرفاکس (Firefox)، مشاهده نمایید.
دستورات شل (SHELL COMMANDS)
- GENERAL
- help
- چاپ فهرست موضوعات راهنما (برای مشاهده جزئیات دستورات موجود عبارت "help <topic>" را تایپ کنید)
- quit
- خروج از سینتیسایزر
- SOUNDFONTS
- load filename [reset] [bankofs]
- بارگذاری یک ساندفونت (SoundFont) در پشته ساندفونت. اگر reset برابر 1 باشد (که پیشفرض ضمنی است)، تمام پریستهای در حال استفاده ساندفونت با در نظر گرفتن ساندفونت تازه بارگذاریشده مجدداً ارزیابی میشوند. به صورت اختیاری، میتوانید یک افست بانک غیرصفر برای ساندفونت جدید تعیین کنید. برای نمونه دستور load soundfont.sf2 0 10 فایل soundfont.sf2 را با افست بانک 10 بدون ارزیابی مجدد پریستها بارگذاری خواهد کرد.
- unload number
- تخلیه یک ساندفونت. عدد مشخصشده نشاندهنده اندیس ساندفونت در پشته است.
- fonts
- فهرست کردن ساندفونتهای فعلی موجود در پشته
- inst number
- چاپ سازهای صوتی موجود برای ساندفونت.
- MIDI MESSAGES
- noteon channel key velocity
- ارسال یک رویداد فشردن کلید نت (note-on)
- noteoff channel key
- ارسال یک رویداد رها کردن کلید نت (note-off)
- cc channel ctrl value
- ارسال یک رویداد تغییر کنترل (control change)
- prog chan num
- ارسال پیام تغییر برنامه (program-change)
- select chan sfont bank prog
- ترکیبی از انتخاب بانک (bank-select) و تغییر برنامه (program-change)
- channels
- چاپ پریستهای تمام کانالها.
- AUDIO SYNTHESIS
- gain value
- تنظیم بهره (gain) اصلی خروجی (0 < gain < 5)
- interp num
- انتخاب روش درونیابی (interpolation) برای تمام کانالها
- interpc chan num
- انتخاب روش درونیابی برای یک کانال مشخص
- REVERB
- set synth.reverb.active [0|1]
- روشن یا خاموش کردن ریورب (reverb)
- set synth.reverb.engine
- انتخاب موتور ریورب. انتخاب موتور در زمان ایجاد سینتیسایزر اعمال میشود.
- set synth.reverb.room-size num
- تغییر اندازه اتاق ریورب (room size)
- set synth.reverb.damp num
- تغییر میرایی ریورب (damping)
- set synth.reverb.width num
- تغییر پهنای ریورب (width)
- set synth.reverb.level num
- تغییر سطح صدای ریورب (level)
- CHORUS
- set synth.chorus.active [0|1]
- روشن یا خاموش کردن کُروس (chorus)
- set synth.chorus.nr n
- استفاده از n خط تاخیر (delay lines) (پیشفرض 3)
- set synth.chorus.level num
- تنظیم سطح خروجی هر خط کُروس به مقدار num
- set synth.chorus.speed num
- تنظیم سرعت مدولاسیون کُروس به مقدار num (بر حسب هرتز)
- set synth.chorus.depth num
- تنظیم عمق مدولاسیون کُروس به مقدار num (بر حسب میلیثانیه)
- MIDI ROUTER
- router_default
- بارگذاری مجدد قوانین پیشفرض مسیریابی MIDI (کانالهای ورودی به صورت ۱:۱ به سینتیسایزر نگاشت میشوند)
- router_clear
- پاک کردن و حذف تمام قوانین مسیریابی MIDI.
- router_begin [note|cc|prog|pbend|cpress|kpress]
- شروع یک قانون جدید مسیریابی برای رویدادهایی از نوع دادهشده
- router_chan min max mul add
- محدود کردن قانون به رویدادهای در بازه min <= chan <= max. اگر کانال در این پنجره قرار گیرد، در 'mul' ضرب شده و سپس مقدار 'add' به آن اضافه میشود.
- router_par1 min max mul add
- محدود کردن پارامتر ۱ (برای نمونه شماره نت در رویدادهای note). مشابه با router_chan.
- router_par2 min max mul add
- محدود کردن پارامتر ۲ (برای نمونه شدت ضربه یا velocity در یک رویداد note). مشابه با router_chan.
- router_end
- پایان دادن به قانون فعلی و افزودن آن به مسیریاب.
- Router examples
- router_clear
- router_begin note
- router_chan 0 7 0 15
- router_end
- تنها رویدادهای نت از ۸ کانال اول و پایینتر MIDI را میپذیرد. بدون توجه به کانال ورودی، سینتیسایزر نت را روی کانال ۱۵ اجرا میکند (synthchannel=midichannel*0+15)
- router_begin cc
- router_chan 0 7 0 15
- router_par1 1 1 0 64
- router_add
- چرخ مدولاسیون (modulation wheel) را پیکربندی میکند تا به عنوان پدال نگهدارنده (sustain pedal) عمل کند (تبدیل CC 1 به CC 64 روی ۸ کانال اول MIDI، و مسیریابی به کانال ۱۵)
نویسندگان (AUTHORS)
Peter Hanappe <hanappe@fluid-synth.org>
Markus Nentwig <nentwig@users.sourceforge.net>
Antoine Schmitt <as@gratin.org>
Josh Green <jgreen@users.sourceforge.net>
Stephane Letz <letz@grame.fr>
Tom Moebert <tom[d0t]mbrt[ÄT]gmail[d0t]com>
برای مشاهده تمامی سازندگان و اعتبارنامهها پروندههای AUTHORS و THANKS را بررسی کنید.
سلب مسئولیت (DISCLAIMER)
علامت تجاری SoundFont(R) یک علامت تجاری ثبتشده متعلق به E-mu Systems, Inc. است.
| February 21, 2026 |