Files
music-assistant/docs/PRODUCT.md
T
2026-09-15 13:06:27 +02:00

3.6 KiB

Product Definition --- AI Music Studio for macOS

Vision

A native macOS application that helps users design a complete song concept through a natural chat interface, using OpenAI as the planning and writing engine, then prepares final lyrics and style instructions.

Core Flow

  1. User starts a new song project in a natural chat.
  2. User describes the song idea and optionally selects duration, genres/styles, instruments, vocals, language/dialect, structure and musical parameters.
  3. OpenAI applies product rules and completes missing creative details. An optional discussion mode lets the AI ask the user before making decisions.
  4. User reviews and manually edits every generated component.
  5. Project versions are saved.

Song Controls

  • Multiple genres/styles can be blended.
  • Instruments can be selected from a large worldwide instrument catalog.
  • Instruments can be searched by name, browsed by family/category and browsed by region/origin where useful.
  • Multiple instruments can be selected and deselected using checkboxes.
  • Selected instruments belong to the current Song Project.
  • Each instrument can have a role and entry/exit timing.
  • Instrument timing supports both timestamps and song sections.
  • Arrangement supports Manual and Auto modes.
  • Song structure supports Manual and Auto modes.
  • BPM, key/scale and maqam support Manual and Auto modes.
  • Multiple vocalists/voices can exist in one song.
  • User controls vocal gender/type, rap/singing mode, delivery and section-specific performance.
  • Multiple languages and dialects can be used in one song.
  • Arabic receives dedicated diacritics/harakat/tanween handling for pronunciation.
  • Energy and emotional progression can change throughout the song.
  • Effects, transitions, build-ups, drops, bass intensity and vocal processing can be manually specified or AI-assisted.

Lyrics

The user can either: - provide only an idea and have AI write the lyrics; or - provide existing lyrics and ask AI to correct, improve, restructure or complete them.

Instrument Selector

The application provides a names-and-metadata Instrument Selector. The catalog should cover as many musical instruments as reasonably possible, including Western, Middle Eastern, African, South Asian, East Asian, Southeast Asian, Latin American, traditional, folk, orchestral, electronic and modern instruments.

Instrument catalog data must not be hardcoded directly inside SwiftUI views. Each catalog entry should support structured metadata:

  • id
  • name
  • family/category
  • optional region/origin
  • optional aliases/search terms

Selected instruments must be available as part of the Song Project and later available to the OpenAI/song-generation layer so they can influence arrangement, instrument roles, entry/exit timing, song structure where relevant and the final style prompt.

Instrument images, audio previews, sound samples, audio playback, Freesound, an Instrument API and external API calls for instrument data are not part of the current product requirement.

Project Management

Every song is stored as a project. Important changes can create versions so previous states remain recoverable. A project can be deleted after explicit user confirmation.

AI Rules

The product owner has private system rules that govern OpenAI behavior. Normal users cannot view or modify these rules in the initial version.

Initial Boundary

The macOS app prepares and stores the final lyrics and style prompt only. It does not open, embed or control an external music-generation website.