Formato abierto
SongForm Format
Un formato de texto plano y legible por personas para documentar canciones: acordes, estructura y letras en un único archivo.
Convierte cualquier enlace de música en una setlist SFF
Importa un enlace de Spotify, Apple Music o YouTube Music y conviértelo en una lista canónica de canciones. Los álbumes y listas se expanden automáticamente en pistas individuales, puedes añadir canciones manualmente y descargarlas como una setlist SFF, listas para importar en SongForm y añadir tu propia forma de tocarlas.
Abrir el Conversor de Música en Streaming¿Por qué SongForm Format?
Los músicos necesitan una forma de documentar canciones que sirva de puente entre dos mundos:
SFF existe porque no deberías tener que elegir. Es un formato de texto plano diseñado por músicos, para músicos. Puedes editarlo en cualquier editor de texto, importarlo y exportarlo sin perder nada, y está estructurado para preservar lo que importa: qué tocas, cuándo lo tocas y qué cantas.
Piénsalo como "cifrados con metadatos". El formato que los guitarristas llevan décadas garabateando en papel, por fin formalizado.
Visión general del formato
SFF combina frontmatter YAML (para metadatos) con Markdown estructurado (para el contenido musical). Cada canción es un único archivo de texto plano. Sin binarios propietarios. Sin dependencias.
[metadatos de la canción]
[secciones con acordes y letras] Eso es todo. Estructura simple, suficientemente potente.
Especificación
Frontmatter (YAML)
El archivo comienza con un bloque YAML delimitado por ---.
Esta sección contiene todos los metadatos y las digitaciones opcionales.
Campos estándar
| Campo | Tipo | Ejemplo | Descripción |
|---|---|---|---|
sff_version | string | "1.0.0" | Versión del formato SFF. Asegura compatibilidad cuando el formato evolucione |
title | string | "Bohemian Rhapsody" | Nombre de la canción |
artist | string | "Queen" | Artista o grupo que la interpreta |
key | string | "Bb" / "G#m" | Tono de la canción |
bpm | integer | 120 | Tempo en pulsaciones por minuto |
time_signature | string | "4/4" / "7/8" | Métrica del compás |
tuning | string | "guitar_standard" | Afinación del instrumento. Necesaria para interpretar las digitaciones correctamente |
key_preference | enum | "sharps" / "flats" | Si los acordes se muestran con sostenidos o bemoles |
tags | array | ["pop", "rock", "70s"] | Etiquetas para buscar y filtrar |
notes | string | Texto libre | Notas libres sobre el arreglo o la canción |
draft | boolean | true / false | Marca la canción como borrador. Puede ocultarse en la biblioteca |
song_released | boolean | true / false | Indica si la canción está publicada y lista para reproducción/exportación |
chords | map | Ver abajo | Digitaciones por acorde. Solo necesario si la posición concreta importa |
Digitaciones de acordes (opcional)
Si quieres preservar digitaciones concretas, incluye un diccionario
chords:
chords:
Am7: 0 0 2 0 1 0
Gmaj7: 3 2 4 4 3 2
Dsus4: x x 0 2 3 3
Formato: NombreAcorde: traste1 traste2 traste3 ... donde
x significa "no tocar" y los números son posiciones de
traste (de izquierda a derecha, típicamente de arriba hacia abajo en
una guitarra estándar).
Cuerpo: Secciones y Bucles
Tras el cierre ---, el cuerpo de la canción contiene una
secuencia de secciones. Cada sección comienza con un
encabezado Markdown de nivel 2 (## NombreSección).
Un título Markdown opcional (# Título de la canción) puede
aparecer al principio del archivo. Cuando exista, debe coincidir con
el campo title del frontmatter.
Tipos de sección
Nombres de sección estándar:
Intro,Verse,Pre-Chorus,Chorus,Post-ChorusBridge,Middle 8,Solo,Breakdown,OutroOffset: metadato de sincronización de audio en milisegundos (sección especial)
El mismo tipo de sección puede aparecer varias veces. El orden define la secuencia de reproducción.
Bucles: la unidad básica
Dentro de cada sección, la unidad básica es un bucle: una progresión de acordes. Cada bucle tiene:
- Una línea de duración:
N: Acorde1 Acorde2 Acorde3 ... - Una línea en blanco opcional
- La letra opcional en la(s) línea(s) siguientes
N es el número de compases del bucle. La línea en
blanco entre acordes y letra es necesaria para que el markdown
renderice cada bloque por separado. El parser sabe que empieza un
nuevo bucle porque sus líneas siempre comienzan con N:.
## Verse
4: Am7 G
Primera progresión, cuatro compases
4: Am7 G F C
Segunda progresión, también cuatro compases Notación de acordes
Los acordes se escriben en notación estándar:
- Raíz:
AaG, con#obopcionales - Calidad:
m,dim,aug,sus2,sus4,add9, etc. - Extensión:
7,9,11,maj7,m7b5, etc. - Nota de bajo:
/Notapara indicar inversión
Ejemplos: C, Dm, G#m7,
Fsus4, Cmaj7/E
Ejemplo completo
A continuación se muestra una canción real codificada en SFF.
Wade in the Water de dominio público. Ilustra
todas las características clave: frontmatter con digitaciones,
un Offset para sincronización de audio, secciones con
bucles de distinta duración, letras y una sección de solo.
---
sff_version: 1.0.0
title: Wade In the Water
artist: Public Domain
key: A minor
bpm: 113
time_signature: 4/4
tuning: guitar_standard
tags: [Singer/Songwriter]
draft: true
chords:
Am: x 0 2 2 1 0
G: 3 5 5 4 3 3
F: 1 3 3 2 1 1
E: 0 2 2 1 0 0
---
## Offset
440
## Intro
2: Am G F E
2: Am G F E
2: Am G F E
2: Am G F E
## Chorus
2: Am G F E
Wade in the water
2: Am G F E
wade in the water children
2: Am G F E
wade in the water oh
2: Am E Am
God's gonna trouble the water
## Verse
2: Am F E
Who's that young girl dressed in red?
2: Am G F E
wade in the water
2: Am F E
Must be the children that Moses led
2: Am E Am
God's gonna trouble the water
## Chorus
2: Am G F E
Wade in the water
2: Am G F E
wade in the water children
2: Am G F E
wade in the water oh
2: Am E Am
God's gonna trouble the water
## Verse
2: Am F E
Who's that young girl dressed in white?
2: Am G F E
wade in the water
2: Am F E
Must be the children of the Israelite
2: Am E Am
Oh God's gonna trouble the water
## Chorus
2: Am G F E
Wade in the water
2: Am G F E
wade in the water children
2: Am G F E
wade in the water oh
3: Am E Am
God's gonna trouble the water
## Solo
15: Am G F E
## Verse
3: Am F E
Who's that young girl dressed in blue?
1: Am G F E
wade in the water
2: Am F E
must be the children that are coming through
2: Am E Am
God's gonna trouble the water
## Chorus
2: Am G F E
Wade in the water
2: Am G F E
wade in the water children
2: Am G F E
wade in the water oh
2: Am E Am
God's gonna trouble the water
## Verse
2: Am F E
You don't believe I've been redeemed
2: Am G F E
Wade in the water
2: Am G F E
Just seen the holy ghost looking for me
2: Am E Am
God's gonna trouble the water
## Chorus
2: Am G F E
Wade in the water
2: Am G F E
wade in the water children
2: Am G F E
wade in the water oh
3: Am E Am
God's gonna trouble the water
## Outro
2: Am G F E
2: Am G F E
2: Am G F E
2: Am G F E
2: Am G F E
2: Am G F E Principios de diseño
Abre cualquier archivo en el Bloc de notas, Vim o tu editor favorito. No necesitas software propietario.
Exporta tu canción de SongForm a SFF, edítala en cualquier sitio, vuelve a importarla, sin pérdidas.
Si alguna vez has escrito un cifrado en papel, SFF te resultará familiar.
El número de compases es explícito. El orden de las secciones es el orden de reproducción. Sin suposiciones.
Añade campos personalizados al frontmatter. Los parsers compatibles ignoran lo que no reconocen.
Comparativa: dónde encaja SFF
| Formato | Legible | Editable en cualquier sitio | Estructurado y sincronizable | Portable | Transposable | Metadatos y digitaciones |
|---|---|---|---|---|---|---|
| Guitar Pro | ✗ | ✗ (propietario) | ✓ | Limitado | ✓ | ✓ |
| Ultimate Guitar | ✓ | ✗ | ✗ | ✓ | ✓ | ✗ |
| Papel | ✓ | ✓ | ✗ | ✓ | ✗ | ✗ |
| SongForm Format | ✓ | ✓ | ✓✓ | ✓ | ✓ | ✓ |
SFF te da todos los datos necesarios para tocar con precisión sobre tu audio, con la accesibilidad de un archivo de texto plano.
Primeros pasos con SFF
En SongForm puedes:
.sff.md y versionarla en Git Pruébalo en SongForm
SFF es el formato nativo de SongForm para iOS. Importa, exporta y edita tus canciones, todo en un único archivo abierto.
Descubrir SongForm