Hvad er SF2-filformatet?
.sf2-filer gemmer PCM lydsamples organiseret i instrument-presets, hvilket er grunden til, at de ofte kaldes „lydbanker“. En SF2-bank er bygget på RIFF-containerformatet og er opdelt i tre hovedsektioner: metadata, sample-data og artikulations-data, der mapper samples til MIDI-noder, velocity-lag og afspilningsparametre.
Udover rå samples koder SF2-filer afspilningsinstruktioner såsom:
- loop-punkter (sustain- og release-loops pr. sample)
- indstillinger for vibrato og modulations-envelope
- pitch- og volumenovergange mellem velocity-lag
- stereo-panning og tildeling af mute-grupper
SF2-filer kan bruges til at styre volumen, pitch-shifting og afspilningshastighed gennem artikulationslaget i stedet for ved at ændre den rå lyd. De er vidt brugt som instrumentbanker til MIDI-afspilning - en enkelt .sf2-fil kan indeholde en komplet General MIDI-bank med 128 melodiske instrumenter plus trommesæt.
Den seneste specifikation (SoundFont 2.04, 2006) understøtter 24-bit samples via en valgfri sm24-chunk sammen med den standard 16-bit smpl-chunk. SF2-filer understøttes af mange musikproduktionsværktøjer, herunder Viena, LMMS, FL Studio, MuseScore og Polyphone. FluidSynth, den primære open-source SF2-rendering-motor, driver MIDI-afspilning på Linux-skriveborde og Android-apps. For komprimerede banker erstatter den relaterede SF3-variant rå PCM med OGG Vorbis-kodning.
Sikkerhed og tryghed
RISIKO: LOWSF2 er en datafil (instrumentbank); den kan ikke eksekvere kode. Ingen malware-vektorer er kendt for dette format. Typisk sikkerhedsproblem er filstørrelsen - store SF2-banker (1+ GB) kan udtømme RAM i en synthesizer-proces.
Formatdetaljer
kort fortaltProgrammer der åbner SF2-filer
Tekniske detaljer
dyb specifikation| Containerformat | RIFF (Resource Interchange File Format); magic bytes `RIFF` ved offset 0, `sfbk` ved offset 8 |
| Top-level LIST chunks | `INFO` (metadata og version), `sdta` (sample-data), `pdta` (artikulations- og preset-data) |
| Sample-kodning | Ukomprimeret 16-bit PCM i `smpl` sub-chunk; valgfri 24-bit udvidelsesdata i `sm24` sub-chunk (spec 2.04+) |
| Artikulations sub-chunks | 9 sub-chunks i `pdta`: `phdr`, `pbag`, `pmod`, `pgen`, `inst`, `ibag`, `imod`, `igen`, `shdr` |
| Byte-rækkefølge | Little-endian |
| Sample-rate | Erklæret pr. sample i `shdr` chunk; almindelige værdier er 22050, 44100 og 48000 Hz |
| Preset-kapacitet | Op til 65.536 presets (phdr-poster); samplenavne begrænset til 20 ASCII-tegn |
| Komprimering | Ingen i SF2 (rå PCM); den relaterede SF3-variant bruger OGG Vorbis for mindre filstørrelser |
| Typisk filstørrelse | 1 MB - 500 MB; General MIDI-banker typisk 30-200 MB; store orkestrale banker op til 2 GB |
| Versionsfelt | `ifil` sub-chunk gemmer major.minor spec-versionen (f.eks. 2.04) |
| Udvikler-oprindelse | E-mu Systems / Creative Technology Ltd; designet til Sound Blaster AWE32/64 hardware (1996) |
| Primær render-motor | FluidSynth (cross-platform, open-source); driver Linux MIDI-skriveborde og Android synthesizer-apps |
| Sample-kanaltyper | Mono, stereo venstre/højre og linkede kanaler erklæret via `wSampleType`-feltet i `shdr`-chunken |
| Udgivet | 1996 (SoundFont 2.0 spec); spec 2.01 published 1998; 2.04 published 2006 |
| Seneste version | SoundFont 2.04 (February 3, 2006) |
| Åben standard | Ja · royaltyfri |
| Specifikation | www.synthfont.com |
SF2-konverteringer
Fællesskabets Q&A
spurgt af brugereIngen spørgsmål endnu - vær den første til at spørge om SF2-filer.