Vstrack Report FINAL 2
Total Page:16
File Type:pdf, Size:1020Kb
chapter 3 concept "To add new editing functionality or a new type of display, for example, it should be easy to incorporate that new module into the system without the need to recompile the system." – R.S. Rubinstein [52] (on the requirements of modern sequencers) In the last chapter, as well as introducing their underlying technologies, we established the principal advantages and disadvantages of both tracking and sequencing. In our comparisons, it has been shown that often the advantages of one approach are mirrored in the disadvantages of the other. For example, an advantage of sequencing is the resolution afforded by MIDI, whilst its lack thereof constitutes a significant shortfall in tracking. This prompts an important observation: trackers and sequencers can be seen as two pieces of the same jigsaw puzzle. The trouble is that developers, until recently, have taken to making music software with four straight edges. Current trends, however, are taking the client / server analogy of networking and distributed work into the realm of the single application, albeit under the guise of either child / parent or plug-in / host abstractions – endeavours that often 33 explicitly refer to their own jigsaw analogies . VSTrack, In VSTrack, we wish to construct a jigsaw with sequencer and tracker pieces. a VST plug-in To this end, we require a sequencer piece with at least one ‘open’ edge – a sequencer that is a plug-in host – into which we can slot (viz. plug) our own tracker piece. As mentioned in the last section, VST hosts [60] such as Steinberg Cubase SX meet this criteria, and thus form the basis for our project; VSTrack will be a tracker that operates as a VST plug-in. We shall explore the finer details of the chosen architecture and its design implications, in section 4.1.1. Modern sequencers, as discussed, already present more than one piece of the jigsaw – in addition to one MIDI sequencer piece they have integrated one multi- tracking audio recorder piece (see fig.3.1). If we look at the relationship between these two competences in the application as a whole, we see that they are in many ways mutually exclusive. For example, the score editor, piano roll, event list, etc. all stand apart from any audio editing. Indeed, the only real integration of the two comes in the form of the arrange window. This makes sense, since the arrange window, in controlling the song, must have control over all aspects in the work, including both audio and MIDI sequencing. The distinction is then made, 33 A commonly recognised use of the jigsaw analogy is that in the former Microsoft Office logo, which represents each Office component (Word, Excel, Access and Powerpoint) as a different coloured piece of a four-part jigsaw. Indeed, a similar and possibly more apt use of jigsaw imagery was also employed for previous versions of Microsoft’s Visual Studio integrated developer environment – that we use in our implementation. Chris Nash VSTrack: Tracking Software for VST Hosts Page 80 within the arrange window, by giving each competence a distinct and discrete track – audio tracks and MIDI tracks. The net result is that, aside from in the arrange window, our hybrid is largely uncompromising. fig.3.1 – VSTrack as a VST plug-in34 S n i o - f g t - u l S p a VST m b r p Host e l v e e r R VSTrack VSTrack identifies itself to the host as a VST Instrument (or VSTi), which essentially functions similarly to a MIDI track – albeit one where the logical (MIDI) output is sent to an internal plug-in, rather than an external hardware synthesiser. Consequently, an audio input is then fed back to the host from the respective plug-in or synthesiser, and manifests itself as a normal audio track. It is important to note that the principle input to VSTrack will not be this normal MIDI input from the host. Instead, it is the plug-in itself that defines how VSTrack’s internal sampler should perform, through the user’s manipulation of the plug-in’s editor window (i.e. the tracker’s own pattern editor); VSTrack ‘sequences’ itself. By this method, we are able to exploit the plug-in’s computer keyboard support in order to use the computer itself to provide the musical input. VSTrack therefore has command of the complete musical process, yielding audio entirely determined by its own user interaction and its own algorithms. Thus, like the audio / MIDI hybrid, VSTrack exists apart, without direct interference from the sequencer’s MIDI and audio capabilities. As such, we are not significantly constrained in our implementation and can almost unreservedly inherit all the features of trackers that give them their respective advantages, whilst retaining those already present in the sequencer host.35 34 It is worth noting that this schematic also suggests the possibility of connecting two VST hosts together – a possibility enabled by Steinberg’s VST System Link architecture. 35 As we shall see, in Chapter 4, there are some limitations with the VST architecture that do force us to subtract from the average tracker’s full feature set. Chris Nash VSTrack: Tracking Software for VST Hosts Page 81 about this chapter In the following sections, we will first explore the potential advantages and even solutions offered by a tracker plug-in such as VSTrack, before outlining the scope of our own endeavour. Trackers have the ability to cover all stages in music realisation, from inspiration to audio CD-ready realisation; the potential scope for a tracker plug-in is thus extensive, and requires us to carefully define our goals in this initial offering. However, aside from these practical considerations, we also take the opportunity to explore the theoretically practical – such as developments, improvements and features that will not be implemented in this project, but are nonetheless possibilities afforded us in the future36. 3.1 application There are many benefits to this hypothetical hybrid and, in many ways, “the whole is greater than the sum of its parts” – the musician is afforded opportunities that they would otherwise have foregone, had they been restricted to a single approach. In the next few sections, we expound upon these rewards by focusing on the individual communities and aspects of musical production that would be effected. bringing together However, let us first make one observation that affects all communities and technologies and communities areas. As was made clear in the previous chapter, the groups and individuals involved in tracking and sequencing, respectively, are from differing backgrounds. We have charted the tracker community’s history, and noted its close links and common heritage with computer programmers (in some cases, ‘hackers’) – perhaps likening the use of early trackers to the ‘programming’ of music. Contrastingly, we have explored the sequencer community’s history, and noted its comparatively closer ties to not only musicians, but also the music industry at large. It is thus fair to conclude that the successful union of trackers and sequencers might not only offer more technical opportunities to each party (as we discuss in the coming sections), but also social and synergetic opportunities. Former tracking musicians will be encouraged to learn sequencing methods, but will subsequently approach them from a more technical standpoint than the average sequencer user, or musician. Former sequencer musicians will also have the opportunity to learn tracking methods and, in so doing, may instead engender a more artistic approach than the average tracker user. Of course, the final corner of the trinity, is the situation where the tracking artist and the sequencing artist work together as a team. In this latter case, each party’s respective technical and musical competences would potentially benefit their counterpart’s command of even their own area. 36 It is intended that VSTrack’s development will continue beyond the realms of this report and thesis. Chris Nash VSTrack: Tracking Software for VST Hosts Page 82 It is important to note, however, that the congruity between tracking and technical proficiency may derive from the complexity and technical demands of the traditional tracker interface. In this endeavour, it is hoped that our exploration of human-computer interaction (HCI), in Chapter 2, will help us to allay such problems. A successful hybrid will require its tracker interface to be not only easy- to-use, but also easy-to-learn. 3.1.1 benefits for tracking musicians Although the VSTrack concept promises tracking musicians full access to the host sequencer, it is important to note that it has not been impossible (nor unprecedented) for musicians to combine the benefits of tracking and sequencing in the past. The process involved rendering the final output of the tracker to an audio file, then importing the audio file as an audio track into the sequencer. In a hybrid such as VSTrack, the tracker exists as an audio track. There is no rendering stage necessary – nor any cumbersome audio file importing. Simply, the VST host is played back and, at any stage, VSTrack supplies its own output in synchrony – for example, play the host from the third beat of the eighth bar and VSTrack will work out that it must start its playback at the twelfth row of the third pattern. Indeed, VSTrack is able to draw upon the facilities of the VST host architecture to not only synchronise on the level of musical or MIDI entities (beats, bars, measures, etc.), but also on the level of the sample; VSTrack is sample accurate. In typical scenarios, this means that VSTrack is accurate to at least one 44,100th of a second – even if the musician can’t yet track at this resolution.