Please refresh in_midi plugin

Started by XMPlay_User,

XMPlay_User

Please refresh in_midi plugin

XMPlay_User

And please fix reaction to pause or stop if set as on this image , now pause this retry play , if uncheck this checkbox , I'm can not stop melody , only if as two screenshot

Ian @ un4seen

Here's an XMPlay update for you to try:

   www.un4seen.com/stuff/xmplay.exe

It has some changes to pausing/stopping and seeking with Winamp plugins, which should help in this case.

XMPlay_User

You well done ) now work correctly ) only , please refresh this module for work without bugs )

My sets for work in first message

XMPlay_User

My sets for work in second message
If set as , XMPlay work correctly with this plugin )

XMPlay_User

#5
in_midi.zip of my first answer necessarily for refresh in your plugin list on  on https://support.xmplay.com/index.php and on https://www.un4seen.com/ , if this not do , sysex and banksets in GS mode will work with errors )
This file for test ) in version 2.64 and older - bug with notes )
In melody selected Distortion Lead , but in SoundCanvas VA selected Charang , and notes play not correctly , in offered version here https://www.un4seen.com/forum/?msg=146447 , this bugs absent )

XMPlay_User

This is latest version in_midi 3.09T

XMPlay_User

This not all , if I use DirectMusic interface - I can play music , but I can not set drumsets for SCVA , for example I want use melodyc parts as SC-8820 and drumset I want use from SC-88 Pro , for example I want use Standard Kit 1 from SC-88 Pro for this I do and on this scereenshots ) and recive what on latest screenshout , but whith your XMPlay I can not set drumsets from SC-88 Pro , why ? Because work only DirectMusic ports and I recive error if I use MIDI out , I recive error , contiune in next post

XMPlay_User

#8
I recive trhis error and MIDI not play , if I use same port in WinAMP , all work and drumset selected correclty , why yuour player can not use ports if port not such DirectMusic ?

In WinAMP with this plugin this error absent )

In older plugin version 2.64 and older , eror as second screen

It says there , what this port used other application , and because XMPlay with in_midi.dll can not use this port , but this not true , port always free and not ocuped

as proof see screenshot number three )

Ian @ un4seen

Quote from: XMPlay_Userin_midi.zip of my first answer necessarily for refresh in your plugin list on  on https://support.xmplay.com/index.php and on https://www.un4seen.com/ , if this not do , sysex and banksets in GS mode will work with errors )
This file for test ) in version 2.64 and older - bug with notes )
In melody selected Distortion Lead , but in SoundCanvas VA selected Charang , and notes play not correctly , in offered version here https://www.un4seen.com/forum/?msg=146447 , this bugs absent )

The Winamp MIDI plugin has so far never been offered on the support site because it doesn't send data to XMPlay by default ("Send to Winamp's output system" needs to enabled), and it didn't work very well with XMPlay anyway. But now that it's working better with the update above, perhaps it can be added to the support site (along with setup instructions).

Quote from: XMPlay_UserThis is latest version in_midi 3.09T

Do you know what Winamp version that's from?

XMPlay_User

#10
Quote from: Ian @ un4seenDo you know what Winamp version that's from?
Winamp  5.2 Full  https://www.oldversion.com.ru/windows/winamp/winamp-5-2-full/

but logic needs to be improved , what need improved ? If user remove MIDI files from playlist ,  player need send to plugin and port message all note off , as this do if we press button pause or stop , for now this not do and we have dependent notes )

Ian @ un4seen

Quote from: XMPlay_UserWinamp  5.2 Full  https://www.oldversion.com.ru/windows/winamp/winamp-5-2-full/

I notice that plugin version needs MSVCR71.DLL (Visual C++ 2003 runtime). v3.09 (from Winamp 5.13) and older don't need any extra runtimes installed, so they'll be best for general compatibility.

Quote from: XMPlay_Userbut logic needs to be improved , what need improved ? If user remove MIDI files from playlist ,  player need send to plugin and port message all note off , as this do if we press button pause or stop , for now this not do and we have dependent notes )

I guess that is without the plugin's "Sampling enabled" and "Send to Winamp's output system" options enabled? XMPlay does simulate a stop button press for Winamp plugins when unloading a track normally, but note that MIDI files are never fully opened without these settings (it just says "opening...") because the plugin doesn't set an output format.

XMPlay_User

#12
Quote from: Ian @ un4seenI guess that is without the plugin's "Samping enabled" and "Send to Winamp's output system" options enabled? XMPlay does simulate a stop button press for Winamp plugins when unloading a track normally, but note that MIDI files are never fully opened without these settings (it just says "opening...") because the plugin doesn't set an output format.

You mistake , even if check checkbox
"Samping enabled" and "Send to Winamp's output system"
and next in process play press delete from in playlist , XMPlay will be send last notes to WinAMP plugin , and because will effect pressed and not released key sound lask note will freeze and you this can hear

example https://disk.yandex.ru/i/pKJS00wqJSwoJQ

Ian @ un4seen

I don't seem to be able to reproduce that here, using the v3.09 plugin with all settings at defaults except for "Sampling enabled" and "Send to Winamp's output system". I tried various devices, and in all cases the notes were released when I removed the current track from the playlist.

Can you try v3.09? You can get it from here:

    https://winamparchive.org/dl/winamp513_full.exe

You can reset the plugin's settings to defaults by removing the "[in_midi]" section from your XMPLAY.INI file.

XMPlay_User

#14
Thank you ) so all woark normal )
But available problem
https://disk.yandex.ru/i/LxfY8Wv--jSuxQ
If I use sets on first sreenshot immediate - Send MIDI events to OS in realtime - problem - not fix
If I use send data  to OS as Large blocks / segments - promblem absetm , but then I can not use fully SCVA / SC-8820 Map and I lost instruments such as Distortion Lead and same )
for example https://disk.yandex.ru/i/QYXxcZCo9bDJYg

XMPlay_User

#15
Generally I can not understand you , when I writed to this topic https://www.un4seen.com/forum/?msg=145059 , I was need only plugin for translate MIDI stream to MCI or DirectMusic devices , I offered you add this option in your XMP-MIDI plugin , but you refused do this , now we trying adapte for WinAMP plugin with same fuinctions , maybe will easier write plugin for simply out MIDI stream to MCI or DirectMusic devices ? As you think ? I think what you  better known owner player and because for you as I think , eaiser write plugin for this function , rather than adapting player to someone else's plugin ) I'm attach files for tests )

Ian @ un4seen

Quote from: XMPlay_UserBut available problem
https://disk.yandex.ru/i/LxfY8Wv--jSuxQ
If I use sets on first sreenshot immediate - Send MIDI events to OS in realtime - problem - not fix

The notes seem to always get released with either "Playback method" setting here. Is the problem happening for you every time with the "immediate" setting or only sometimes? Please also try the v3.09 plugin in case it's different with that.

Quote from: XMPlay_UserGenerally I can not understand you , when I writed to this topic https://www.un4seen.com/forum/?msg=145059 , I was need only plugin for translate MIDI stream to MCI or DirectMusic devices , I offered you add this option in your XMP-MIDI plugin , but you refused do this , now we trying adapte for WinAMP plugin with same fuinctions , maybe will easier write plugin for simply out MIDI stream to MCI or DirectMusic devices ? As you think ? I think what you  better known owner player and because for you as I think , eaiser write plugin for this function , rather than adapting player to someone else's plugin )

Ths issue is that XMPlay requires all plugins to generate sample data, so it isn't possible to just send MIDI events to MIDI devices. That's why you have to enable the "Send to Winamp's output system" option in the Winamp MIDI plugin. XMPlay's MIDI plugin would need to do something similar to support MIDI device playback. It would be a bit simpler for the user to get started with MIDI device playback if the XMPlay plugin did have that option, but the Winamp plugin seems to work well enough now once setup properly.

By the way, the changes in the XMPlay update above apply to all Winamp plugins, not only the MIDI plugin. Other plugins that were already working fine may now see more responsive seeking because of those changes, particularly when holding down the fast forward/back keys.

XMPlay_User

#17
This problem on all plugin verstions , I tested all versions from 2.51 to latest 3.1 , and I reciver same  result , if I was be can fix on other version , I reported in this topic and would indicate version and settings in where this bug fixed , but for now I can not find that version , that's why and write to you and offering you do your own plugin , if you will get from WinAMP plugin normal reaction , I will be very glad ) , but for now I recive differnt bugs , by the way in this plugin I can not set drumset from other SoundCanvas kit  for example attach ins files , and If i select drums from SCVA SC-88 Pro / SC-88 / SC-55 maps and if not switch SCVA from SC-8820 to SC-88 Pro / SC-88 / SC-55 mode and instead select drum sets in MIDI sequancer in ins file , and next play this file via in_midi.dll use DirectMusic device , drums always will select only as SC-8820 mode , in WinAMP also , but in WinAMP I can select output not as DirectMusic , a as MCI and in this mode drums work normaly , but in XMPlay with this WinAMP plugins any versions , this work not correect , bcause I can not use any device if this device NOT DirectMusic , and DirectMusic devices , not correctly work in situations when need set Drumset on 10 channel in other MSB or LSB or MSB + LSB banksets

XMPlay_User

And as me be  ?
For now I can not use as I need )

Ian @ un4seen

I was finally able to reproduce the unreleased notes problem with "Playback method" set to "immediate", when unloading a particular MIDI file at a particular position. It happens in Winamp too. So it seems to be a bug in the plugin (rather than something XMPlay is doing wrong) and "Playback method" needs to be left on the default "streamed" to avoid it.

XMPlay_User

#20
No , if leave this value , we lost all sysex messages , we can not transmite to synthesizers for example as Roland SoundCanvas VA instreuments beyond borders first 128 instrements General MIDI , for get full GS need use value Send MIDI events to OS in realtim , but and here available problem , for get drumsets in other maps , for example master map SC-8820 , but you want use Standard Kit not from SC-8820 , but from SC-88 Pro , you can not this do if you use DirectMusic output and you need use MIDIOut , but if you select this method , XMPlay simply not will play MIDI per in_midi.dll , in while WinAMP will play MIDI use MIDIOut , what to do ?
For tests :
https://disk.yandex.ru/i/gpcL_eZvUSQ48A
https://disk.yandex.ru/d/qff9-KfwnFR7zg
https://disk.yandex.ru/i/tUdGUb8J_0s4eA

Ian @ un4seen

Why can't you set the plugin to use a "midiOut" device in XMPlay? That seems to be working fine here (with the previously discussed "Sampling" settings).

XMPlay_User

#22
No , if I use very old version in_midi.dll  such as 2,53 - 2.54 , so in this plugins not correct work sysex messages , that's why I forced used 3.0 and later , but if I do this , I recive bugs , if I use  send data  to OS as Large blocks / segment I can not get instruments in banks diffirent from 0 , if I use Send MIDI events to OS in realtime , I can use instruments in banks whitch diffirent from 0 , but I can not use drums if whitch in other map , for example I want use Standard kit from SoundCanvas 88 Pro map , but I can not do this because if I use DirectMusic output , and use Send MIDI events to OS in realtime , I can not get this drumset , I recive Standard kit only from SC-8820 Map , for get this , I forced use Send MIDI events to OS in realtim and MIDOut , but if I try use MIDIOut , I can not play MIDI file
I'm think  , what this is limit DirectMusic , because DirectMusic devices will make as simply DLS banksets with only one drumsets in bank 0 , but YAMAHA XG or Roland SoundCanvas later that SoundCanvas 55 available have more maps , for example :
Patch[0]=Roland SCVA-8820 Capital Tones
Patch[1]=Roland SCVA-55 Map Capital Tones
Patch[2]=Roland SCVA-88 Map Capital Tones
Patch[3]=Roland SCVA-88Pro Map Capital Tones
Patch[4]=Roland SCVA-8820 Capital Tones
Patch[0]=Roland SCVA-8820 Drumsets
Patch[1]=Roland SCVA-55 Map Drumsets
Patch[2]=Roland SCVA-88 Map Drumsets
Patch[3]=Roland SCVA-88Pro Map Drumsets
Patch[4]=Roland SCVA-8820 Drumsets
and if set LSB as 0 - we recive SC-8820 patches , if set LSB as 1 we recive SC-55 patchs , if set LSB as 2 we recive SC-88 patchss , if set LSB as 3 , we recive SC-88 Pro patches , if set LSB as 4 we recive SC-8820 patches

Ian @ un4seen

I'm using the v3.09 plugin, and sysex is working fine with "midiOut" devices regardless of the "Playback method" setting ("streamed" or "immediate").

DirectMusic is a Microsoft soft-synth. Don't use that if you want Roland sysex support.

XMPlay_User

#24
You sure ?
https://disk.yandex.ru/d/MNC2-JnQPmVDCg
I'm talking what XMPlay does not output at all MIDI if select any MIDIOut device , XMPlay output only if I select any DirectMusic device , and this problem because DirectMusic architecture very limited , this interface not designed for fully coreect work with hardware functional , DirectMusic designed as very simply emulation WaveTable GM / GS device , something like SoundFonts from Creative