CFugue The World's First and Only High level Music Note Programming Library for C/C++
Popularily referred to as CFugue, meaning Carnatic Fugue or the C/C++ replacement of JFugue, MusicNoteLib is a high level Music Programming Library. This library makes it possible to play music notes directly from C/C++ programs, without ever having to deal with the low-level MIDI complexities. This library provides a beautiful abstraction that lets you concetrate on programming the music rather than worry about the MIDI nuances. Provides features that makes it possible to use this library directly from many platforms, including but not limited to ASP pages, .Net applications and even non-Windows based systems.
For usage samples and further details, please refer to the documentation at MusicNoteLib, The C++ Music Programming Library
Using this library to play music is as easy as writing plain music notes. Just create a Player object and call the Play method on it supplying the Music notes to be played. Simple.
With built-in support for both Carnatic and Western Music alike, this is the first and only one of its kind.
MusicNoteLib::Player player; // Create the Player Object
player.Play("C D E F G A B"); // Play the Music Notes on the default MIDI output port
If you wish to take part in building this world class library, join the CFugue project development team at: CFugue MusicNoteLib - the C/C++ Music Programming Library
This is a product of CineFx Research Labs, distributed under LGPL with the hope that it will be useful. No warranty of what-so-ever is implied, including MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. Refer to LGPL for more details.
Author: Gopalakrishna Palem
Copyright (C) 2009 CineFx Digital Media Pvt. Ltd.
CFugue Carnatic MusicNote Programming Library for C/C++
CFugue Alpha 2 released. This is a C++ runtime environment for music note programming with below features:
* Highlevel music programming library with direct support for C++ bindings and .Net P/Invoke calls
* Provides COM interfaces to enable easy integration with ASP clients and COM compatible clients, such as Delphi, VB etc.
* Easy to use notation. Writing music for CFugue is as easy as writing plain music notes.
* Event subscription model allows easy extension of the library to allow advanced features such as customized music renderers and parsers.
* Platform compatible code to make the library accessible from a veriety of platforms such as Windows and multiple variants of Linux: OpenSuse, Ubuntu etc.
* Fully compatible with both Western style of music and Carnatic music. Offers below capabilities:
o Specifying simples notes (such as C, D, E .. for Western and S, R, G .. for Carnatic)
o Specifying note durations
o Specifying ties, chords, sequential notes and parallel notes
o Specifying Raga, Tala and Speed directives
o Specifying MIDI Instruments and tracks
o and more...
Creator of CFugue Runtime Environment for C++ Music Programming
CarMusTy now powered by PhTranslator and CFugue
CarMusTy, the all in one environment for typesetting Carnatic music Books. It is a one stop solution to edit Carnatic music notation files, generate MIDI files and typeset portable document format books. The advantages of using CarMusTy for typesetting the Carnatic music, as opposed to using any other editing application (such as Word or other music typesetting systems) are:
- CarMusTy allows Phonetic Transliteration of notation and lyrics. That is, you can enter Carnatic music notation and lyrics once in phonetic english and let CarMuty transliterate the content into multiple languages, such as Telugu, Kannada, Tamil, Hindi etc on the fly.
- CarMusTy is compatible with CFugue Carnatic music programming library, which means that the notation you enter in CarMusTy is actually capable of producing music!! Yes, CarMusTy can generate MIDI files from your song notation automatically.
- Numerous settings are provided in the application to customize the appearance of song notation and lyrics. CarMusTy generates PDF Books customized to your preferences and the in-built PDF preview window helps you see the output on the fly.
- Songs in CarMusTy environment support various attributes, such as Raga, Tala, Author, Composer etc., which will be automatically indexed by CarMusTy and inserted in the generated PDF book.
- CarMusTy supports Templates to ease the work of creating new books based on existing documents, and it ships with numerous Default Templates that help new beginners jump start with working on it with ease.
Note that CarMusTy is a typesetting environment, and not a word processing application. While word processors, such as Microsoft Word, OpenOffice Word etc., help you create and edit documents, typesetting applications, such as CarMusTy, help you publish Books. The difference is the typography finesse. For a book to have the professional level of acceptance, its typography must meet the accepted publishing standards. CarMusTy fully supports the Metric, US and British publishing standards and is built on top of the powerful TEX layout system.
As a CarMusTy user, you have access to all this professional quality publishing power right at your fingertips, and the manual at CarMusTy is a one stop guide to help you master that power. More details about CFugue runtime environment for MIDI score programming can be found at CFugue, The C++ Music Programming Library and details on Phonetic Transliteration Library can be found at Phonetic Translation Library: Typing in Indian Languages (Bengali, Gujarati, Hindi, Kannada, Malayalam, Oriya, Punjabi, Sanskrit, Tamil, Telugu )
Author of CarMusTy Typesetting Environment for Carnatic Music