HTML5 GUIs for Android Csound6: A Tutorial in 14 Examples Art Hunkins abhunkin@uncg.edu http://www.arthunkins.com 3/26/2016 Revised 4/7/2020 In June 2015, Michael Gogins introduced a version of Csound6 for Android[1] that included HTML5, a development that permitted Csound to include its own performance GUI. Shortly thereafter, he followed with a tutorial chapter in the Csound FLOSS manual[2], detailing this new facility, and documenting it with 5 examples[3]. This article is based on Michael's excellent introductory tutorial, and is meant to supplement it.[4] The value of HTML5's inclusion in Android Csound, for both portability and live performance, is clear.[5] It is now possible to perform live anywhere, with only an Android device and a set of headphones. No electricity, no MIDI or other controller, no cords. The only software is one of the free Csound apps and your .csd file. The sole dedicated expense is the Android device; and your performance interface is customized to your individual composition. (No more limitation to 5 generic sliders and buttons.) These benefits accrue to performer as well as composer; there is no need (or expense) for anything other than a low-cost Android device for any musician to perform your piece. The only current proviso is that the Android OS must be at least 5.0. This article, along with its accompanying examples, is a kind of "tutorial for the rest of us" - one designed for the more conventional Csounder. The amount of required HTML - and JavaScript, and CSS (style sheets) - is formidable, and necessitates a lot of additional code. The examples attempt to simplify and standardize to the degree possible, eliminating all bells and whistles.[6] Thankfully, many segments of this code, can be copy/pasted directly into user .csd's. (This is particularly relevant to our first example.) My goals for this tutorial were: 1) to transfer .csd code from original "canonical" Android Csound directly into HTML5 GUIs with little or no change to the original; 2) to offer simple and functional HTML design, while basically mirroring the "canonical" GUI; 3) to be detailed and specific in GUI code, illustrating differing numbers/collections of widgets; 4) to use the full screen of the Android device, or most of it, for maximum "playability." - which in turn entails, importantly, 5) to auto-scale to device size. This last criterion turned out to be the most challenging. Another difficult task was to come up with workable trackpad code. Michael had good examples of both slider and button code in his introductory tutorial, but had not implemented an HTML trackpad. Addressing both the auto-scaling and trackpad challenges, my son Dave Hunkins (www.zatchu.com), an experienced Android programmer, came to the rescue. (I am indebted to his extensive help on these and related technical coding issues.) His solutions are incorporated in the script found at the end of each tutorial example.[7] Csound for Android with HTML5 GUI option requires Android OS 5.0+, and is not available for earlier versions of the OS. It is downloadable (free) from: https://play.google.com/store/apps/details?id=com.csounds.Csound6 . GENERAL REMARKS ABOUT THESE GUIs 1) Android devices have many screen sizes, and HTML GUIs need to adjust for vertical size in particular. This can be done even on an individual device basis, if desired. The code to edit is at the very beginning of the