<< Chapter < Page | Chapter >> Page > |
Your finished subVI should behave like this one:
Watch the screencast video to learn how to assemble a byte at the bit level, and also how to set up the enumerated data type for a case structure.
midi_MakeDtMeta.vi creates a delta-time / meta-event pair. The subVI accepts a delta-time in ticks, a meta-event selector, text string, and tempo value (only certain meta-events require the last two inputs). The delta-time is converted into variable-length format, and the meta-event is created. Both of these values are appended to the inbound string to produce the output string. Review the module Standard MIDI Files to learn about meta-events.
Your finished subVI should behave like this one:
At this point you should have enough experience to proceed without assistance!
Congratulations! You now have assembled and tested six subVIs that can form the basis of many other projects. Now use your subVIs to build an application VI (top-level VI) to demonstrate that your subVIs work properly together. Two applications that you can easily build are described next.
The application block diagram pictured below produces a single-track MIDI file containing an ascending chromatic sweep over the entire range of note numbers (0 to 127). Before sounding the note, the Program Number (tone or voice selection) is set to the same value as the note number. Thus, the voice changes for each note, adding additional interest to the sound. The note duration is specified by a control whose unit is milliseconds. As an exercise, you will need to complete the grayed-out area to convert the units of“duration”from milliseconds to ticks.
The application block diagram pictured below creates a MIDI file in which the same note is played repeatedly, but the velocity varies from the maximum to the minimum value in unit steps. When you play the MIDI file, you can record the soundcard’s audio output and measure its velocity profile , i.e., the mapping between the note’s velocity value and its waveform amplitude. The Audacity sound editing application works well for this purpose; choose“Wave Out Mix”as the input device to record the soundcard’s output.
Notification Switch
Would you like to follow the 'Musical signal processing with labview -- midi for synthesis and algorithm control' conversation and receive update notifications?