Search Unity

  1. Megacity Metro Demo now available. Download now.
    Dismiss Notice
  2. Unity support for visionOS is now available. Learn more in our blog post.
    Dismiss Notice

Maestro Midi Player Tool Kit - Good news for your rhythm game !

Discussion in 'Made With Unity' started by BachmannT, Apr 14, 2018.

  1. BachmannT

    BachmannT

    Joined:
    Nov 20, 2016
    Posts:
    385
    Hi
    The issue has been found. But I can't publish a new version now, I need to make serious test before and I'm going in holidays.
    In the meantime, you could correct directly in the SF generated.
    1. Open this folder Assets\MidiPlayer\Resources\SoundfontsDB\GeneralUser_GS_SoftSynth_v144, and edit file GeneralUser_GS_SoftSynth_v144.txt
    2. Search for <Patch>65</Patch>
    3. Into this patch, search for each <ImSample> and set <IsLoop>false</IsLoop> to <IsLoop>true</IsLoop>. You may find 13 ImSample for this patch.
    Thank a lot for your very well documented problem. It's pleasant and more efficient for me.
    I apologize for this issue, a corrected MPTK will be available soon.

    BR
    Thierry
     
    Last edited: Nov 8, 2018
  2. BitsplashIO

    BitsplashIO

    Joined:
    Dec 9, 2016
    Posts:
    254
    Hello. Would like to ask which platforms are supported with this plugin. Mobile / html5/pc/smart tvs are of importance. Does it use native plugins ? or is it all C# code.

    Thanks.
     
  3. BachmannT

    BachmannT

    Joined:
    Nov 20, 2016
    Posts:
    385
    Hello
    No native plugins.
    All the C# code is available with the package.
    Soundfont and Midi reader are based on NAudio.
    Synth component is based on Unity AudioSource.
    Tested only on desktop Windows. But some users use MPTK on Android.

    The good approach could be to check with the free version, if you have issue I could help you.

    BR
    Thierry
     
  4. BachmannT

    BachmannT

    Joined:
    Nov 20, 2016
    Posts:
    385
    Hello
    The version 1.95 is available with a correction on the Loop wave attributes which have affected some presets. Thank to rn9dfj3 for the detailed case published!
    Some news on the version 2: a new format of the soundfont will be available with a good enhancement on the time to load. But there is a lot of work to finish ;-)
    Best regards
     
    Last edited: Nov 21, 2018
  5. MattiHietanen

    MattiHietanen

    Joined:
    Nov 24, 2018
    Posts:
    15
    This is real cool stuff.
    Do you think that would be possible to receive Midi events from the midi driver in Unity and send back?

    Another interesting solution would be to have independent play notes timing with high precision timer. Perhaps first on Windows.

    The problem with playing notes is to wait exactly for the next time to play a note. It's possible with Time or Stopwatch, but if you do in an Wait Until ( Time > nextTime) you cook the cpu. :)

    Any idea how that can be done?
     
    Last edited: Nov 25, 2018
  6. BachmannT

    BachmannT

    Joined:
    Nov 20, 2016
    Posts:
    385
    hello
    There is no midi driver in Unity ;-) it's why I have build MPTK. Or you have to use dedicated framework for each platform. Not useful!
    With MPTK, midi is read every 10 ms to check if there is some available notes to play.. This much less than the capacity of perception of our brain between two notes : 25 ms ... and the CPU is not cook! Of course, the read is done in a CoRoutine to let Unity make others jobs. Have a look to the code in MidiPlayer.cs function ThreadPlay.
    BR
    Thierry
     
  7. MattiHietanen

    MattiHietanen

    Joined:
    Nov 24, 2018
    Posts:
    15
    Did you measure the time in update and and call the CoRoutine?
    Thank you.
     
  8. BachmannT

    BachmannT

    Joined:
    Nov 20, 2016
    Posts:
    385
    Not sure to well understand your question. But I try: the update is not use by MPTK, only coroutine is used to play music. The time spend in coroutine depends on the lengh of the note of course, the CPU load is quite low. Have a look to the code of the free version !
    BR
    Thierry
     
  9. otomus

    otomus

    Joined:
    Nov 30, 2018
    Posts:
    1
    Hello
    I was impressed with this tool kit! Thank you for your effort.
    I am examining to purchase pro version. Does MidiFileWriter need original Midi File?
    I am developing simple musical composition game. I would like to create Midi File only from my code. Does pro version support it?
     
    wetcircuit likes this.
  10. BachmannT

    BachmannT

    Joined:
    Nov 20, 2016
    Posts:
    385
    Hello otomus
    Yes ! MPTK can write standard midi file from new. See below test code available in Pro version with the TestMidiWriter scene.
    There is a piano keyboard and a very simple sequencer use to check the API. When you click on key (as Unity button), note+velocity+duration are stored in a sequence. PatchChange are also process. Then the sequence is writed as a midi file.

    BR
    Thierry

    Code (CSharp):
    1.   /// <summary>
    2.         /// Create a Midi file from the PianoTrack sequence
    3.         /// </summary>
    4.         private void CreateMidiFromSequence()
    5.         {
    6.             int lastPatch = -1;
    7.  
    8.             // Create a midi file writer.
    9.             MPTK_MidiFileWriter mfw = new MPTK_MidiFileWriter(PianoTrack.ticksPerQuarterNote, 1);
    10.  
    11.             // First track (index=0) is a general midi information track. By convention contains no noteon
    12.             // Second track (index=1) will contains the notes
    13.             mfw.MPTK_CreateTrack(2);
    14.  
    15.             // Some textual information added to the track 0
    16.             mfw.MPTK_AddEvent(0, new TextEvent("Midi Sequence by MPTK/NAudio", MetaEventType.SequenceTrackName, 0));
    17.  
    18.             // TimeSignatureEvent (not mandatory) exposes
    19.             //      Numerator(number of beats in a bar),
    20.             //      Denominator(which is confusingly in 'beat units' so 1 means 2, 2 means 4(crochet), 3 means 8(quaver), 4 means 16 and 5 means 32),
    21.             //      as well as TicksInMetronomeClick and No32ndNotesInQuarterNote.
    22.             mfw.MPTK_AddEvent(0, new TimeSignatureEvent(0, 4, 2, 24, 32));
    23.  
    24.             // Default tempo of playing (not mandatory)
    25.             mfw.MPTK_AddEvent(0, new TempoEvent(MPTK_MidiFileWriter.MPTK_GetMicrosecondsPerQuaterNote(PianoTrack.beatsPerMinute), 0));
    26.  
    27.             foreach (KeyboardNote note in PianoTrack.Notes)
    28.             {
    29.                 long absoluteTime = (long)(note.TimeMs * PianoTrack.RatioMilliSecondToTick);
    30.                 if (lastPatch != note.Patch)
    31.                 {
    32.                     // Patch/preset to use for channel 1. Generally 0 means Grand Piano
    33.                     mfw.MPTK_AddEvent(0, new PatchChangeEvent(absoluteTime, note.Channel, note.Patch));
    34.                     lastPatch = note.Patch;
    35.                 }
    36.                 mfw.MPTK_AddNote(
    37.                     1,
    38.                     absoluteTime,
    39.                     note.Channel,
    40.                     note.Note,
    41.                     note.Velocity,
    42.                     (int)(note.Duration * PianoTrack.RatioMilliSecondToTick));
    43.             }
    44.  
    45.             // It's mandatory to close track
    46.             mfw.MPTK_EndTrack(0);
    47.             mfw.MPTK_EndTrack(1);
    48.  
    49.             // build the path + filename to the midi
    50.             string filename = Path.Combine(Application.persistentDataPath, "Generated Midi.mid");
    51.             Debug.Log("Write Midi " + filename);
    52.             // wrtite the midi file
    53.             mfw.MPTK_WriteToFile(filename);
    54.         }
     
    Last edited: Dec 5, 2018
    otomus likes this.
  11. ScottySR

    ScottySR

    Joined:
    Sep 29, 2018
    Posts:
    48
    Hi,

    Does this (or the pro version) have the following features?
    • Loop midi to a certain position (rather than very beginning)
    • Cut out other notes playing on the same channel regardless of if it's the same note or not (basically mono polyphony for channels) which also would affect the release part of the sample if there is one and one shot samples such as drums
    • Cut notes on selected channels when specific sound effects play depending on what sound effect plays
    Basically I'm making a game that looks and sounds similar to a NES game and I want to replicate the feeling of limited channels and sound effects "stealing" a channel from the music. If these features would exist then this would be exactly what I need for my project

    EDIT: I forgot to ask if a support for channel events such as channel volume, pan and pitch is possible (if it isn't already)? The modulation event would be useful as well to make vibratos more effortless to sequence in the midi files
     
    Last edited: Dec 8, 2018
  12. BachmannT

    BachmannT

    Joined:
    Nov 20, 2016
    Posts:
    385
    Hi
    A lot of interesting questions !
    MPTK V1 is a light Midi Player. Not all the midi standard are implemented. The goal was to be able to play simple Midi file sound on weak device. To be short, these functions are in V1:
    • pan, volume and patch are managed by channel
    • wave are selected by split key and velocities
    • mode loop are managed
    • envelope volume are managed but with the minimal
    But not these functions:
    • exclusive class sound - [edit Done since version 2]
    • generator - [edit Done since version 2]
    • modulator - [edit Done since version 2]
    • mono channel - [edit Done since version 2]
    i'm working on a V2 more near of a midi synthesizer. I'm rewriting fluidsynth to C# and try to adapt to Unity. For now, generator and modulator are correct for the most part.

    BR
    Thierry
     
    Last edited: Dec 29, 2019
  13. DgoodingIndi

    DgoodingIndi

    Joined:
    Feb 8, 2012
    Posts:
    41
    Hi there.

    I recently tried out the free version, and got pretty excited about trying to set up my own custom sound font for a game i'm working on.
    So I bought the pro version, and got everything all figured out.

    But for the life of me, I just can't seem to get short notes to play properly on any sound font but the exact one you used. I went through a huge list of free sound fonts, and just cannot get short notes to play at all. Everything almost sounds like it is playing the entire wave file, but i'm not 100% positive.

    It feels like it's definitely on my end, but I'm just wondering if there is anything that i'm doing wrong, I feel like i'm going crazy.
    Anyway, luckily there is some other stuff I can work on for a while, but eventually I would like to solve this.
     
    BachmannT likes this.
  14. BachmannT

    BachmannT

    Joined:
    Nov 20, 2016
    Posts:
    385
    Hello
    Not sure to understand your issues. What do you mean by "short note" ? are you writing your own midi sequence ? Could you send me an extract of your code ?
    BR
    Thierry
     
  15. DgoodingIndi

    DgoodingIndi

    Joined:
    Feb 8, 2012
    Posts:
    41
    well there isn't any code changes i'm making.
    Simply using the Midi File Player Prefab, and trying to Play At startup at the moment.

    Here is a Google Drive link to a quick midi loop I wrote to test on.
    https://drive.google.com/file/d/17x2eZnG8IvNKI5E4wFraWlMtBHMgAf6T/view?usp=sharing

    It's just three piano banks playing a short loop of sixteenth notes.
    I don't intend to actually use this track, but I do intend to have lots of shorter notes play like this.

    And basically I would "Like" to start off with either one of these two sound fonts
    http://pphidden.wixsite.com/compifont,
    https://drive.google.com/file/d/1alSnxnB0JFE6mEGbUZwiYGxt2UsoO3pM/view
    and combine the best of the two using Polyphone, and find, or record a few more instruments if needed to suit my needs.

    But i'm getting the problem in Unity of none of the notes are playing short, they just sorta trail on.
     
  16. BachmannT

    BachmannT

    Joined:
    Nov 20, 2016
    Posts:
    385
    Ok thank for this well documented issue. I have an idea of the error, I find a way to correct and let you inform ASAP !
    Best regards
    Thierry

    Edit: issue is identified.
    I will publish a new version, but there is a hack to correct your issue.

    Open the XML generated in the soundfont folder with a text editor (for example: .\Assets\MidiPlayer\Resources\SoundfontsDB\Compifont_13082016\Compifont_13082016.txt). Don't change anything but force to save the text file. The soundfont will be correctly detected by Unity.

    One bad news: the soundfont Compifont seems plays bad for some midi (too complex soundfont ?)
    One good news: the soundfont Compifont plays good with the future V2 (beta test available in january, i hope)

    MPTK V2 is a complete rewrite of the synth engine based on fluidsynth: better performance on loading (x20) and better sound experience for the most part of midi files..

    Have a nice days
    Thierry
     
    Last edited: Dec 11, 2018
  17. DgoodingIndi

    DgoodingIndi

    Joined:
    Feb 8, 2012
    Posts:
    41
    Thank you for taking the time to look into it!

    For now, i'll use the XML fix you mentioned.

    The MPTK V2 sounds great too! Looking forward to it.
     
  18. BachmannT

    BachmannT

    Joined:
    Nov 20, 2016
    Posts:
    385
    Hello
    Version 1.96 is published to Unity. Will be available next week, depending of the loading of the Unity's team.
    Thank for your comment on the Unity store, it's very important for me to get encouraged ! It's a lot of work !
    Have a nice day.
    Thierry
     
  19. roypon11

    roypon11

    Joined:
    Feb 5, 2018
    Posts:
    4
    Hi, I'm using the free version of MPTK to make a procedural music generator. I previously made one in a Java library called JFugue but I've decided to just make one from scratch again, as opposed to trying to make Java and Unity cooperate. I also consider myself a beginner to the Unity engine, I started using it maybe a year ago.

    Your addon works online! As in, it can be exported into Unity WebGL, and it doesn't lose functionality! Which makes it a good alternative to using Javascript to get MIDI to work online. I didn't do an extensive test though. I just made a quick build for TestMidiStream and it seemed to work fine.

    I couldn't get InfinityMusic to work, no sound is produced. When I add the two components, MathMotif and Cadence, and try again, it appears the InfinityMusic object prefab destroys itself.

    Big fan of the project.
     
  20. BachmannT

    BachmannT

    Joined:
    Nov 20, 2016
    Posts:
    385
    Hello
    Thank to appreciate MPTK !
    InfinityMusic does not work outside the Unity Editor. So you can't execute it in a standalone application. Some change have to be done. My first intention was to remove this demo from MPTK V2 (available in January) but I could reconsider this decision if you are interested. Have you some link to your WebGl demo ?
    Best regards
    Thierry
     
  21. URGr8

    URGr8

    Joined:
    Sep 10, 2012
    Posts:
    23
    Hi, The MPTK tool is great.
    I have a question, I have some midi files that I want to play, but I want them to be played with specific instruments, like how you can play the single notes using the soundfont banks in your example demo.
    Looking through the code I can see how to play a note and change the instrument, but I can't see how to add the sound bank to a midi file and then just play that. My midi files are all in one instrument, just a set of notes with specific timing.
    Hope you can help point me in the right direction.
    Thanks,
     
  22. BachmannT

    BachmannT

    Joined:
    Nov 20, 2016
    Posts:
    385
    Hi, Adding new soundfonts is available in the Pro version. See here how to : http://paxstellar.fr/setup-mptk-add-soundfonts/.
    Best Regards
    Thierry
     
  23. BachmannT

    BachmannT

    Joined:
    Nov 20, 2016
    Posts:
    385
  24. vulh2289

    vulh2289

    Joined:
    Nov 29, 2016
    Posts:
    3
    Hello, would you please tell me if this is mobile-friendly?
    I'm having a working game that I read mid files for notes, and play mp3 at the same time. If I were to switch/buy to your tool, it means I have to re-write how my game works. Don't want to waste the effort if the tool isn't fit.

    Thanks,
    Vu
     
  25. BachmannT

    BachmannT

    Joined:
    Nov 20, 2016
    Posts:
    385
    Hello, yes MPTK is mobile-friendly. But there is a wide variety of mobile, so I encourage you to have a check with the free version before buying the pro. If the free is ok,then the pro will be.
    One of the advantages of the Pro is that you can limit the wave need by your application or game, so also the volume of data to deploy.
    Best regards
    Thierry
     
  26. roypon11

    roypon11

    Joined:
    Feb 5, 2018
    Posts:
    4
    BachmannT and wetcircuit like this.
  27. BachmannT

    BachmannT

    Joined:
    Nov 20, 2016
    Posts:
    385
    Very interesting procedural generator ! What kind of algo are you using ?
     
  28. roypon11

    roypon11

    Joined:
    Feb 5, 2018
    Posts:
    4
    (Assuming everything's in C major) it starts with a chord of either C or Am (F could work as well), since those are most common. Then random chords in the key of C major. Sometimes the chord progression will copy the latter four chords onto the first four chords, or replace every odd chord with its neighbor, since most songs don't have more than four chords.

    The melody is where things get complicated. In a previous program I randomized the notes to match a key, and then copied existing measures to give the feeling of a motif. I recently learned some music theory about "resolving" onto chord tones, and I tried to quantify that in a way. I imagined melodies as being grouped in threes, which you can see on each note. 1 being resolved, 2 being a passing tone, and 3 being resolved. I considered the notes C, E, and G resolved and the notes D, F and A being unresolved. For Em and G, which I consider passing chords, those rules changed. Probably not the cleanest way to go about things but that is what worked.
     
    stanek_unity and wetcircuit like this.
  29. BachmannT

    BachmannT

    Joined:
    Nov 20, 2016
    Posts:
    385
    Excellent ! Take us inform when new version will be available !
    The MPTK V2, soon available, includes a new Midi Synth: better API, better sound, better performance at loading ...
     
  30. gichi123

    gichi123

    Joined:
    Jan 11, 2019
    Posts:
    2
    Hi there,
    I am using the MPTK for creating a "Augmented-Reality Music Teacher" and it really helps me a lot! Anyways, i need the information about the beats per measure. I discovered the "GeneralInfo" method in the MidiScan class but I´m not sure how/where to call it. I want to gather this Information when loading a new midifile, in order to set correct bars during the song.

    Thanks in advance
     
  31. BachmannT

    BachmannT

    Joined:
    Nov 20, 2016
    Posts:
    385
    Hello, good idea ! and thank to using MPTK !
    For your question: MidiScan is not a documented API, you could experiment some unexpected change with a new version.
    Nevertheless, if you decide to use MidiScan, you could analyze the list of strings from ScanInfo after a call to GeneralInfo and search something like that: "TimeSignature Beats Measure:3 Beat Quarter:4". This information is generated from the midi message Meta TimeSignature. Look here for explanation.
    Call like this:
    Code (CSharp):
    1. BuilderInfo ScanInfo = new BuilderInfo();
    2. MidiScan.GeneralInfo(midifilepath, ScanInfo);
    I will integrate a more friendly API in the version 2 which coming soon.
    Best Regards
    Thierry
     
  32. gichi123

    gichi123

    Joined:
    Jan 11, 2019
    Posts:
    2
    First of all, thanks for that explanation! It actually helped a lot and the problem is solved.
    Now, there´s another question. Maybe you already answered it or it´s documented somewhere but I didn´t find it. Is there a way to change the MidiFile-to-play in script? So I´m creating Buttons for every possible song - I want to add an onClick for these buttons, so each one would start their own midi file.

    Code (CSharp):
    1.  GameObject.Find("MidiFilePlayer").GetComponent<MidiFilePlayer>().MPTK_MidiName = songName;
    Atm I´m trying to do it like this - "songName" is the path of the MidiFile. It seems to always take the first available MidiFile in the Folder. I guess this is the wrong way to change the MidiFile from script. How could I do it better?

    Edit:
    Okay well it was easier than I thought.. I just had to trim away the ".bytes" in the SongName and now its perfectly working.. Thanks anyways!
     
    Last edited: Feb 20, 2019
  33. BachmannT

    BachmannT

    Joined:
    Nov 20, 2016
    Posts:
    385
    Good to known that you have succeed. I think that there is a lack in the documentation. I will update with a more understandable example.
     
  34. MidnightGameDeveloper

    MidnightGameDeveloper

    Joined:
    Apr 26, 2014
    Posts:
    122
    Hello,
    i just bought your MIDI Player Tool Kit and iam really happy with it, except for one problem/request.

    I need to write a MIDI File from a piano and this already works fine for notes but not for the pedals (Sustain etc.) of the piano.
    The pedals are probably not a NoteEvent but something different (maybe ControlChangeEvent).

    I would appreciate your support.
     
    Last edited: Feb 22, 2019
  35. BachmannT

    BachmannT

    Joined:
    Nov 20, 2016
    Posts:
    385
    Hello
    Thank to bought MPTK and to appreciate it!
    Here a short code how to generate ControlChange Event with MPTK:
    Code (CSharp):
    1. // with MidiFileWriter (see TestMidiWriter.cs)
    2. // Sustain on
    3. mfw.MPTK_AddEvent(1, new ControlChangeEvent(absoluteTime, note.Channel, MidiController.Sustain,127));
    4. // Sustain off
    5. mfw.MPTK_AddEvent(1, new ControlChangeEvent(absoluteTime, note.Channel, MidiController.Sustain,0));
    6.  
    Here some details to implements ControlChange Midi Event.

    Have Fun
    Thierry
     
  36. MidnightGameDeveloper

    MidnightGameDeveloper

    Joined:
    Apr 26, 2014
    Posts:
    122
    Thanks, that was easier then i thought.
     
  37. BachmannT

    BachmannT

    Joined:
    Nov 20, 2016
    Posts:
    385
    Please, let a comment on Unity Asset Store. It's important for me to continue delivering a pro service ;-)
     
  38. MidnightGameDeveloper

    MidnightGameDeveloper

    Joined:
    Apr 26, 2014
    Posts:
    122
    Yes, i can do that when iam done with the project ;)

    EDIT: done :)
     
    Last edited: Feb 25, 2019
  39. BachmannT

    BachmannT

    Joined:
    Nov 20, 2016
    Posts:
    385
    Thank! for the documentation, is this the PDF which is too short ? or the explanation on the web site ? I would like to make better for the V2 ;-)
     
  40. sozkul

    sozkul

    Joined:
    Mar 11, 2018
    Posts:
    2
    Hi,
    I'm trying out the free version and really like it. Thanks for this great asset!
    In my project, I'm using CSharpSynth synthesizer. Can I use both of MPTK and CSharpSynth ? Is there a wrapper class for integrating a synthesizer and MPTK midi player in pro version ?
     
  41. BachmannT

    BachmannT

    Joined:
    Nov 20, 2016
    Posts:
    385
    Hi,
    Hard to say if the two are compatible! Why don't use the synth midi of MPTK ? the prefab MidiStreamPlayer is ready for this: receives midi event to play music with a large choice of sound. See the demo in the free version TestMidiStream (available in V2)


    Also have a look to the V2 documentation (under construction) here

    I hope to publish the V2 under 5 days.

    Best Regards
     
  42. sozkul

    sozkul

    Joined:
    Mar 11, 2018
    Posts:
    2
    In latest free version, TestMidiStream instantiates AudioSources and they uses external wav files as audio clips for each different instrument. In V2, you are using a midi synthesizer based on the fluidsynth. So, generating notes using synthesizer without external wave files? Am I right ? My project is mobile music application, so i don't want to include all waves.
     
  43. BachmannT

    BachmannT

    Joined:
    Nov 20, 2016
    Posts:
    385
    Waves remains mandatory for any kind of Midi synthesizer based on waves table, also for MPTK V2. You will have to find a generative synth, but not sure that Unity is able to do that, even less on a smartphone. It's a heavy CPU process or with a bad result!

    With the Pro version of MPTK you can keep only the waves useful for your Midis ;)
    Have a look to the V2 documentation how adding SoundFont (under construction).



    Best regards
     
    Last edited: Feb 28, 2019
  44. davidsanchezillescas

    davidsanchezillescas

    Joined:
    Mar 1, 2019
    Posts:
    2
    Hello BachmannT, really good job, congratulations.

    Is it possible to work on Android?

    Thanks. Greetings from Spain.
    David
     
  45. BachmannT

    BachmannT

    Joined:
    Nov 20, 2016
    Posts:
    385
    Hello
    Thank for your congratulation, it's a lot of work !
    Android is not yet tested by himself, but some users use MPTK on Android. They have an issue with a few device with the well known latency issue. This can be corrected with this asset. It will be integrated in native, in a next version of MPTK.

    In the meantime, the good approach for you, could be to check with the free version, if you have issue I could help you.
    Best Regards
    Thierry
     
  46. BachmannT

    BachmannT

    Joined:
    Nov 20, 2016
    Posts:
    385
    Hello
    V2 is alive ! But I apologize that there is an issue with drum kit sounds. I will correct that as soon as possible.
    Thierry
     
  47. BachmannT

    BachmannT

    Joined:
    Nov 20, 2016
    Posts:
    385
    Lessons learned: Never change something at the last minutes before publishing even if is it trivial!

    So, the bug on the wave loop is corrected, new version is available: Here the web site for documentation and a post for the main change and also the new API.

    Edit: Play At Startup is not working (always start playing), an update will be published.

    Thierry
     
    Last edited: Mar 9, 2019
  48. davidsanchezillescas

    davidsanchezillescas

    Joined:
    Mar 1, 2019
    Posts:
    2
    Hello BachmannT. Congrulations again! Really good job.

    I am using your app in Augmented Reality with Vuforia and I have a problem:
    I have edited the script to play a midi song after a picture have seen by the camera. And I get the point that the song is playing in the script but it doesn’t listen in the speakers.

    Do you know what the problem could be?
    Thank you. Best regards,
    David Sánchez
     
  49. BachmannT

    BachmannT

    Joined:
    Nov 20, 2016
    Posts:
    385
    Hello
    Hummm, strange ...
    Could you verify if "Send To Synth" is checked in the inspector view of the MidiFilePlayer ?
    Is the button Play, Pause, ...on the inspector are displayed when running ?
    What version of MPTK are you using ?
    Other question, i'm not a specialist of vuforia. What OS are you using ? IOS ? Android ? Windows ?
    BR
    Thierry
     
    Last edited: Mar 10, 2019
  50. BachmannT

    BachmannT

    Joined:
    Nov 20, 2016
    Posts:
    385
    Hello
    New version 2.02 available:
    • Changed: default midi tempo to 120 rather 80 to be more compliant with Midi.
    • Published: TestMidiListPlayer.cs for demonstration of integration in a script (if need).
    • New design for TestMidiFilePlayerMulti demo dedicated to a great Musician!
    • Corrected: some attributes not saved on Custom Inspector
    • Corrected: “Play At Startup” attribute which did not worked well.
    Have Fun !
     
    Last edited: Mar 19, 2019