|
drumstick
1.0.2
|
Standard MIDI Files input/output. More...
#include <qsmf.h>

Signals | |
| void | signalSMFError (const QString &errorStr) |
| Emitted for a SMF read or write error. More... | |
| void | signalSMFHeader (int format, int ntrks, int division) |
| Emitted after reading a SMF header. More... | |
| void | signalSMFNoteOn (int chan, int pitch, int vol) |
| Emitted after reading a Note On message. More... | |
| void | signalSMFNoteOff (int chan, int pitch, int vol) |
| Emitted after reading a Note Off message. More... | |
| void | signalSMFKeyPress (int chan, int pitch, int press) |
| Emitted after reading a Polyphonic Aftertouch message. More... | |
| void | signalSMFCtlChange (int chan, int ctl, int value) |
| Emitted after reading a Control Change message. More... | |
| void | signalSMFPitchBend (int chan, int value) |
| Emitted after reading a Bender message. More... | |
| void | signalSMFProgram (int chan, int patch) |
| Emitted after reading a Program change message. More... | |
| void | signalSMFChanPress (int chan, int press) |
| Emitted after reading a Channel Aftertouch message. More... | |
| void | signalSMFSysex (const QByteArray &data) |
| Emitted after reading a System Exclusive message. More... | |
| void | signalSMFSeqSpecific (const QByteArray &data) |
| Emitted after reading a Sequencer specific message. More... | |
| void | signalSMFMetaUnregistered (int typ, const QByteArray &data) |
| Emitted after reading an unregistered SMF Meta message. More... | |
| void | signalSMFMetaMisc (int typ, const QByteArray &data) |
| Emitted after reading any SMF Meta message. More... | |
| void | signalSMFSequenceNum (int seq) |
| Emitted after reading a Sequence number message. More... | |
| void | signalSMFforcedChannel (int channel) |
| Emitted after reading a Forced channel message. More... | |
| void | signalSMFforcedPort (int port) |
| Emitted after reading a Forced port message. More... | |
| void | signalSMFText (int typ, const QString &data) |
| Emitted after reading a SMF text message. More... | |
| void | signalSMFSmpte (int b0, int b1, int b2, int b3, int b4) |
| Emitted after reading a SMPT offset message. More... | |
| void | signalSMFTimeSig (int b0, int b1, int b2, int b3) |
| Emitted after reading a SMF Time signature message. More... | |
| void | signalSMFKeySig (int b0, int b1) |
| Emitted after reading a SMF Key Signature smessage. More... | |
| void | signalSMFTempo (int tempo) |
| Emitted after reading a Tempo Change message. More... | |
| void | signalSMFendOfTrack () |
| Emitted after reading a End-Of-Track message. | |
| void | signalSMFTrackStart () |
| Emitted after reading a track prefix. | |
| void | signalSMFTrackEnd () |
| Emitted after a track has finished. | |
| void | signalSMFWriteTempoTrack () |
| Emitted to request the user to write the tempo track. More... | |
| void | signalSMFWriteTrack (int track) |
| Emitted to request the user to write a track. More... | |
Public Member Functions | |
| QSmf (QObject *parent=0) | |
| Constructor. More... | |
| virtual | ~QSmf () |
| Destructor. | |
| void | readFromStream (QDataStream *stream) |
| Reads a SMF stream. More... | |
| void | readFromFile (const QString &fileName) |
| Reads a SMF stream from a disk file. More... | |
| void | writeToStream (QDataStream *stream) |
| Writes a SMF stream. More... | |
| void | writeToFile (const QString &fileName) |
| Writes a SMF stream to a disk file. More... | |
| void | writeMetaEvent (long deltaTime, int type, const QByteArray &data) |
| Writes a variable length Meta Event. More... | |
| void | writeMetaEvent (long deltaTime, int type, const QString &data) |
| Writes a Text Meta Event. More... | |
| void | writeMetaEvent (long deltaTime, int type, int data) |
| Writes a simple Meta event. More... | |
| void | writeMetaEvent (long deltaTime, int type) |
| Writes a simple Meta event. More... | |
| void | writeMidiEvent (long deltaTime, int type, int chan, int b1) |
| Writes a MIDI message with a single parameter. More... | |
| void | writeMidiEvent (long deltaTime, int type, int chan, int b1, int b2) |
| Writes a MIDI message with two parameters. More... | |
| void | writeMidiEvent (long deltaTime, int type, int chan, const QByteArray &data) |
| Writes a variable length MIDI message. More... | |
| void | writeMidiEvent (long deltaTime, int type, long len, char *data) |
| Writes a variable length MIDI message. More... | |
| void | writeTempo (long deltaTime, long tempo) |
| Writes a Tempo change message. More... | |
| void | writeBpmTempo (long deltaTime, int tempo) |
| Writes a Tempo change message. More... | |
| void | writeTimeSignature (long deltaTime, int num, int den, int cc, int bb) |
| Writes a Time Signature message. More... | |
| void | writeKeySignature (long deltaTime, int tone, int mode) |
| Writes a key Signature message. More... | |
| void | writeSequenceNumber (long deltaTime, int seqnum) |
| Writes a MIDI Sequence number. More... | |
| long | getCurrentTime () |
| Gets the current time in ticks. More... | |
| long | getCurrentTempo () |
| Gets the current tempo. More... | |
| long | getRealTime () |
| Gets the real time in seconds. More... | |
| long | getFilePos () |
| Gets the position in the SMF stream. More... | |
| int | getDivision () |
| Gets the resolution. More... | |
| void | setDivision (int division) |
| Sets the resolution. More... | |
| int | getTracks () |
| Gets the number of tracks. More... | |
| void | setTracks (int tracks) |
| Sets the number of tracks. More... | |
| int | getFileFormat () |
| Gets the SMF file format. More... | |
| void | setFileFormat (int fileFormat) |
| Sets the SMF file format. More... | |
| QTextCodec * | getTextCodec () |
| Gets the text codec used for text meta-events I/O. More... | |
| void | setTextCodec (QTextCodec *codec) |
| Sets the text codec for text meta-events. More... | |
Standard MIDI Files input/output.
This class is used to parse and encode Standard MIDI Files (SMF)
| long getCurrentTempo | ( | ) |
| long getCurrentTime | ( | ) |
| int getDivision | ( | ) |
| int getFileFormat | ( | ) |
| long getFilePos | ( | ) |
| long getRealTime | ( | ) |
| QTextCodec * getTextCodec | ( | ) |
| int getTracks | ( | ) |
| void readFromFile | ( | const QString & | fileName | ) |
Reads a SMF stream from a disk file.
| fileName | Name of an existing file. |
Definition at line 434 of file qsmf.cpp.
References QSmf::readFromStream().
| void readFromStream | ( | QDataStream * | stream | ) |
Reads a SMF stream.
| stream | Pointer to an existing and opened stream |
Definition at line 424 of file qsmf.cpp.
Referenced by QSmf::readFromFile().
| void setDivision | ( | int | division | ) |
| void setFileFormat | ( | int | fileFormat | ) |
| void setTextCodec | ( | QTextCodec * | codec | ) |
| void setTracks | ( | int | tracks | ) |
|
signal |
Emitted after reading a Channel Aftertouch message.
| chan | MIDI Channel |
| press | Pressure amount |
Definition at line 495 of file moc_qsmf.cpp.
Referenced by QSmf::writeKeySignature().
|
signal |
Emitted after reading a Control Change message.
| chan | MIDI Channel |
| ctl | MIDI Controller |
| value | Control value |
Definition at line 474 of file moc_qsmf.cpp.
Referenced by QSmf::writeKeySignature().
|
signal |
Emitted for a SMF read or write error.
| errorStr | Error string |
Definition at line 439 of file moc_qsmf.cpp.
Referenced by QSmf::writeKeySignature().
|
signal |
Emitted after reading a Forced channel message.
| channel | MIDI Channel |
Definition at line 537 of file moc_qsmf.cpp.
Referenced by QSmf::writeKeySignature().
|
signal |
Emitted after reading a Forced port message.
| port | Port number |
Definition at line 544 of file moc_qsmf.cpp.
Referenced by QSmf::writeKeySignature().
|
signal |
Emitted after reading a SMF header.
| format | SMF format (0/1) |
| ntrks | Number pof tracks |
| division | Division (resolution in ticks per quarter note) |
Definition at line 446 of file moc_qsmf.cpp.
Referenced by QSmf::~QSmf().
|
signal |
Emitted after reading a Polyphonic Aftertouch message.
| chan | MIDI Channel |
| pitch | MIDI Note |
| press | Pressure amount |
Definition at line 467 of file moc_qsmf.cpp.
Referenced by QSmf::writeKeySignature().
|
signal |
Emitted after reading a SMF Key Signature smessage.
| b0 | Number of alterations (negative=flats, positive=sharps) |
| b1 | Scale Mode (0=major, 1=minor) |
Definition at line 572 of file moc_qsmf.cpp.
Referenced by QSmf::writeKeySignature().
|
signal |
Emitted after reading any SMF Meta message.
| typ | Message type |
| data | Message data |
Definition at line 523 of file moc_qsmf.cpp.
Referenced by QSmf::writeKeySignature().
|
signal |
Emitted after reading an unregistered SMF Meta message.
| typ | Message type |
| data | Message data |
Definition at line 516 of file moc_qsmf.cpp.
Referenced by QSmf::writeKeySignature().
|
signal |
Emitted after reading a Note Off message.
| chan | MIDI Channel |
| pitch | MIDI Note |
| vol | Velocity |
Definition at line 460 of file moc_qsmf.cpp.
Referenced by QSmf::writeKeySignature().
|
signal |
Emitted after reading a Note On message.
| chan | MIDI Channel |
| pitch | MIDI Note |
| vol | Velocity |
Definition at line 453 of file moc_qsmf.cpp.
Referenced by QSmf::writeKeySignature().
|
signal |
Emitted after reading a Bender message.
| chan | MIDI Channel |
| value | Bender value |
Definition at line 481 of file moc_qsmf.cpp.
Referenced by QSmf::writeKeySignature().
|
signal |
Emitted after reading a Program change message.
| chan | MIDI Channel |
| patch | Program number |
Definition at line 488 of file moc_qsmf.cpp.
Referenced by QSmf::writeKeySignature().
|
signal |
Emitted after reading a Sequencer specific message.
| data | Message data |
Definition at line 509 of file moc_qsmf.cpp.
Referenced by QSmf::writeKeySignature().
|
signal |
Emitted after reading a Sequence number message.
| seq | Sequence number |
Definition at line 530 of file moc_qsmf.cpp.
Referenced by QSmf::writeKeySignature().
|
signal |
Emitted after reading a SMPT offset message.
| b0 | Hours |
| b1 | Minutes |
| b2 | Seconds |
| b3 | Frames |
| b4 | Fractional frames |
Definition at line 558 of file moc_qsmf.cpp.
Referenced by QSmf::writeKeySignature().
|
signal |
Emitted after reading a System Exclusive message.
| data | Sysex bytes |
Definition at line 502 of file moc_qsmf.cpp.
Referenced by QSmf::writeKeySignature().
|
signal |
Emitted after reading a Tempo Change message.
| tempo | Microseconds per quarter note |
Definition at line 579 of file moc_qsmf.cpp.
Referenced by QSmf::writeKeySignature().
|
signal |
Emitted after reading a SMF text message.
| typ | Text type |
| data | Text data |
Definition at line 551 of file moc_qsmf.cpp.
Referenced by QSmf::writeKeySignature().
|
signal |
Emitted after reading a SMF Time signature message.
| b0 | Numerator |
| b1 | Denominator (exponent in a power of two) |
| b2 | Number of MIDI clocks per metronome click |
| b3 | Number of notated 32nd notes per 24 MIDI clocks |
Definition at line 565 of file moc_qsmf.cpp.
Referenced by QSmf::writeKeySignature().
|
signal |
Emitted to request the user to write the tempo track.
This is the first track in a format 1 SMF.
Definition at line 604 of file moc_qsmf.cpp.
Referenced by QSmf::~QSmf().
|
signal |
Emitted to request the user to write a track.
| track | Track number |
Definition at line 610 of file moc_qsmf.cpp.
Referenced by QSmf::writeToFile().
| void writeBpmTempo | ( | long | deltaTime, |
| int | tempo | ||
| ) |
Writes a Tempo change message.
| deltaTime | Time offset in ticks |
| tempo | Tempo expressed in quarter notes per minute |
Definition at line 748 of file qsmf.cpp.
References QSmf::writeTempo().
| void writeKeySignature | ( | long | deltaTime, |
| int | tone, | ||
| int | mode | ||
| ) |
Writes a key Signature message.
| deltaTime | Time offset in ticks |
| tone | Number of alterations (positive=sharps, negative=flats) |
| mode | Scale mode (0=major, 1=minor) |
Definition at line 780 of file qsmf.cpp.
References channel_aftertouch, control_change, copyright_notice, cue_point, end_of_track, forced_channel, forced_port, instrument_name, key_signature, lyric, marker, meta_event, midi_channel_mask, midi_command_mask, note_off, note_on, pitch_wheel, poly_aftertouch, program_chng, sequence_name, sequence_number, sequencer_specific, set_tempo, QSmf::signalSMFChanPress(), QSmf::signalSMFCtlChange(), QSmf::signalSMFendOfTrack(), QSmf::signalSMFError(), QSmf::signalSMFforcedChannel(), QSmf::signalSMFforcedPort(), QSmf::signalSMFKeyPress(), QSmf::signalSMFKeySig(), QSmf::signalSMFMetaMisc(), QSmf::signalSMFMetaUnregistered(), QSmf::signalSMFNoteOff(), QSmf::signalSMFNoteOn(), QSmf::signalSMFPitchBend(), QSmf::signalSMFProgram(), QSmf::signalSMFSeqSpecific(), QSmf::signalSMFSequenceNum(), QSmf::signalSMFSmpte(), QSmf::signalSMFSysex(), QSmf::signalSMFTempo(), QSmf::signalSMFText(), QSmf::signalSMFTimeSig(), smpte_offset, text_event, and time_signature.
| void writeMetaEvent | ( | long | deltaTime, |
| int | type, | ||
| const QByteArray & | data | ||
| ) |
Writes a variable length Meta Event.
| deltaTime | Time offset in ticks |
| type | Meta event type |
| data | Message data |
Definition at line 516 of file qsmf.cpp.
References meta_event.
| void writeMetaEvent | ( | long | deltaTime, |
| int | type, | ||
| const QString & | data | ||
| ) |
Writes a Text Meta Event.
| deltaTime | Time offset in ticks |
| type | Meta event type |
| data | Message text |
Definition at line 533 of file qsmf.cpp.
References meta_event.
| void writeMetaEvent | ( | long | deltaTime, |
| int | type, | ||
| int | data | ||
| ) |
Writes a simple Meta event.
| deltaTime | Time offset in ticks |
| type | Meta event type |
| data | Meta event data |
Definition at line 555 of file qsmf.cpp.
References meta_event.
| void writeMetaEvent | ( | long | deltaTime, |
| int | type | ||
| ) |
Writes a simple Meta event.
| deltaTime | Time offset in ticks |
| type | Meta event type |
Definition at line 569 of file qsmf.cpp.
References meta_event.
| void writeMidiEvent | ( | long | deltaTime, |
| int | type, | ||
| int | chan, | ||
| int | b1 | ||
| ) |
Writes a MIDI message with a single parameter.
| deltaTime | Time offset in ticks |
| type | MIDI event type |
| chan | MIDI Channel |
| b1 | Message parameter |
Definition at line 629 of file qsmf.cpp.
References end_of_sysex, and system_exclusive.
| void writeMidiEvent | ( | long | deltaTime, |
| int | type, | ||
| int | chan, | ||
| int | b1, | ||
| int | b2 | ||
| ) |
Writes a MIDI message with two parameters.
| deltaTime | Time offset in ticks |
| type | MIDI event type |
| chan | MIDI Channel |
| b1 | Message parameter 1 |
| b2 | Message parameter 2 |
Definition at line 658 of file qsmf.cpp.
References end_of_sysex, and system_exclusive.
| void writeMidiEvent | ( | long | deltaTime, |
| int | type, | ||
| int | chan, | ||
| const QByteArray & | data | ||
| ) |
Writes a variable length MIDI message.
| deltaTime | Time offset in ticks |
| type | MIDI event type |
| chan | MIDI Channel |
| data | Message data |
Definition at line 584 of file qsmf.cpp.
References end_of_sysex, and system_exclusive.
| void writeMidiEvent | ( | long | deltaTime, |
| int | type, | ||
| long | len, | ||
| char * | data | ||
| ) |
Writes a variable length MIDI message.
| deltaTime | Time offset in ticks |
| type | MIDI event type |
| len | Message length |
| data | Message data |
Definition at line 687 of file qsmf.cpp.
References end_of_sysex, and system_exclusive.
| void writeSequenceNumber | ( | long | deltaTime, |
| int | seqnum | ||
| ) |
Writes a MIDI Sequence number.
| deltaTime | Time offset in ticks |
| seqnum | Sequence number |
Definition at line 716 of file qsmf.cpp.
References meta_event, and sequence_number.
| void writeTempo | ( | long | deltaTime, |
| long | tempo | ||
| ) |
Writes a Tempo change message.
| deltaTime | Time offset in ticks |
| tempo | Tempo in microseconds per quarter note |
Definition at line 732 of file qsmf.cpp.
References meta_event, and set_tempo.
Referenced by QSmf::writeBpmTempo().
| void writeTimeSignature | ( | long | deltaTime, |
| int | num, | ||
| int | den, | ||
| int | cc, | ||
| int | bb | ||
| ) |
Writes a Time Signature message.
| deltaTime | Time offset in ticks |
| num | Numerator |
| den | Denominator (exponent for a power of two) |
| cc | Number of MIDI clocks in a metronome click |
| bb | Number of notated 32nd notes in 24 MIDI clocks |
Definition at line 762 of file qsmf.cpp.
References meta_event, and time_signature.
| void writeToFile | ( | const QString & | fileName | ) |
Writes a SMF stream to a disk file.
| fileName | File name |
Definition at line 457 of file qsmf.cpp.
References MThd, MTrk, QSmf::signalSMFWriteTrack(), and QSmf::writeToStream().
| void writeToStream | ( | QDataStream * | stream | ) |
Writes a SMF stream.
| stream | Pointer to an existing and opened stream |
Definition at line 447 of file qsmf.cpp.
Referenced by QSmf::writeToFile().