{"id":1636,"date":"2020-04-21T22:39:28","date_gmt":"2020-04-21T21:39:28","guid":{"rendered":"https:\/\/ofalcao.pt\/blog\/?p=1636"},"modified":"2020-04-22T19:22:05","modified_gmt":"2020-04-22T18:22:05","slug":"yoshimi-pi","status":"publish","type":"post","link":"https:\/\/ofalcao.pt\/blog\/2020\/yoshimi-pi","title":{"rendered":"Yoshimi Pi"},"content":{"rendered":"<div class=\"seriesmeta\">This post is part 4 of 6 of \u00a0<a href=\"https:\/\/ofalcao.pt\/blog\/series\/lego-ipmidi\" class=\"series-359\" title=\"LEGO ipMIDI\">LEGO ipMIDI<\/a><\/div>\n<p>To free up my laptop from the MIDI synth role I installed &#8216;multimidicast&#8217; on a Raspberry Pi 3. While testing Timidity++ and searching the net for a way to select a particular instrument in the MIDI sound bank (I want an harp) I found <a href=\"http:\/\/yoshimi.sourceforge.net\/\">Yoshimi<\/a>:<\/p>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\"><p>Yoshimi is an algorithmic MIDI software synthesizer for Linux.<\/p><\/blockquote>\n\n\n\n<p>It looks good. It can also run without GUI and even has is own command line console so I can use my Raspberry Pi in headless mode with sound through the 3.5 mm jack.<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">sudo apt-get install yoshimi<br>yoshimi -a -b 1024 -C<\/pre>\n\n\n\n<p>And we are running:<\/p>\n\n\n\n<div class=\"wp-block-group\"><div class=\"wp-block-group__inner-container is-layout-flow wp-block-group-is-layout-flow\">\n<pre class=\"wp-block-preformatted\">Yay! We're up and running :-)\nFound 710 instruments in 23 banks\nRoot 5. Bank set to 5 \"Arpeggios\"\nyoshimi&gt;<\/pre>\n<\/div><\/div>\n\n\n\n<p>After a while I found a way to select an instrument &#8211; probably not the proper way but it works:<\/p>\n\n\n\n<p>&#8216;list banks&#8217; shows available banks:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">list banks\nBanks in Root ID 5\n\/usr\/share\/yoshimi\/banks\nID 5 Arpeggios\nID 10 Bass\nID 15 Brass\nID 20 Choir_and_Voice\nID 25 Drums\nID 30 Dual\nID 35 Fantasy\nID 40 Guitar\nID 45 Misc\nID 50 Noises\nID 55 Organ\nID 60 Pads\nID 65 Plucked\nID 70 Reed_and_Wind\nID 75 Rhodes\nID 80 Splited\nID 85 Strings\nID 90 Synth\nID 95 SynthPiano\nID 100 The_Mysterious_Bank\nID 105 Will_Godfrey_Collection\nID 110 Will_Godfrey_Companion\nID 115 chip<\/pre>\n\n\n\n<p>&#8216;list intrument 110&#8217; shows all instruments in bank 110:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">Instruments in Root ID 5, Bank ID 110\n\/usr\/share\/yoshimi\/banks\/Will_Godfrey_Companion\nID 4 Muffled Bells (P)\nID 6 Tinkle Bell (A)\nID 7 Super Ethereal (A)\nID 10 Metal Sweep (A)\nID 11 Slow Steel (AS)\nID 13 Bright Metal (A)\nID 14 Metal Tines (A)\nID 16 Soft Metal (A)\nID 19 Warm Square Swell (A)\nID 21 Bubbles (A)\n...\nID 84 Cathedral Pipe Organ (P)\nID 87 Sub Choir (S)\nID 92 Wind Pipes (S)\nID 106 Harpsichord (P)\n<strong>ID 107 Cathedral Harp (A)\nID 108 Angel Harp (AS)<\/strong>\nID 110 Angel Piano (SP)\nID 112 SciFi Piano (AS)\nID 114 Space Pipes (AS)\n...<\/pre>\n\n\n\n<p>So there are two harps available. Now some voodoo from documentation:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">yoshimi&gt; set bank 110\nyoshimi&gt; s p 1 on\n@ Part 1+\nPart 1 Enable Value 1.000000\nyoshimi&gt; s pr 107\n@ Part 1+\nLoaded Cathedral Harp to Part 1<\/pre>\n\n\n\n<p>Not sure what &#8220;s p 1 on&#8221; does  &#8211; it is short for &#8220;set part 1 ON&#8221; and it is a requirement for the next command (&#8220;set program 107&#8221;).<\/p>\n\n\n\n<p>Now when I play something on the EV3 it sound like an harp.<\/p>\n\n\n\n<p>Nice!<\/p>\n\n\n\n<p>And even better: I don&#8217;t have stuck notes. At least not yet. But I did have some audio problems (the dreaded &#8220;Alsa xrun&#8221; from when I made a Ubuntu Studio DAW for my wife, aeons ago) while playing with some instruments so it is important to memorize this command:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">yoshimi&gt; st<\/pre>\n\n\n\n<p>STop everything. Panic!<\/p>\n\n\n\n<p>To be honest, the xrun&#8217;s ocurred mostly with more eccentric instruments I was testing, with more complex sounds (including reverberation, something that I found on yoshimi topics that can cause xrun&#8217;s).<\/p>\n\n\n\n<p>And even-even better: wife and kids said responsivity is much better, they can now play faster.<\/p>\n\n\n\n<p>I am almost buying a USB MIDI synth \ud83d\ude42<\/p>\n","protected":false},"excerpt":{"rendered":"<div class=\"seriesmeta\">This post is part 4  of 6 of \u00a0<a href=\"https:\/\/ofalcao.pt\/blog\/series\/lego-ipmidi\" class=\"series-359\" title=\"LEGO ipMIDI\">LEGO ipMIDI<\/a><\/div><p>To free up my laptop from the MIDI synth role I installed &#8216;multimidicast&#8217; on a Raspberry Pi 3. While testing Timidity++ and searching the net for a way to select a particular instrument in the MIDI sound bank (I want an harp) I found Yoshimi: Yoshimi is an algorithmic MIDI software synthesizer for Linux. It &hellip; <a href=\"https:\/\/ofalcao.pt\/blog\/2020\/yoshimi-pi\" class=\"more-link\">Continuar a ler<span class=\"screen-reader-text\"> &#8220;Yoshimi Pi&#8221;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":true,"jetpack_social_options":{"image_generator_settings":{"template":"highway","enabled":false},"version":2}},"categories":[1],"tags":[],"series":[359],"class_list":["post-1636","post","type-post","status-publish","format-standard","hentry","category-sem-categoria","series-lego-ipmidi"],"jetpack_publicize_connections":[],"jetpack_featured_media_url":"","jetpack_sharing_enabled":true,"jetpack_shortlink":"https:\/\/wp.me\/p2Mhyv-qo","_links":{"self":[{"href":"https:\/\/ofalcao.pt\/blog\/wp-json\/wp\/v2\/posts\/1636","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/ofalcao.pt\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/ofalcao.pt\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/ofalcao.pt\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/ofalcao.pt\/blog\/wp-json\/wp\/v2\/comments?post=1636"}],"version-history":[{"count":0,"href":"https:\/\/ofalcao.pt\/blog\/wp-json\/wp\/v2\/posts\/1636\/revisions"}],"wp:attachment":[{"href":"https:\/\/ofalcao.pt\/blog\/wp-json\/wp\/v2\/media?parent=1636"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/ofalcao.pt\/blog\/wp-json\/wp\/v2\/categories?post=1636"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/ofalcao.pt\/blog\/wp-json\/wp\/v2\/tags?post=1636"},{"taxonomy":"series","embeddable":true,"href":"https:\/\/ofalcao.pt\/blog\/wp-json\/wp\/v2\/series?post=1636"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}