सार्वजनिक जानकारी से बना चयन मार्गदर्शन। केवल संदर्भ हेतु।
एक व्यापक Dart पुस्तकालय जो संगीत सिद्धांत कॉन्सेप्ट के साथ काम करने को सरल बनाने के लिए डिज़ाइन किया गया है। इसमें नोट्स, स्केल, चोर्ड्स, इंटरवल्स और की सिग्नेचर के साथ काम करने के लिए उपकरण हैं जो सहज API के साथ आते हैं। विकासकर्ताओं के लिए आदर्श जो संगीत एप्लिकेशन, शैक्षिक उपकरण या ऑडियो प्रोसेसिंग फीचर बना रहे हैं, यह Android, iOS, Web, macOS, Windows और Linux पर क्रॉस-प्लेटफॉर्म विकास का समर्थन करता है। लाइब्रेरी जटिल संगीत संबंधों को आसान उपयोग वाले फंक्शन में अभिव्यक्त करती है, जिससे सटीक और कुशल संगीत संबंधी गणना संभव होती है।
उपयोग
संगीत एप विकास
इंटरैक्टिव संगीत शिक्षा
चोर्ड और स्केल जनरेशन
ऑडियो एप्लिकेशन लॉजिक
रियल-टाइम संगीत विश्लेषण
संरचना सहायता
मुख्य विशेषताएँ
नोट और अंतराल संचालन
स्केल और अकॉर्ड निर्माण
की सिग्नेचर समर्थन
प्लेटफॉर्म के अनुकूलता
स्वचालित एपीआई डिज़ाइन
सटीक संगीत सिद्धांत गणना
इनके लिए उपयुक्त
संगीत ऐप में Dart विकासकर्ता
शैक्षिक सॉफ्टवेयर निर्माता
ऑडियो प्रोसेसिंग प्रोजेक्ट्स
कोड-आधारित उपकरण का उपयोग करने वाले संगीतकार
संगीत सिद्धांत तर्क की आवश्यकता वाले ऐप निर्माता
विचार योग्य बातें
मूल गीत सिद्धांत के बारे में समझने की आवश्यकता है
सिर्फ सैद्धांतिक पहलू (ऑडियो प्ले बैक के बिना)
कोई निर्मित ध्वनि संश्लेषण नहीं
अतिरिक्त ऑडियो लाइब्रेरी के साथ सबसे अच्छा उपयोग किया जाता है
उन्नत उपयोग के मामलों के लिए कस्टमाइजेशन की आवश्यकता हो सकती है
मुख्य कार्यक्षमता पर आधारित दस्तावेज़ीकरण
मूल README
संबंधित सोर्स रिपॉज़िटरी के मूल README का स्नैपशॉट। नवीनतम सामग्री के लिए रिपॉज़िटरी देखें।
A comprehensive Dart library for effortlessly working with music theory concepts,
offering an elegant and beautifully crafted API.
Features
Notes, accidentals, and enharmonic operations
Intervals, qualities, and circle of fifths
Chords, scales, harmonic functions, inversions and retrogrades
Keys, key signatures, and modes
Frequencies and tuning systems (work in progress)
Usage
Import the package into your Dart code:
import'package:music_notes/music_notes.dart';
Now, you can use the provided APIs to perform various music theory operations.
For more detailed usage instructions and examples, please refer to the
API documentation.
Notes
Define a Note from a NoteName (.a to .g) and an Accidental, or using their
shorthand static constants:
constNote(.e, .flat); // E♭Note.c; // CNote.d; // DNote.f; // F
NoteNames can be obtained from semitones or ordinal:
ScalePattern.lydian.on(Note.d); // D Lydian (D E F♯ G♯ A B C♯ D)ScalePattern.wholeTone.on(Note.f); // F Whole-tone (F G A B C♯ D♯ F)ScalePattern.majorPentatonic.on(Note.g.flat);
// G♭ Major pentatonic (G♭ A♭ B♭ D♭ E♭ G♭)
Or get it from a Key:
Note.a.flat.major.scale; // A♭ Major (ionian) (A♭ B♭ C D♭ E♭ F G A♭)Note.d.minor.scale; // D Natural minor (aeolian) (D E F G A B♭ C D)
Even experiment with any ScaleDegree or HarmonicFunction:
ScalePattern.lydian.on(Note.e).degree(.iv); // A♯Note.c.major.scale.functionChord(
HarmonicFunction.dominantV / .dominantV,
); // D
Rearrange any collection of Notes, Pitches or PitchClasses
as inversion or retrograde:
ScalePattern
.lydian // Lydian (M2 M2 M2 m2 M2 M2 m2)
.on(Note.parse('a')) // A Lydian (A B C♯ D♯ E F♯ G♯ A)
.transposeBy(.M2) // B Lydian (B C♯ D♯ E♯ F♯ G♯ A♯ B)
.degree(.iii) // D♯
.respelledUpwards // E♭
.major // E♭ major
.relative // C minor
.scale // C Natural minor (aeolian) (C D E♭ F G A♭ B♭ C)
.degreeChord(.v) // G-
.add9(); // G-9
Contributions are welcome! If you encounter any issues or have suggestions for improvements, please feel free to open an issue or submit a pull request on the GitHub repository.