First mcjMidiLoad Beta Available - Midi File loader script for Daz Studio

145679

Comments

  • mCasualmCasual Posts: 4,607
    edited June 2015

    i'll do the needed fixes this Saturday/Sunday

    in the meantime look at this cute bass guitar which is so very close to being released as a freebie

    itsthebestinthewoarldnot.jpg
    1920 x 1080 - 1M
    here1.jpg
    1920 x 1080 - 479K
    check2.jpg
    1920 x 1080 - 327K
    Post edited by mCasual on
  • KeironKeiron Posts: 413
    edited December 1969

    Hi Casual

    It looks terrific
    Great job

  • KeironKeiron Posts: 413
    edited June 2015

    re Beta testing

    Hi Casual

    Here are the two Screen shots,

    If you look at the without shot, you can see the notes on and off on the MIDI time line HIAT note 44
    whereas in the with shot you can see the note on's have gone on the MIDI time line HIAT note 44

    Kind wishes

    Keiron

    With.jpg
    1911 x 1080 - 323K
    without.jpg
    1905 x 1080 - 292K
    Post edited by Keiron on
  • mCasualmCasual Posts: 4,607
    edited December 1969

    keiron said:
    re Beta testing

    Hi Casual

    Here are the two Screen shots,

    If you look at the without shot, you can see the notes on and off on the MIDI time line HIAT note 44
    whereas in the with shot you can see the note on's have gone on the MIDI time line HIAT note 44

    Kind wishes

    Keiron

    i think i'll add a panel where you can view the channels as a table or text
    say, 1st colimn the time in frames, column 2 the time in seconds, and ms 3rd the type of event

    also if you could point me to the midi file you are using i could use it in my tests

    there's all sorts of possibilities, for what can go wrong and sometimes the problems only show when using specific files
    for instance, some midi files may say "Note ON" others may say "note on"

  • KeironKeiron Posts: 413
    edited June 2015

    Hi Casual

    Pop me an Email and I'll send you the MIDI file and the Excel file

    keironatkeiron.me.uk

    put the @ sign in

    Sorry I can't add or send some attachments on the Daz site it said not allowed?

    Post edited by Keiron on
  • KeironKeiron Posts: 413
    edited June 2015

    Hi Everyonel

    Boogie Slide Played and Animated by me
    Big Thank you to Casual for the MIDI load script

    Added some Trombones and Camera Angles

    Still working on the Sax and Drums LOL

    Great fun

    https://youtu.be/1CV_0TI5hzM

    Post edited by Keiron on
  • mCasualmCasual Posts: 4,607
    edited July 2015

    now that the mcjSphereCam script is complete

    i return to the midiLoader script !

    here's the Inspector panel of the upcoming version
    and if what's displayed is correct
    there's definitely a problem with the hi-hat hits

    the Quantize option was probably used when loading that midi file

    and the hi-hat Note-Off events are so close to the NoteOn events that they over-wrote most of them

    i think for now, one could load the midi file with Quantization Off

    then set Quantization On when applying them to the animated instruments

    hi.jpg
    777 x 497 - 51K
    Post edited by mCasual on
  • KeironKeiron Posts: 413
    edited December 1969

    Hi Casual

    Well done with Inspector panel, very useful, that's exactly what i'm seeing with Keymate.
    I did import the midi text with Quantization Off and all the note on and off were there OK, but the note on and off were way to close.

    I then moved the note off's manually along 2-3 frames before the next note on and got a much better animation.
    Also as explained in the Email the drum data forms a pattern which you may be able to Analyse and use to improve the animation as a simple note on and off sets the animation to zero each time

    Kindest wishes

    Keiron

  • mCasualmCasual Posts: 4,607
    edited July 2015

    keiron said:
    ...

    Keiron

    At last ! some new developments on the midiLoad front

    when Quantize is ON

    there's a math function named "floor" and a math function named "ceiling"
    they are similar to the "round" function

    say you have a midiON event happening at frame 100.135
    and a midiOFF event happening at frame 100.235

    if we apply the floor() function, the noteON event will happen at frame 100
    and if we apply the ceiling() function the noteOFF event will happen at frame 101

    before today, both the NoteON and NoteOFF events were using the round() function and would be mapped to frame 100

    ==============

    i just have to check if the Inspector panel works well

    then i'll post this new version !

    -=========

    in the image below you can see the before and after

    note that this solves most problems with HiHat type of MidiNotes which had the NoteOFF event extremely close to the NoteOn event

    but if the drummer is drumming faster than 30 beats per second ( or 15?) then there will be missing moves

    ===

    also, even after this change the drum movements remain very short

    but at least they are present in the midi-node's timeline

    the task of animating the drummer's arm with a longer duration will be achieved through new "effect" ... or something :)

    okmidi.jpg
    1920 x 1080 - 269K
    Post edited by mCasual on
  • mCasualmCasual Posts: 4,607
    edited December 1969

    the first 10 seconds of "yoursong.mid"
    the closed-hi-hat applied to a D-Form of the new McjBookShelfSpeaker prop

    not missing a beat !

    i rendered this at 30 fps
    then in virtualDub, i applied a "motion blur" effect"
    so i was able to reduce the frame-rate of the animation to 10 fps
    and we still can perceive every beat

    for pro results, one could render/animate at 90 fps, add motion blur and reduce the final frame rate to 30fps

    yoursong.gif
    480 x 270 - 1M
  • mCasualmCasual Posts: 4,607
    edited December 1969

    NEW VERSION ( still beta but hey )

    July 5th 2015 - new version with Inspector panel and better handling of extremely brief midi ebvents like those on drums
    download MCJMIDILOADSUPERSECRETBETAJULY05.DSA and MCJMIDILOADSUPERSECRETBETAJULY05.DSA.png
    and place them in your scripts/mcasual folder

    mcjMidiLoadSuperSecretBetaJuly05.dsa_.png
    182 x 182 - 13K
  • KeironKeiron Posts: 413

    Hi Casual

    Thank you for the new link and update I'll give it a try

    Kindest wishes

    Keiron

  • KeironKeiron Posts: 413

    Hi Casual

    Sorry for the delay

    I had to rebuild my machine due to a faulty SATA cable connection on a Drive

    Everything is now back and I have reinstalled all the software

    Well I loaded a drum and the script and ran the script but i've hit a prob that we have seen before

    "fatal error could not load file"

    I pointed the script to the existing Mf2t.exe file, no joy

    moved it to the c drive,

    moved it to the "my daz 3d library"

    no luck

    I then went to downloaded the MIDI to text file but it's moved location, so I downloaded it from its new location. I unzipped it but there is no exe it might be compressed?

    The only difference is my content in on a second drive at this time, the "my daz 3d folder" on the c drive user documents is currently empty except for the newly added mf2t folder.

     

  • KeironKeiron Posts: 413

    Solved it

    The Folder was not using full Admin

    so I right clicked on the folder selected security  in users (keiron\users) what ever yours is

    "logged on as admin" using edit I gave this folder full permission and all is well now works OK

  • KeironKeiron Posts: 413
    edited July 2015

    Hi Casual

    Seeing some problems

    I'm using july 05 is that the right version?

    I've loaded the same midi file as before it's converting fast but on loading the text file it's now taking 6 mins instead of 1 min 25 sec

    its at 100% in 38 seconds

    That's using a 4Gig quad I7 rev 4 the cores aren't flat out

    I have used Quantize on and off both give the same result at 30 fps

    The good news is they are right on the mark of every frame and not sitting between

    The bad news is the note on's are still being destroyed

    I've just set it to 60 fps ill let you know what happens

     

     

     

     

    Post edited by Keiron on
  • KeironKeiron Posts: 413

    Beta update june05 script

    Still trying to find out why Daz Studio and script is slower, I must need to install something else for the MSI motherboard, just installed the MSI Command program and enabled the Genie but that didn't seem make a lot of difference. I'll keep you posted, I'm confident it's not the script taking longer but some other issue.

    OK so I've looked at the time line in Keymate using the latest script and the previous one

    I can see the MIDI timeline has note on's and off's in the previous version where as not the case in the june 05 version it has notes missing

    This is reflected in each case in the hiat timeline

    There is however a great improvement as the notes are now hitting the time line exactly on each frame with the new version

    I also tried with 60 fps but got the same result

     

     

     

     

  • mCasualmCasual Posts: 4,607
    edited July 2015

    since mcjMidiLoader is a script and not a plugin, it's quite slow when dealing with large amounts of data

    for example .... loading all the midi events from channel 0 into the Inspector panel's "ListView"

    in future versions i'll probably disable the inspector by default

    in the meantime, if you want to disable the inspector feature

    open MCJMIDILOADSUPERSECRETBETAJULY05.DSA 

    in the Daz Studio scripting IDE or in NotePad/Wordpad

    scroll down to line 582

    which looks like this

    function UpdateInspector()
    
    {
    and change it to
    
    
    
    function UpdateInspector()
    
    {
    
    return;
    
    
     

     

    Post edited by mCasual on
  • KeironKeiron Posts: 413

    Hi

    I have now tried the same script in Daz Studio 4.8 32 bit and 64 bit

    It took just over 50 seconds to complete using the 32 bit version and over 6 min to do the same with the 64 bit version

    So the 64 bit version is considerably slower

    I've run the Intel Processor and Motherboard checker and all is well the perormance test is around 4600, so it's not to bad

    re Beta version

    I can still see notes missing at this time, even with the 32 bit version

    Looking forward to your next beta version

    Thank you for your hard work

    Kindest wishes

     Keiron

     

  • KeironKeiron Posts: 413

    Hi Casual

    Just dropped by to see how your are getting along

     

     

     

     

  • mCasualmCasual Posts: 4,607
    edited July 2015
    Keiron said:

    Hi Casual

    Just dropped by to see how your are getting along

     

    i didnt modify the midi project

    but i did all sorts of things

    but this weekend it's mostly , for fun, building/rendering scenes

    of course i wrote and used custom scripts to do that !, like changing the bottom curve of a dress for instance

     

     

     

    Post edited by Richard Haseltine on
  • KeironKeiron Posts: 413

    Hi Casual

    Great Render, looks brill

    Well I thought i'd go for the Windows 10 upgrade

    For the most part it worked well and installed OK

    I had issues with the Video NVIDIA driver but i've got an updated version for Windows 10, so now OK

    I was using Antivirus / Internet Bit Defender but after the Windows 10 upgrade Bit Defender stopped me from visiting sites, so it's been removed and AVG installed, all is now OK

    On the face of it it look's a lot better the Start menu is back but the Control Panel is missing, but you can search for it

    Still running through all the programs to check there operations

    The time delay I get using Daz Studio 32 bit and 64 bit using the same script is still there so not luck on that one

    Perhaps you could try the same test to see if you get the same result as me

    Have a great weekend and happy renderings

    kind wishes

    Keiron

     

     

  • ImagoImago Posts: 5,158
    Keiron said:

    Hi Casual

    Great Render, looks brill

    Well I thought i'd go for the Windows 10 upgrade

    For the most part it worked well and installed OK

    I had issues with the Video NVIDIA driver but i've got an updated version for Windows 10, so now OK

    I was using Antivirus / Internet Bit Defender but after the Windows 10 upgrade Bit Defender stopped me from visiting sites, so it's been removed and AVG installed, all is now OK

    On the face of it it look's a lot better the Start menu is back but the Control Panel is missing, but you can search for it

    Still running through all the programs to check there operations

    The time delay I get using Daz Studio 32 bit and 64 bit using the same script is still there so not luck on that one

    Perhaps you could try the same test to see if you get the same result as me

    Have a great weekend and happy renderings

    kind wishes

    Keiron

     

     

    If you would accept a disinteressed opinion... Don't use AVG!

    It will invade your PC with useless plugins and Browser Helpers... And it doesn't recognize viruses!

    Use Avast instead!

  • KeironKeiron Posts: 413

    Hi Imago

    Yes thank you for the advise, i'll give it a bash

    No big problems with Daz Studio 4.8 using windows 10 so far

    Happy rendering

     

     

  • KeironKeiron Posts: 413

    Hi Casual

    Well thats a suprise!!!

    I rebuilt my old i7 and used windows 7 64 bit

    I've installed Daz Studio 64 bit

    Placed the original mf2t folder in the programs x86 folder and set user permissions to everything

    ran the script

    Converted same MIDI file, and loaded txt file and yup loaded around 1 min 14 sec np about the same as the 32 bit version

    So it's a problem  with my other MSI gaming 7 motherboard with the new i7 proccessor or Windows 8 >

    or some process?

     

  • mCasualmCasual Posts: 4,607
    edited August 2015
    Keiron said:

    Hi Casual

    Well thats a suprise!!!

    I rebuilt my old i7 and used windows 7 64 bit

    I've installed Daz Studio 64 bit

    Placed the original mf2t folder in the programs x86 folder and set user permissions to everything

    ran the script

    Converted same MIDI file, and loaded txt file and yup loaded around 1 min 14 sec np about the same as the 32 bit version

    So it's a problem  with my other MSI gaming 7 motherboard with the new i7 proccessor or Windows 8 >

    or some process?

     

    it's hard to tell, the disk access by mcjMidiLoader is not a big task

    if other things not related to midiloader are running slow in Daz Studio , then it's something in your installation that slows things down

    long ago in DS3 i remember there was a plugin that was causing problems, so i went in the DS4 /plugin/ folder and moved some dlls out of Daz reach, thereby removing them from Daz Studio at load time

    another thing you could try is close some panels, like the Animation Plugin panels

    because a great number of keyframes are added to the midi node and if there's a plugin that reacts to each keyframe being added ( to display the animation curve for example ) this may slow things down

    Post edited by mCasual on
  • KeironKeiron Posts: 413

    Hi Casual

    Now thats a thought

    I have only installed daz studio 4.8 64 bit pro in the old pc theres no plugins or anything else installed as yet

    and there's not alot installed in the 32 bit version either as i don't use it that often

    i'll give that a go

    Thank you

     

  • KeironKeiron Posts: 413
    edited August 2015

    Hi Casual

    Script is now taking 43 seconds

    Well this is really odd

    Reinstalled Daz Studio 4.8 from scratch using the download tool to uninstall and reinstall

    I didn't delete any folders or registry settings

    It loaded all the tabs I had added or moved around before

    I closed down each tab I had open, until  I was left with the scene, content, enviroment and script and reopened Daz Studio

    run the script now 42 seconds not 6 + mins "yey cool"

    I then tried to re add the tabs back in and I couldn't get them to attach to the bottom or left hand side of the window?, so I started adding them to the top and righthand side

    Each time I added a tab I closed down Daz Studio and restarted it, rerun the script and some of the tabs started to effect the script time but only by a few seconds

    I then had all the same tabs open and the time is still only 47 seconds

    So all I have really done is closed the tabs and added them to the top and righthand side

    Mega difference to the script time now, loading MIDI text file down from 6 min +  to 43 seconds

    It was taking well over 6 min to open the Inspect panel , and each time I changed channel also 6 min +

    Now less than a second working fine

    If I reload the layout or change it to a different one, I think it will then allow me to attach the tabs to left and bottom again but i'll keep it as is for now

    Thank's for the idea's

    I can now assist you with some BETA testing when you wish

    Kindest wishes

    Keiron

     

     

     

     

     

     

    Post edited by Keiron on
  • KeironKeiron Posts: 413
    edited November 2015

    Rendered in daz Studio 4.8 using open GL

    Rendered in Daz Studio 4.8 using 3d delight

    Hi Casual and Everyone Welcome
    This is a short Animation by me. A big thankyou to Casual who wrote the Daz Script to allow animation of objects using MIDI files.
    After I created the song, I then made a MIDi file type 1 and a Wave file. Using Daz Studio I have then Synced every note played to the Models hand movement so it's taken nearly 60 hrs to complete
    There is a second piano and other Intruments that I haven't as yet included as yet but hope to in the near future.
    Thank you for watching
    Kindest wishes Keiron

     

    say09832.jpg
    1920 x 1080 - 857K
    Post edited by Keiron on
  • KeironKeiron Posts: 413
    edited November 2015

    Hi Everyone

    Drum track revised using "MIDIHelper" a program I'm writing in Excel using VB, Animation created Using Daz Studio 4.8

    Music created by Keiron Westguard
    Big Thank you to Casual for his MIDload script to animate Objects using MIDI

    Drum Video below if you would like to take a look Instrument only at this time

    The actual MIDI file was causing some problems that needed to be delt with before using MIDIload

    I've have Identified these as follows

    1. A MIDI note On could be in the same time stamp as as another Note On both have the same note

    2. A MIDI note Off could be in the same time stamp as as another Note Off both have the same note

    3. A MIDI note On - Off could be in the same time stamp as as another Note On - Off both have the same note

    4. It's also possible to have multiple occurrences of the same note in the same time frame

    5.The time period  between a Note On and it's Note are very close together in the MIDI file making Animation very difficult

    So after reading the Excel Spread sheet using VB for Dummies bought from Amazon LOL. I started on my quest to make an Excel sheet to help me solve all the problems using it's in built VB

    Why Excel, well I had Office 2010 and I wanted to make something that could show me where the issues were as well as fix them

    I've called It MIDIhelper but it uses a lot of resources and isn't bullet proof yet but it does the job quite well.

    First of all It's an Excel 2010 64 bit version running on Windows 10 64 bit Using an I7 quad with 16 gig of Memory although windows looks like it was taking 4 gig of it

    Following using MF2T or a new one I found the other day midicsv-1.1, I've put these in the c:\programs folder IE the 64 bit side as I'm using the Daz 64 bit version.

    You can then Open the Excel file MIDIhelper and do the following

    load the MIDI text file

    Select the option you wish using the tick boxes or leave as is

    Press a button and let it complete

    If all options are left ticked it will do the following

    Find every note that has Velocity =0 and make sure the Note is set to OFF

    Find every note that is set to OFF and set its Velocity to 0

    Check that the Note On is more than 0 :- on a different Note LOL the note ON can be as low as 1

    Having done this for every MIDI channel, each set of Info is resorted

    If the Velocity to 127 is selected then all Note ON's will be set to full velocity, you can also do this in Casuals Script if you wish

    At this point the Minimum value between the Note ON to it's next Note ON has been calculated

    So if you now set the sliders for each of the Drum Instruments lower than the MIn you should be good to go

    Press the next button, after a while all the Drum Note Off's are moved to your new locations

    At this point you can copy and paste the MIDI data into a good text editor I found Text Pad works great use search to find \t and replace " " note 1 space to replace then save this and Import all into MIDIload

    if you wish you can scroll down to Ch10 and look at all the settings

    Note on event time, Modified Note off event time, Time Difference, Selection Code, Old Note Off time stamp, Note Off difference

    I can Email you a copy of the Excel Sheet if you wish to have a play. please note its work in progress at this time

    Here are some screen shots Of MIDi helper

     

     

    Load MIDI text file and Press Check and Change.jpg
    1910 x 1047 - 273K
    Press Check and Change pressed.jpg
    1910 x 1074 - 378K
    Press Check and Change pressed Note On and OFF = moved.jpg
    1913 x 1048 - 307K
    Press Check and Change pressed Note OFF and 2nd OFF = moved.jpg
    1922 x 1057 - 256K
    Press Check and Change pressed Note On and 2nd Note On = moved.jpg
    1907 x 1057 - 266K
    Post edited by Keiron on
  • KeironKeiron Posts: 413
    edited November 2015

    here are the results after moving the Notes oFf on Ch10 and the Info for the other Channels

    Press Check and Change pressedCh 10 Note Off's Moved.jpg
    1913 x 1076 - 399K
    Press Check and Change pressed Ch 1-9 Ch11-16 Info Only 0 Moved.jpg
    1910 x 1047 - 372K
    Post edited by Keiron on
Sign In or Register to comment.