{"id":127,"date":"2012-06-08T18:54:00","date_gmt":"2012-06-08T18:54:00","guid":{"rendered":"https:\/\/www.shockwave-sound.com\/blog\/2012\/06\/08\/producing-midi-music-for-mobile-phones_7\/"},"modified":"2018-03-06T12:43:14","modified_gmt":"2018-03-06T12:43:14","slug":"producing-midi-music-for-mobile-phones_7","status":"publish","type":"post","link":"https:\/\/www.shockwave-sound.com\/blog\/producing-midi-music-for-mobile-phones_7\/","title":{"rendered":"Producing MIDI music for mobile phones \/ cellphones Part 2"},"content":{"rendered":"<div dir=\"ltr\" style=\"text-align: left;\">\n<p>by Piotr Pacyna<a href=\"http:\/\/blog.shockwave-sound.com\/2012\/06\/producing-midi-music-for-mobile-phones.html\">Go back to part 1 of this article<\/a><\/p>\n<h3>6. Controllers<\/h3>\n<p>According to the most common opinion one should use only those controllers that are absolutely necessary. Well, it is true, but not quite the whole story. Yes, some old devices are unable to read anything other besides Patch Change and the Volume controller, but all those new ones give us more possibilities. So, what controllers do I use?<\/p>\n<p>Well, the top my each MIDI track looks basically the same:<\/p>\n<p><a style=\"margin-left: 1em; margin-right: 1em;\" href=\"http:\/\/1.bp.blogspot.com\/-YhgsUnxDtYk\/VXSQbHBLuaI\/AAAAAAAAAHY\/atH3IT6qITg\/s1600\/Controllers.jpg\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.shockwave-sound.com\/blog\/wp-content\/uploads\/2012\/06\/Controllers.jpg\" width=\"400\" height=\"342\" border=\"0\" \/><\/a><\/p>\n<p>Program Change \u2013 Patch number<br \/>\nController 7 &#8211; Main Volume<br \/>\nController 10 &#8211; Panning<br \/>\nController 11 &#8211; Expression<\/p>\n<p>The first two need no explanation. And when it comes to Panning\u2026 Well, I\u2019m not even sure if this controller affects the sound in any way, but I always use it. Some years ago I had the opportunity to work for one of the biggest guys in ringtone business and one of the requirements was to pan all the instruments centrally (Pan = 64). I believe there must be some secret reason behind it, but they never revealed it to me.<\/p>\n<p>And the next controller \u2013 Expression. Now, this is fun. Once I had a problem with some Motorola phones (e.g. E398) \u2013 no matter how high the Volume controller was set, the sound was quiet. Way too quiet. I had no idea how to fix it and started to fool around with the controllers and it turned out, surprise surprise, that unless you set the Expression to maximum value (127), you would have the abnormally quiet sound.<\/p>\n<p>Pitchbend. Use it deliberely and only on better devices (see section 10. to find out what I exactly mean by that). The older ones either do not support it or start behaving in an uncontrolled way. Also \u2013 keep in mind that Pitchbend messages increase the file size and the size is something that definitely matters here.<\/p>\n<p>A little tip. Remember to reset the Pitchbend right after each part. It\u2019s important to tweak diligently, as you will use this in many parts of the song. Otherwise the track will be becoming gradually more and more detuned, especially if the song will be played in a loop.<\/p>\n<p>Occasionally I play with CC 1 (Modulation) and 64 (Damper Pedal). This can lead to very interesting effects, but beware of overdoing it. Especially with the pedal effect, because it has an unrestrained appetite for polyphony. So make sure to reset it frequently thorough the song.<\/p>\n<div style=\"text-align: center;\">[<a href=\"http:\/\/www.shockwave-sound.com\/Articles\/media\/G02\/Pedal_and_vibrato.mp3\">Pedal and vibrato<\/a>]<\/div>\n<div style=\"text-align: center;\"><\/div>\n<div style=\"text-align: center;\"><i>Recording from Sony Ericsson K300i. You\u2019ll clearly hear the Pedal on the melody, but pay attention to the background pad \u2013 it\u2019s one of those bugged sounds; it\u2019s subtle, but adds a zest to a track.<\/i><\/div>\n<p>&nbsp;<\/p>\n<h3>7. Quantization, note lengths and looping<\/h3>\n<p>There is one funny thing about quantization on mobile devices. Everyone knows that they should quantize, but no one knows why. I didn\u2019t know that either and my first songs were not quantized at all &#8211; why not giving the music more human feel, I thought to myself. And yeah, the level of emotion the clients expressed was indeed very human. They were pissed at me!<\/p>\n<p>Unquantized notes tend to overlap each other and it causes troubles with the polyphony, increasing it to a ridiculously high value. Sometimes it occurs as a note stealing while sometimes the song slows down and then starts to speed up again until it reaches the original tempo. It\u2019s horrible! That\u2019s very much the case for some LG U-series and Sharp GX-series hand devices.<\/p>\n<p>For this reason it\u2019s good to shorten all the notes a bit after quantizing them. Shortening for 64th note is enough. The point is to prevent them from being \u201cglued\u201d together. I set all the drum notes to 32nd and if there are any fast parts with lots of short notes even to 64th.<\/p>\n<p>And looping. &#8220;The song does not loop properly&#8221; \u2013 this is an example of another comment that I kept on hearing from clients almost as often as swear words!<br \/>\nTo get a decent loop you should keep the outro of the song as simple as it\u2019s only possible. Avoid any instruments with long release times, such as strings, pads or cymbals. The very simple endings with, for instance, kick drum and bass work best. The easiest and most effective way to check the track looping is to take just the last few bars of the song, set it as a ringtone and see how it works.<\/p>\n<h3>8. Chorus, reverb and delay.<\/h3>\n<p>Ofcourse I don\u2019t mean the actual effects here, as unfortunately there is no DSP effects to enhance the inherently weak GM patches that are built-in in cell-phone synthesizers. You\u2019ll need a sort of workaround to achieve reverb, chorus, or delay.<\/p>\n<p>Many of our readers began their musical careers in the early 90\u2019s with tracker programs such as Noise- or ProTracker. They will probably smile with sympathy now, as we use basically the same old tricks. For instance, you can copy the melody track to a different channel and detune the two using Pitchbend to create a chorus effect. You&#8217;ll get a pretty neat chorus by tuning one of the tracks up some cents and the other down exact the same amount of cents. Expand those values a little bit if you want to have more intense chorus. Luckily you don\u2019t have to bother with mono compatibility here (in contrary to real stereo sound), so you\u2019re free to play around. Practically all patches, perhaps aside from acoustic pianos, can benefit from this technique.<\/p>\n<div class=\"separator\" style=\"clear: both; text-align: center;\"><a style=\"clear: left; float: left; margin-bottom: 1em; margin-right: 1em;\" href=\"https:\/\/www.shockwave-sound.com\/blog\/wp-content\/uploads\/2012\/06\/cellphone2.jpg\"><img decoding=\"async\" src=\"https:\/\/www.shockwave-sound.com\/blog\/wp-content\/uploads\/2012\/06\/cellphone2.jpg\" border=\"0\" \/><\/a><\/div>\n<p>If you want to have reverb you simply copy the melody line to a new channel, time-shift the second line by, say, a 32nd note and reduce the second channel&#8217;s volume to about quarter that of the original (remember to use CC#7 instead of velocity!). Experiment with 64th note for sort of short, room reverb. Repeat the whole process and increase the second channel volume for longer reverb time. Using a breathy patch like a flute or ocarina for the time-shifted channels can add the airiness typical of reverb tails. And remember the general rule, that also applies here. Reverb is best when you don\u2019t notice it when it\u2019s on, but you miss it when it\u2019s off.<\/p>\n<p>Delay can be created in quite a similar manner. Again, copy the original track to a blank channel. Then time-shift the second line by a quarter note, eighth note or triplets and reduce the second channel&#8217;s volume to taste. If you want to increase the \u201cfeedback\u201d of the delay, simply repeat this process multiple times. You can use the same patch for all delayed copies, but it\u2019s more interesting to take a different one and try to emulate Low Cut or High Cut filtering.<\/p>\n<p>[<a href=\"http:\/\/www.shockwave-sound.com\/Articles\/media\/G02\/Reverb_delay_and_chorus.mp3\">Reverb_delay_and_chorus.mp3<\/a>]<br \/>\n<i><br \/>\n<\/i><br \/>\n<i>Recording from Nokia 6300.<\/i><br \/>\n00:00 &#8211; the melody with no effects,<br \/>\n00:17 &#8211; chorus effect,<br \/>\n00:34 &#8211; reverb and delays.<\/p>\n<h3>9. Useful tools.<\/h3>\n<p>There are many tools for mobile music producers. I will describe only my favorites, without which I can not imagine my work.<\/p>\n<h4>Beatnik (commercial)<\/h4>\n<p>I\u2019ve already mentioned it in section 1 of this article, when I was writing about the realtime polyphony. I use it mostly for editing the SP-MIDI (Scalable Polyphony) information &#8211; I believe that anyone who even had a brush with ringtone production knows that format. The subject is vast, complicated and far beyond the scope of this article. But if there is a demand for it, I\u2019ll consider writing another text devoted to that matter. With Beatnik we also have an access to LED and vibrator and we can use, for instance, kick drum or bass notes to control the vibrating motor of the device. You can easily make an illusion of bass that blows the pants off! One interesting tip. I always put the basic instruments on the same channels &#8211; bass on channel 2, melody on 4 and the main background on channel 3. When we know on what channels are the key instruments, we can set the SP-Midi priorities much faster.<\/p>\n<h4>ATS-MA2 (freeware)<\/h4>\n<p>Simple, very useful program to convert MIDI files to SMAF MA-2 (MMF extension).<br \/>\nPreparing a MIDI to convert and the nuances of the SMAF format itself is another broad topic that could be expanded in the future article.<\/p>\n<h4>ATS-SMAFPhraseL1 (freeware)<\/h4>\n<p>A small app to convert MIDI files to 4-channel SMAF Phrase (SPF extension). Making a 16- channel MIDI file to sound good with only 4-channel is a challenge\u2026 One might say what\u2019s so complicated about it? Just scoop out the essential channels, right? Haha, no! And it\u2019s like walking on a tightrope, really. Another subject that should be given more attention.<\/p>\n<h4>PSM Player (freeware)<\/h4>\n<p>Very nice tool that I use mainly for global volume changing. It saves a lot of time while making different volume versions that I\u2019ve described in section 5. Thanks to PSM Player I don\u2019t have to dabble with editing every channel of every MIDI file, but just go to Setting -&gt; Volume -&gt; Volume and set it for, say, 50%. And voila, that\u2019s all!<\/p>\n<p>&nbsp;<\/p>\n<div class=\"separator\" style=\"clear: both; text-align: center;\"><a style=\"margin-left: 1em; margin-right: 1em;\" href=\"http:\/\/4.bp.blogspot.com\/-DkOUpzFHMkE\/VXSQbHxqMQI\/AAAAAAAAAHM\/PGFB9LRvKEk\/s1600\/PSM.jpg\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.shockwave-sound.com\/blog\/wp-content\/uploads\/2012\/06\/PSM.jpg\" width=\"325\" height=\"400\" border=\"0\" \/><\/a><\/div>\n<p>&nbsp;<\/p>\n<h4>XM 2 MIDI (commercial)<\/h4>\n<p>A great program to convert XM (Fasttracker) modules to MIDI. If making a tracker module from scratch is easier for you than making a MIDI file, this little tool is an absolute must! Of course you need to put some extra work into such a converted MIDI, but all in all it\u2019s an amazing utility.<br \/>\nAlcatel Multimedia Conversion Studio (freeware)<\/p>\n<p>This one has many options, but amongst others allows one to convert MIDI files to a very rare Alcatel format called SEQ (MSEQ extension). Although I produce SEQ files occasionally, I use AMCS on a regular basis. Why? Well, for me it plays a similar role as Avantone Mix Cubes do in the real music world; every little mistake gets magnified and amplified. The old Alcatel devices, for which AMCS was designed, offered an extremely limited selection of patches and poor polyphony. I believe that if something sounds good there, it will sound good everywhere. Even on washing machines.<\/p>\n<div style=\"text-align: center;\">[<a href=\"http:\/\/www.shockwave-sound.com\/Articles\/media\/G02\/AMCS.mp3\">AMCS &#8211; Alcatel Multimedia Conversion Studio.mp3<\/a>]<\/div>\n<div style=\"text-align: center;\"><\/div>\n<h3>10. Real hardware testing.<\/h3>\n<div class=\"separator\" style=\"clear: both; text-align: center;\"><a style=\"clear: left; float: left; margin-bottom: 1em; margin-right: 1em;\" href=\"https:\/\/www.shockwave-sound.com\/blog\/wp-content\/uploads\/2012\/06\/cellphones.jpg\"><img decoding=\"async\" src=\"https:\/\/www.shockwave-sound.com\/blog\/wp-content\/uploads\/2012\/06\/cellphones.jpg\" border=\"0\" \/><\/a><\/div>\n<p>And the last point, which I believe is the most important of all. Testing the files on real devices is crucial and absolutely necessary, as emulators are far too often unreliable. Therefore, my suggestion is to get a list of currently popular phones and buy them &#8211; it will be an investment that quickly pays for itself. Of course you don\u2019t need to have them all. I keep having just 10-15 of the most popular at the moment. Furthermore, all major companies employ QA Testers, who are checking every game on hundreds of devices with the patience of a Benedictine monks, and if there is a problem with the sound somewhere, they immediately get to you. They send you over a recording of problematic portion of the song and you have to figure out what&#8217;s wrong. Usually the things get fixed fairly quickly. But it happened once or twice that I couldn\u2019t help, time was running out and we ended up having a game without the sound on this particular phone.<\/p>\n<p>I deliver each polyphonic composition in the following formats:<\/p>\n<h4>SP-Midi<\/h4>\n<p>It is most important, the most extensive format designed for the best phones. This is where I allow myself to go a little bit crazy with reverb and delay, use additional percussion instruments or go low with the bass. In short \u2013 here I do everything that I\u2019ve described as &#8220;used only on better phones.&#8221;<\/p>\n<h4>Alcatel + LG + Sagem<\/h4>\n<p>Prepared for the oldest, weakest mobile phones and also used in case of memory problems on all others. Features:<\/p>\n<ul style=\"text-align: left;\">\n<li>Files are significantly smaller in size than SP-Midi,<\/li>\n<li>Less than 16 voices polyphony<\/li>\n<li>Only the absolute basic instruments<\/li>\n<li>Only the most necessary controllers<\/li>\n<li>Drum part is simplified right down to its essentials, less instruments compared to SP-MIDI<\/li>\n<li>Chorus, reverb and delay are absolute no-no\u2019s<\/li>\n<li>A tempo rate rounded to the nearest value and no tempo changes during the song<\/li>\n<li>No patch changes on the track \u2013 only one instrument on each channel.<\/li>\n<li>Sony Ericsson<\/li>\n<\/ul>\n<p>Sometimes people ask me what is my favourite mobile phone sound-wise. I\u2019m not sure. But if I was pushed into a corner I guess I would have to say it\u2019s Sony Ericsson. Sometimes I get carried away by its sound. MIDI files need some tweaking before they will sound good on these phones, though.<\/p>\n<h4>Siemens<\/h4>\n<p>MIDI files designed for best possible playback on Siemens phones. They are sort of beast to bridle&#8230;<\/p>\n<h4>MMF<\/h4>\n<p>SMAF MA-2 files.<\/p>\n<h4>SPF<\/h4>\n<p>4-voice SMAF Phrase files.<\/p>\n<h4>OTT<\/h4>\n<p>Monophonic (1-voice) files for the old Nokia series 30 phones. This article deals only with the polyphonic music, so I\u2019ve decided not to get into 1-channel music production. Especially that it\u2019s almost as complicated as polyphony stuff!<\/p>\n<h4>Closing words<\/h4>\n<p>Rob Hubbard, the famous C64 composer, once said, that music programming in assembler code was like writing music with boxer gloves on, with two hands tight behind your back, trying to use your big toe. I think something similar can be said about making music on the cell phones. In both cases there are plenty of restrictions and we have no choice but to be creative. But hey, being creative is always a joy!<\/p>\n<p>I hope this article will help you to save some time and will be a starting point for making your own discoveries. Because there&#8217;s still a lot to discover. And I absolutely do not consider myself an all-knowing expert on the subject; phones surprise me all the time and I constantly learn something new. Besides that, remember there are still new models being released and it means exciting new opportunities on the one hand and the problems and bugs on the other. Watch this space!<\/p>\n<p><a name=\"more\"><\/a><\/p>\n<div class=\"separator\" style=\"clear: both; text-align: center;\"><a style=\"clear: left; float: left; margin-bottom: 1em; margin-right: 1em;\" href=\"https:\/\/www.shockwave-sound.com\/blog\/wp-content\/uploads\/2012\/06\/author_piotr_pacyna.jpg\"><img decoding=\"async\" src=\"https:\/\/www.shockwave-sound.com\/blog\/wp-content\/uploads\/2012\/06\/author_piotr_pacyna.jpg\" border=\"0\" \/><\/a><\/div>\n<p><b>About the author:<\/b> Piotr &#8220;JazzCat&#8221; Pacyna is a<br \/>\nPoland based producer, who specializes in video game sound effects and<br \/>\nmusic. He has scored a number of Java games for mobile phones and, most<br \/>\nrecently, iPhone\/iPad platforms. You can license some of his tracks <a href=\"http:\/\/www.shockwave-sound.com\/composer\/list\/178.html\">here<\/a>.<\/p>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>by Piotr PacynaGo back to part 1 of this article 6. Controllers According to the most common opinion one should use only those controllers that are absolutely necessary. Well, it is true, but not quite the whole story. Yes, some old devices are unable to read anything other besides Patch Change and the Volume controller, [&hellip;]<\/p>\n","protected":false},"author":8,"featured_media":663,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[1],"tags":[75,41,72],"class_list":["post-127","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-shockwave-sound","tag-author-piotr-pacyna","tag-composing-music","tag-video-game-music"],"acf":[],"_links":{"self":[{"href":"https:\/\/www.shockwave-sound.com\/blog\/wp-json\/wp\/v2\/posts\/127","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.shockwave-sound.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.shockwave-sound.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.shockwave-sound.com\/blog\/wp-json\/wp\/v2\/users\/8"}],"replies":[{"embeddable":true,"href":"https:\/\/www.shockwave-sound.com\/blog\/wp-json\/wp\/v2\/comments?post=127"}],"version-history":[{"count":3,"href":"https:\/\/www.shockwave-sound.com\/blog\/wp-json\/wp\/v2\/posts\/127\/revisions"}],"predecessor-version":[{"id":1511,"href":"https:\/\/www.shockwave-sound.com\/blog\/wp-json\/wp\/v2\/posts\/127\/revisions\/1511"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.shockwave-sound.com\/blog\/wp-json\/wp\/v2\/media\/663"}],"wp:attachment":[{"href":"https:\/\/www.shockwave-sound.com\/blog\/wp-json\/wp\/v2\/media?parent=127"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.shockwave-sound.com\/blog\/wp-json\/wp\/v2\/categories?post=127"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.shockwave-sound.com\/blog\/wp-json\/wp\/v2\/tags?post=127"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}