Software MIDI for games
Pages: 1 2
Edward Kearney (2033) 13 posts |
Hi, Is there a software MIDI synth for RISC OS that will play back MIDI used in games without any extra hardware? I am looking for something that works on the Pi. I have tried searching for someone asking a similar question in vain. !ReMIDI will play back MIDI files, but doesn’t seem to work as a synth for other programs. It looks like ESP MIDI Synthesiser might be what I want… (also same/similar software from r-comp) Any ideas? |
Jean-Michel BRUCK (3009) 359 posts |
Bonjour, This is a question I’ve been asking myself for some times, because people don’t necessarily have a MIDI expander, although it works very well with Rick Murray’s MIDI module. According to Alan Gibson (Liquid Silicon): Indeed I obtained through Richard Hallas the authorization of Oliver Linton,Rhapsody creator who still owns the copyright to Rhapsody 4 (not APDL), to publish the version of !Rhapsody4 which works on my ARMX6. Thanks to Oliver. And it would be a shame to settle for the 8 voices available with the internal sound, although this is not a problem with a MIDI expander. I think this would be good news for music lovers… |
Colin Ferris (399) 1814 posts |
Duplicate! |
Colin Ferris (399) 1814 posts |
Had a go ’Years? ’ to 32bit Midi – so seeing that the sources are available now seems good. Since it was I think -written in Assembler – Needing Beans and proper Tea & cat food might be persuaded to have a look :-) |
Rick Murray (539) 13840 posts |
Does this include MelIDI? I’ve been after making a 32 bit version for about a decade now… As for the sources people may or may not have, for the love of <Deity$Name>, release them. We’re not getting any younger, and what’s available elsewhere is so far in advance of what’s available here that sitting on sources of useful things really ought to be thought of as an act of self harm (we could call it The Brexit Principle). Oh, and you might notice I’ve not done anything much with MIDI in years. That’s because what I do, I do on a PC these days. I tried to sort out something to work with MIDI on RISC OS, but I guess it wasn’t to be.
How about “just have a repository for odds and ends” and see if anybody takes an interest. If it goes, it goes. If it doesn’t, nothing lost.
I think for that we’d need something akin to a vastly souped up RDSP that can handle playing polyphonic samples on “up to sixteen” channels … not to mention variations such as tremolo, sustain, etc and something like 200-odd instruments in standard GM (never mind extensions such as XR). This sort of thing “is easy” for a $10 chip, but to think about how to implement it in software? Oh my god… We have lots of processing power these days. We might need it. ;) |
Cameron Cawley (3514) 157 posts |
As far as I know, the main thing that was made open-source from this was the !Player application which got added to the Bonus Binaries last year, alongside the SamplePlayer and MIDIPlay modules that it uses for playback. The core interface module and the software synthesizer aren’t open-source yet, but they’re both listed in the ModuleDB file in the sources, so presumably ROOL does have them but either hasn’t had time to update and release them or the sources are still tied up in legal red tape of some sort. It would definitely be worth getting these released though, even if it’s 26-bit only to start with, since there’s not as much that can be done with MIDI on RISC OS without them. I did do a 32-bit conversion of HBP10GM a while ago when testing the MIDI output in ScummVM, so if it helps I can share an updated version of that here. The soundfont supplied with it is a bit bare-bones though, and it doesn’t implement all of the SWIs correctly, but for basic stuff it should work fine. |
Paolo Fabio Zaino (28) 1882 posts |
@ Eduard Kearney Not specifically in what you’re seeking for, but (as usual in the RISC OS world) there are bits of it in multiple places. Amgoc is working on a Virtual DSP library that can be used from BBC BASIC too and he said he wanted to integrate it with MIDI support: http://www.amcog.co.uk/rdsp.htm There are the usual players you’ve mentioned that, however, as you said well, do not work as MIDI Modules and plugins for other software, however, few of them could work with a framework called MIDISupp (or MIDI Support) which is part of the ESP family of software and that was meant to combine together MIDI software and MIDI drivers offering also a relatively easy to use interface for the user/musician. I use it a lot on older RISC OS systems to make music. Then there is Rick’s and Dave MIDI USB which can be used with the various Raspberry Pi synth projects, here is an example: https://www.raspberrypi.com/news/virtual-analogue-synthesiser/ This last use is particularly cheap and useful and doesn’t create extra load on the single core used by RISC OS, but this is not an issue these days. @ Cameron For what I know about the state of the Liquid Silicon/ESP code, I think ROOL has put an initial effort on cleaning up and working on some player that you’ve listed. I am quite busy on other stuff at the moment, but I did start to lay down some idea for a new (rewritten from scratch and in C) MIDI Support framework that I really want to have on RO 5, but no idea when I’ll have time to go back to it and finish it into a regular and open source product. @ Rick
This! Very, very, veryyy much this, thanks for remarking it and please continue. I don’t know in which language to say it, keeping the sources of RISC OS stuff in the hope of a market, or I do not know what, is ONLY killing the fun and RO. So, please stop this, we are all aging here and since last Hacktober fest I have seen that even some folks that may be interested to play with RISC OS have no idea how to code on it or the learning curve is too stiff for modern days (where everything is on Youtube etc.). :( Sorry for the off-topic appeal. |
Rick Murray (539) 13840 posts |
More off topicness . . . Liz Upton’s comment on that page is absolutely made of win. |
Clive Semmens (2335) 3276 posts |
Very Big ROFL… http://clive.semmens.org.uk/Opinion/Ize.html – note the second footnote especially. Liz Upton is of course right that language changes, and I think she’s younger than me. |
Edward Kearney (2033) 13 posts |
Thanks a lot everyone, for both the on and off-topic stuff :) Cameron, I would certainly appreciate you sharing your 32-bit conversion of HBP10GM – it sounds great for my needs at the moment (just testing and fiddling with stuff). Paolo, I may play around with using another Pi as a synth in the future, but at the moment I am focusing on portability (I am using a Lapdock). As for ESP MIDI, the product I linked says it is 32-bit compatible… is it the case that MIDISupport is 32-bit and the Synth is 26-bit, as you say Jean-Michel? |
Paolo Fabio Zaino (28) 1882 posts |
@ Edward
I tested MIDISupport on multiple platforms, in all honesty I don’t think it’s 32bit. I crashes also on the Iyonix. As far as I can tell (but I do not want to sound judgmental!) I think Liquid Silicon has introduced bugs and/or mistakes when they tried to 32bit MIDISupport. Also, as a side note, let’s remember that just saying 32bit in RISC OS land means quite a few bits (pun intended!). So, to be precise, the ESP 32bit stuff is only in reference to the Iyonix, not the Raspberry Pi. So, if you want to try it out, you probably want to try it on a Raspberry Pi 1 in compatibility mode, which (AFAIK) is the closest to an Iyonix there is. It won’t work on a Pi 2, 3 or 4. Others may have more details btw. |
Cameron Cawley (3514) 157 posts |
OK, here you go: https://ccawley2011.github.io/software/HBP10GM_32bit.zip |
André Timmermans (100) 655 posts |
I was going to point out a Midi Synth library (pure synthesis, not sound fonts) written by Peter Everett with front-ends for Windows, Linux and RISC OS, but the site is not responding. I will try to reach Peter. |
Jean-Michel BRUCK (3009) 359 posts |
Hi, Question: Can we make ESP applications available, knowing that now it’s ROOL who owns it? |
Edward Kearney (2033) 13 posts |
Thanks Cameron, I’ll give that a go later. @Paolo @Jean-Michel |
Paolo Fabio Zaino (28) 1882 posts |
@ Jean-Michael
I did some debug and, IIRC, the problem seemed to be related to how MIDISupport 32bit tries to initialize its own drivers, which to me sounds clearly like some bug or mistake of some sort. In my case I also debugged with MIDIMax II (supposedly 32bit) on an Iyonix using the Podule expansion slot and MIDI Support would crash anyway. I am 200% sure ROOL can fix that, or they could publish the sources and we could help.
Me too, I really wish to have USBMIDI support in MIDI Support. I had a look at it, but again it seems that MIDI Support does something wrong when trying to initialize a driver on a 32bit platform, I have all the cards listed by MIDI Support and all the MIDI Support drivers and when tested (IIRC) MIDI Support always appeared to be crashing, at least on my Iyonix, so maybe also an adaptation of USBMIDI may have issues in MIDI Support at the moment. |
Rick Murray (539) 13840 posts |
<stir> Now, with the sources… </stir> ;) |
Rick Murray (539) 13840 posts |
No use pontificating without participating, eh? So I have used this to kick myself into finally putting together a latest version of the USB MIDI module, and placing it somewhere. I’d been putting it off because I’d need to diff the releases in order to see what had been changed (a lot!). I wrote the base module, Dave Higton added some nice stuff, namely:
There are other things to do (for example the module can receive and act upon ActiveSense but it doesn’t transmit), however this ought to provide a pretty decent emulation of the original Acorn MIDI module insofar as talking to actual devices is concerned. I phrase it like that because I only use Maestro to play music… The module with outdated docs, and sources for the adventurous, may be found at: |
André Timmermans (100) 655 posts |
Peter Everett’s MidiPlay You might need to change the “RMEnsure MIDI 0.05 RMLoad System:Modules.MIDI” into “RMEnsure MIDI 0.05 X RMLoad System:Modules.MIDI” in the Run. The sources are included within the application. |
Paolo Fabio Zaino (28) 1882 posts |
@ Rick
Boom!! Thanks a lot for that, USBMIDI is a vital module for me on RO, so thanks a lot. Would it be ok to host it (at least as a mirror) on GitHub? So, whoever is interested becomes at least a backup of it just by clonig it and then changes get tracked properly. Just an idea. |
Rick Murray (539) 13840 posts |
Yeah… GitHub… Gone a bit south since you-know-who bought it. |
Jean-Michel BRUCK (3009) 359 posts |
Bonjour à tous, @Rick I’m waiting for the surprise and I hope everyone will enjoy it. |
Paolo Fabio Zaino (28) 1882 posts |
I am sorry Rick, not sure I understand if yours was a yes or a no :( If you’re afraid of GitHub cookies, just use something like Firefox Containers: If you’re worried about accounts taken down under a government request, then, well, I hope you have your own websites in Switzerland (or on a server in an international waters area) and not at your name/address/local isp and ensure you use proton emails (or similar) for them, because otherwise any government where your server is located (unless stated by a local law) can ask you to suspend accounts that are used for what such gov may consider illecit activities: https://ec.europa.eu/commission/presscorner/detail/en/QANDA_20_2348 But what all of this has to do with RISC OS and a completely armless USB MIDI module? Am I missing something? Are you mining cryptocurrency on my RPi while I am happly making music? XD Also we may want to move this discussion in another thread maybe? |
Rick Murray (539) 13840 posts |
There’s effectively no change from version 0.06 (Dave’s), most of what I did was checking that it built (on my old Pi1 no less) and recording the changes. So if you have Dave’s version, it’s pretty much the same thing. @ Paolo – moved to Aldershot. ;) |
Jean-Michel BRUCK (3009) 359 posts |
Thank you, Rick for these clarifications, this version works very well and the fact that you made it open source will allow it to evolve if necessary. |
Pages: 1 2